06:00:50 <Daisy> #startmeeting OpenStack I18n Meeting
06:00:51 <openstack> Meeting started Thu Dec  3 06:00:50 2015 UTC and is due to finish in 60 minutes.  The chair is Daisy. Information about MeetBot at http://wiki.debian.org/MeetBot.
06:00:53 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote.
06:00:56 <openstack> The meeting name has been set to 'openstack_i18n_meeting'
06:01:17 <ianychoi> Hello, Daisy. How are you going? :)
06:01:25 <Daisy> Hi, ianychoi
06:01:40 <Daisy> I'm good. How about you ?
06:02:07 <katomo> o/
06:02:11 <ianychoi> Good, except that lots of my company work is coming.. :)
06:02:19 <ianychoi> Hello, Kato-san!
06:02:29 <Daisy> I didn't notice my mail didn't send out yesterday. Something is wrong with my mail server. Sorry for the late notice.
06:02:38 <katomo> hello, ianychoi
06:02:57 <katomo> Daisy: np
06:03:09 <Daisy> OK. Let's start.
06:03:10 <aeng> hi
06:03:22 <ianychoi> Hi, aeng!
06:03:22 <Daisy> Welcome, aeng
06:03:38 <Daisy> #topic Discussion: Bug management process in Launchpad
06:03:55 <Daisy> https://review.openstack.org/#/c/246256
06:04:16 <Daisy> In this patch, Akihiro changed the structure.
06:04:53 <Daisy> In doc/source/bug_report.rst, it's quick simple. So guide people to report bugs to lunchpad.
06:05:13 <Daisy> And a new rst file is added: doc/source/bug_process.rst
06:06:01 <Daisy> In bug_process.rst, there are several questions raised by Akihiro.
06:06:50 <Daisy> I don't know if I'm right. Just feeling we could follow the usually bug processing of Launchpad to manage.
06:07:23 <Daisy> There are a few questions we should discuss here:
06:07:48 <Daisy> How can we catagorize bugs written in a language nobody can read? 'unknown' tag?
06:08:12 <Daisy> Do you think we could receive such bugs written in a language that nobody can read ?
06:08:56 <aeng> I would its very rare but its possible given its an open community
06:09:12 <Daisy> I don't know if it would happen. Because there may be some non-English bugs reporting to translations. If they are translations, there might be some translators who can read the bugs.
06:09:31 <aeng> agree. Not unless only 1 translators in that language
06:10:03 <aeng> But regardless, there's tools to convert it english.
06:10:52 <Daisy> Good idea, aeng. We could use Google translate to translate, maybe .
06:10:52 <aeng> what tag we are using now for lets say Japanese bug?
06:10:53 <Daisy> hehe
06:11:04 <ianychoi> Nice :)
06:11:07 <Daisy> Like Japanese
06:11:11 <ianychoi> Auto-language detection
06:12:17 <aeng> I would say if nobody can read, reply to the reporter to convert it to English, or we can convert to English and then decide what category it goes to
06:12:32 <Daisy> Yes, good point.
06:12:46 <Daisy> Another question is whether we need to create a bug team.
06:12:49 <katomo> agree
06:13:16 <Daisy> katomo: are there a bug team in doc team who are responsible to handle bug reports ?
06:13:32 <Daisy> katomo: or all team members could handle bug reports ?
06:13:37 <katomo> none
06:13:46 <Daisy> so all members could.
06:13:52 <Daisy> I like this answer.
06:14:03 <katomo> there is a defined bugs team, which is freely join :)
06:14:22 <Daisy> so we don't want complicate. Let's open it to all team.
06:14:30 <katomo> But, Docs cores take care bug triage process, and follow up
06:14:31 <ianychoi> By the way, I have one question related to this. Let's suppose that if one bug reporter posts openstack-manuals launchpad for translation errors. Then, should we move this bug to openstack-i18n launchpad? or use "affects project" functionality?
06:15:03 <ianychoi> I am asking it because.. we might need to use the same bug status as openstack-manuals.. if we use "affects project" functionality.
06:15:16 <katomo> Daisy: agree to open to all
06:16:02 <Daisy> katomo: could you answer ianychoi question ? If a bug is related to other projects, how to handle it ?
06:16:14 <katomo> ianychoi: yes, need change "affects project"
06:16:35 <aeng> so both bug's status needs to be in sync
06:16:41 <aeng> ?
06:16:52 <Daisy> katomo: usually, shall we keep the bugs open in our project if the root cause is by other projects ?
06:17:09 <Daisy> aeng: yes, sync automatically
06:17:49 <katomo> aeng: both or either, If affect both, take cake both. If affect only i18n, simply move to i18n (become deleted from docs)
06:18:03 <Daisy> ok.
06:18:11 <Daisy> That's much clear.
06:18:35 <Daisy> so I will write bug-processing.rst and hope we could merge this patch soon.
06:19:08 <Daisy> Any questions to bug process ?
06:19:22 <ianychoi> And.. about priority?
06:19:45 <Daisy> a good question.
06:19:57 <Daisy> I think I18n core team could decide.
06:20:21 <Daisy> because i18n core team will do the bug triage, and define the priority.
06:20:36 <ianychoi> Yes, good :)
06:20:43 <aeng> make sense since they are doing triage
06:20:51 <Daisy> Next topic
06:21:02 <Daisy> #topic Discussion: Glossary management process
06:21:37 <Daisy> The current status is: glossary is in pot format and it is stored in our repo.
06:22:16 <Daisy> The synchronization jobs are not enable because i18n.pot is different from other projects. It's not generated.
06:23:01 <aeng> sync job between the file and Zanata?
06:23:05 <Daisy> At the beginning, I planned to change the job scripts to upload/download po and pot by force, whether i18n.pot is changed or not.
06:23:10 <Daisy> aeng: Yes
06:23:41 <Daisy> But I didn't commit such changes because I don't like it.
06:24:12 <katomo> don't like?
06:24:21 <Daisy> I think, the upload/download actions should be taken only when i18n.pot is changed.
06:24:29 <ianychoi> Actually I do not the glossary process in Zanata, but any language coordinators can edit glossaries in Zanata?
06:24:56 <ianychoi> s/the/know/
06:25:05 <aeng> ianychoi, anyone with "glosasrist" role can edit any language of translation in glossary
06:25:08 <Daisy> So I'm trying to find a way to determine whether i18n.pot is changed.
06:25:34 <katomo> okay
06:25:40 <ianychoi> Thanks, aeng.
06:25:44 <Daisy> If i18n.pot is changed, the upload action should be taken. If I18n.pot is not changed, it should not be uploaded.
06:26:00 <aeng> how is the i18n.pot being changed?
06:26:13 <aeng> manually commit to git and create  pull request?
06:26:45 <Daisy> i18n.pot is manually edited. It contains all the glossaries.
06:27:03 <katomo> How about zuul job?
06:27:04 <aeng> manually edited by translators?
06:27:14 <Daisy> Yes, aeng
06:27:18 <Daisy> what is zuul job ?
06:27:37 <Daisy> katomo: can you share me some links ?
06:27:39 <katomo> gate jobs
06:27:43 <aeng> ok, perhaps we should stop doing that manual editing. With Zanata 3.8.0, they can edit it straight in Zanata
06:27:46 <katomo> jenkins
06:28:00 <Daisy> aeng: that's the point.
06:28:01 <katomo> i.e. When we commit glossary to i18n repo, Jenkins upload the glossary to Zanata
06:28:52 <aeng> katomo, good point. Jenkins should be able to hookup to git commit
06:28:57 <katomo> as, not a daily job
06:29:21 <aeng> yeah, we use github to fire webhook to jenkins
06:29:49 <aeng> But Glossary management feature will be release in Zanata 3.8.0, and we are planning to have it ready before Christmas.
06:29:51 <ianychoi> I do not know some details of automated jobs, but git hook would be a good to take care of this I think.
06:29:56 <Daisy> As aeng said: in Zanata 3.8 which will be released before Christmas, there will be a feature in Zanata: glossarist could add and edit glossaries.
06:30:13 <aeng> so all these problems should be gone
06:30:19 <Daisy> No, aeng
06:30:38 <Daisy> There is no way for us to upload/download the glossaries and stored in our git.
06:30:48 <aeng> ah...
06:30:53 <ianychoi> aeng: then, i18n pot files are managed by Zanata web UI, and can we download i18n.pot file from Zanata UI from 3.8.0?
06:31:08 <ianychoi> or stored to somewhere on git....
06:31:17 <aeng> ianychoi, good point. We are discussing export feature now for glossary
06:31:27 <aeng> not in the plan yet
06:32:01 <katomo> also, we need review process for glossary change
06:32:34 <katomo> *glossary itself,      not a glossary translation
06:32:54 <Daisy> If we choose to use Zanata to manage our glossaries, we don't need git to store them and we don't need jobs to upload and download them. If we use git to store the glossaries, we cannot use the glossary editor of Zanata, we will define our own process and then, after glossaries are changed, I need to manually upload glossaries in a csv file.
06:33:18 <Daisy> Not sure if I describe clearly.
06:33:24 <Daisy> Just two opitions
06:33:27 <aeng> very clearly
06:33:40 <katomo> hm
06:33:42 <ianychoi> so clear :)
06:33:55 <Daisy> one is to use Zanata glossary management process, the other one is to use our own process.
06:34:01 <aeng> since katomo mentioned the review as part of process, i think git is the way to go
06:34:04 <aeng> for the time being
06:34:32 <aeng> and like ianychoi mentioned, we can't export yet from Zanata.
06:34:40 <Daisy> if we need glossary definition review, we do need to create the process by ourselves.
06:35:25 <aeng> yeah, then we can't use Zanata for the glossary management. Because they can add/edit glossary without review
06:35:54 <Daisy> I have an idea. I will change the glossary file from pot to a rst, with some format. And the rst file will contain both the glossary, and the context definition, just as Akihiro requested in his email.
06:36:55 <Daisy> And then, I create a script to extract the glossary from the rst and change into a pot file. In that situation, the i18n.pot is generated , same as other projects.
06:37:08 <Daisy> so we could follow the other projects process to upload, translate and download.
06:37:37 <aeng> but how often you run the extraction?
06:37:38 <katomo> sounds good
06:37:43 <ianychoi> +1
06:38:06 <Daisy> The only thing that cannot be manually done, is that, I should covert the pot/po files into cvs file and upload to Zanata.
06:38:29 <Daisy> s/cannot/can
06:38:47 <Daisy> no, still wrong.
06:39:00 <aeng> why dont you extract from rst and straight into csv?
06:39:04 <Daisy> The only thing that cannot be automatic done, is that, I should covert the pot/po files into cvs file and upload to Zanata.
06:39:50 <Daisy> does Zanata support csv translation ?
06:39:56 <aeng> yes
06:40:10 <ianychoi> I think Jenkins or Zuul would support to convert automatically after merge (some guys would make a kind of scripts..)
06:40:22 <aeng> http://docs.zanata.org/en/release/user-guide/glossary/upload-glossaries/
06:40:26 <aeng> po and CSV files
06:40:53 <Daisy> so po files are supported as a kind of glossary format.
06:41:17 <Daisy> That's good.
06:41:33 <Daisy> So I don't need to convert to csv. I just use po files.
06:41:46 <aeng> yeah.. if thats the format you wish to use
06:41:48 <katomo> csv doesn't seem to have context...
06:41:57 <Daisy> Yes, katomo
06:42:00 <ianychoi> agree. Then let's use just po files
06:42:07 <Daisy> aeng: how is Zanata support context ?
06:42:13 <aeng> katomo, we support pos and description in CSV
06:42:20 <katomo> i think po file with translator help is preferable.
06:42:38 <ianychoi> I agree with katomo
06:42:40 <Daisy> If we put a context description is a pot, will it be shown in the translator editor ?
06:42:43 <katomo> aeng: great
06:42:45 <aeng> for po files, we uses the po comments as context
06:43:00 <Daisy> will the po comments be shown in the translation editor ?
06:43:04 <aeng> Daisy, yes
06:43:24 <Daisy> ok. That solves our problems.
06:43:29 <katomo> hm... "description column" at data rows
06:43:35 <aeng> Daisy, sorry, need to double check on that
06:43:51 <Daisy> ok.
06:44:19 <Daisy> I'm much clear now.
06:44:24 <Daisy> Thank you guys.
06:44:36 <Daisy> let's move to open discussions.
06:44:40 <Daisy> #topic Open discussion
06:44:48 <Daisy> Any topics to discuss here ?
06:45:06 <katomo> stackalytics ?
06:45:53 <aeng> Daisy, just confirmed, we dont show po's comment, but we show pot's comment in editor
06:46:06 <Daisy> ok.
06:46:29 <katomo> Daisy: do you know the current status about stackalytics?
06:46:35 <aeng> katomo, stackalytics, I'm working on the contributors list api and statistic for review
06:46:48 <Daisy> katomo: sorry, katomo, not much.
06:46:49 <katomo> aeng: thanks
06:47:01 <aeng> but not sure how much is done in openstack space
06:47:04 <Daisy> aeng is helping us on the Zanata API.
06:47:20 <Daisy> I didn't hear from Ilya recently. I will follow up with him.
06:47:20 <aeng> think they might still be waiting on the Zanata api first before can proceed
06:47:44 <Daisy> then Transifex
06:48:04 <Daisy> I have handled all the requests.
06:48:26 <katomo> nice work, Daisy
06:48:27 <Daisy> I want to do a back up before we completly delete it.
06:48:51 <Daisy> do you have any suggestions on how to do the back up ? I could download all the resources.
06:49:13 <aeng> pull all the resources using their client
06:49:16 <Daisy> In my mind, I could use github to store all these resources.
06:49:38 <ianychoi> For transifex, I have found that two docs pages mention Transifex on the bottom.
06:49:38 <aeng> agree on github
06:49:41 <ianychoi> #link http://docs.openstack.org/fr/
06:49:46 <katomo> agree
06:49:48 <ianychoi> #link http://docs.openstack.org/pt_BR/
06:50:00 <ianychoi> Sorry for the first one
06:50:05 <Daisy> ok. somebody should change it, Thank you, ianychoi.
06:50:13 <ianychoi> But I don't know French.. :)
06:50:16 <aeng> good eye on that
06:50:30 <katomo> okay, I will fix
06:50:31 <ianychoi> #link http://docs.openstack.org/de/
06:50:46 <ianychoi> German also
06:50:54 <aeng> should visit all the language for that page
06:51:48 <katomo> Fortunatelly, there are Frence and German at docs core.
06:51:50 <Daisy> Any other questions ?
06:52:03 <katomo> stats?
06:52:12 <Daisy> stats ?
06:52:19 <ianychoi> katomo, thanks for caring that :)
06:52:24 <katomo> Transifex activity itself exists on Transifex
06:52:40 <katomo> no need anymore?
06:52:57 <Daisy> I didn't understand, katomo
06:52:57 <aeng> are we using those stats?
06:53:09 <Daisy> you mean, the statistic data ?
06:53:16 <ianychoi> Transifex is currently disabled.. isn't it?
06:53:19 <katomo> Daisy: yes
06:53:42 <katomo> aeng: we use it for ATC
06:53:52 <Daisy> There is no translations since October
06:53:59 <Daisy> a very few translations in Sep.
06:54:14 <Daisy> very few translations in September.
06:54:20 <aeng> so the stats might be outdated already.
06:54:24 <Daisy> I think for next ATC, we could use Zanata data.
06:54:31 <Daisy> How do you think of that, katomo ?
06:54:59 <aeng> yeah, we got api for translators statistics
06:55:01 <katomo> ATC is one year
06:55:40 <aeng> so pulling the stats @ december 31?
06:55:41 <ianychoi> at least one activity for latest two releases..
06:55:54 <ianychoi> each one activity
06:56:28 <katomo> but, it may be not so important
06:56:40 <Daisy> So one option is we keep Transifex till next September. The other one is that we export data and save it somewhere.
06:56:53 <ianychoi> for Mitaka, +1 for Liberty and +1 for Mitaka development... strictly
06:56:56 <aeng> not sure if transifex can export stats
06:57:03 <Daisy> I need to check if I could export all the information.
06:57:22 <aeng> yeah, but if can't, then keep it until next sept
06:57:41 <ianychoi> I think after next April, stats would be considered for Oct 2015 to April 2015, and Apr 2015-Oct 2015.
06:58:26 <aeng> so its always april-oct stats?
06:58:28 <katomo> ianychoi: i think so
06:58:30 <Daisy> katomo: Transifex could easily query the statistic data, from a beginning data to an end data. I think exporting into an EXCEL file might lose some information.
06:58:50 <katomo> aeng: the key point is OpenStack release cycle
06:59:02 <aeng> ah, gotcha
06:59:10 <katomo> Daisy: great
06:59:22 <katomo> it's time...
06:59:28 <ianychoi> Yep
06:59:37 <ianychoi> Then nothing more from me
06:59:56 <katomo> query, save,   and "delete all".
06:59:56 <Daisy> so ianychoi and katomo : according to the release cycle, when do we not need Tansfiex stats data ?
07:00:10 <ianychoi> after next May
07:00:16 <Daisy> ok. Thank you.
07:00:20 <katomo> after Mitaka release
07:00:21 <ianychoi> :)
07:00:24 <Daisy> Then I prefer to keep it till next May.
07:00:30 <aeng> yup. agree
07:00:34 <ianychoi> +1
07:00:36 <Daisy> ok.
07:00:44 <Daisy> Thank you guys for all the important inputs.
07:00:47 <katomo> you need the data after Kilo release activity
07:00:53 <katomo> > Daisy
07:00:59 <Daisy> ok, got it.
07:01:18 <Daisy> I will close the meeting now.
07:01:24 <aeng> alright, thank you guys. Thanks Daisy for chairing this
07:01:26 <Daisy> Thank you all for attending.
07:01:31 <katomo> thanks
07:01:33 <Daisy> #endmeeting