13:00:39 #startmeeting OpenStack I18n Meeting 13:00:40 Meeting started Thu Sep 17 13:00:39 2015 UTC and is due to finish in 60 minutes. The chair is Daisy. Information about MeetBot at http://wiki.debian.org/MeetBot. 13:00:42 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 13:00:44 The meeting name has been set to 'openstack_i18n_meeting' 13:00:58 Hello, who is around for i18n meeting ? 13:01:06 Hi Daisy - I am! 13:01:27 Hi, Doug 13:01:32 hi 13:01:36 hi, amotoki 13:02:17 hi 13:02:26 Hi, ujuc 13:02:54 :) 13:02:56 Now we have doug-fish, amotoki, and ujuc. We will start now. 13:03:13 #topic Collect issues/questions for Zanata and Liberty translation 13:03:50 I kicked off Liberty translation on top of Zanta. Now 1 week passed, are the translations running well ? 13:04:10 If you have any difficulties/questions, you could raise them here. 13:04:27 I translated ~1000 words and it works well so far. 13:04:59 From the mailing list, we could get some complains from coordinators, about adding translators to a team, about messaging in a team. 13:05:03 I'm not sure this is exactly related to Zanata but there is a difficulty with the RU translation https://bugs.launchpad.net/horizon/+bug/1494819 13:05:04 Launchpad bug 1494819 in OpenStack Dashboard (Horizon) "Russian strings for Actions within Project->Instances page 'More Actions' dropdown are missing" [High,Confirmed] 13:05:32 We will raise these complains to Zanta team as feature requirements. 13:05:56 A challenge is that this is somewhat of a technical problem, but I don't have access to fix it ... 13:06:01 looking at the bug now. 13:06:22 and even if I had access, I am not a translator, so it is difficult for me to be sure I have not changed any translations 13:07:23 I got some notices in the last week, that bad translations broken unite test. I'm going to start an Etherpad to track these issues. Hope doug-fish could help me to collect. 13:07:39 After Liberty translation, we could summarize them, and write a best practise to our translators. 13:07:48 FYI: https://zanata.atlassian.net/browse/ZNTA-555 Internal "user request management" and tracking (which we requested) is under way. 13:07:49 yes, that's a good idea 13:08:33 Great, amotoki. Thank you for the link. 13:08:45 Daisy AJaeger flipped zanata option to error translations with bad whitespace 13:09:07 http://etherpad.openstack.org/bad-translations-break-test 13:09:10 I think that fixed things for unittests and is a nice feature since we check it in the projects 13:09:33 also yesterday we ran gerrit updates for all projects from zanata and they should run automatically too now 13:09:47 so the automation is in place and seems to be working 13:10:03 Thank you for the update, clarkb. 13:10:37 yes. we see the first import to horizon from zanata. the gate problem has just recovered and it is under the check queue. 13:11:04 Daisy: your etherpad link seems incorrect. I see a new page. 13:11:30 amotoki: it's a new page. I just create it. 13:11:34 amotoki ya we will need to recheck those changes 13:12:03 doug-fish: I cannot understand why plurality will cause error. 13:12:14 doug-fish: You said it was a technical issue ? 13:12:21 or it is a bad translation issue ? 13:12:29 sort of both 13:12:42 The problem is that most of the code expects 3 pluralities for Russian 13:13:00 yet our translations now have 4 13:13:16 This change happened sometime after Kilo but still in transifex 13:13:26 so if you could update the translation, you are able to fix it ? 13:13:35 gettext or django issue? 13:13:44 or horizon side issue? 13:14:10 I'd have a hard time pointing fingers - I'd expect each group to say it is working as designed/expceted 13:14:47 I could update the RU translations to make them have 3 pluralities 13:14:50 doug-fish: #L30 means the line of 30 in diango.po ? 13:15:19 oh yes 13:15:36 link is slightly out of date 13:15:39 should be line 32 13:16:01 ... and really when you look a the plural funciton there is no way for plural form at index 3 to be reached 13:16:07 then what's the new line number of #L788 ? 13:16:29 799 13:17:11 doug-fish: I will spend some time to dig into it after meeting. 13:17:30 any other questions/issues ? 13:17:33 The change I would make is to remove every msgstr[2] from the file, move msgstr[3] to msgstr[2] and update the plurality function to the standard one 13:17:48 I'd really like to get input from the RU translation team before doing anything this disruptive 13:17:59 I agree, doug-fish. 13:18:01 but it results in broken Horizon tdoay 13:18:05 https://github.com/openstack/horizon/blob/master/openstack_dashboard/locale/ru/LC_MESSAGES/django.po#L799-L804 13:18:09 is this a right example? 13:18:21 Yes, amotoki. 13:18:26 yep 13:18:27 Hello, sorry for late coming. 13:18:41 And line 32 seems like a rule of plural 13:18:52 correct 13:19:21 doug-fish: who requires only 3 plural ? 13:19:53 That what is normal for Russian 13:20:03 (looking for a link) 13:20:18 But from line 32, I think, it is said nplurals=4 13:21:26 right - so it is internally consistent, but not consistent with the rest of the world 13:21:29 http://localization-guide.readthedocs.org/en/latest/l10n/pluralforms.html 13:21:41 ianychoi: never mind. We are talking about issues/questions of Liberty translations. 13:22:10 Daisy, thanks. I am trying to follow the conversation :) 13:22:14 How is Korean translations now, ianychoi, running well ? 13:22:29 I suspect (but haven't made all of the connections) that a pluralization function from another bundle is being used to resolve resources in this file 13:22:53 Now me and ujuc are a little bit busy, but I think our Korean translation is going well I think. 13:23:10 doug-fish: that's strange. I think we need input from Ilya. 13:23:10 It's strange to have different structures for the same langauge 13:23:24 I think Ilya is hiding from me. :-) 13:24:25 #action Daisy to follow up with the plurals issue of ru translations. 13:24:38 thank you, ianychoi 13:24:46 we move to next topic 13:25:02 #topic Discussion: IBM contributions 13:25:05 let me share one thought 13:25:11 http://eavesdrop.openstack.org/irclogs/%23openstack-i18n/%23openstack-i18n.2015-09-17.log.html#t2015-09-17T11:17:52 13:25:18 About Zanata group. 13:25:27 please check it later, Daisy 13:26:01 amotoki: got your point. 13:26:27 I think, Group may provide a view, but in the back end, it is still version. 13:26:32 I could try it after meeting. 13:26:34 This is Zanata help http://docs.zanata.org/en/release/user-guide/groups/group-view/ 13:27:07 amotoki: I noticed Group today, I have the same thoughts with you. But again, the back end technology is version. 13:27:09 we can collect good practice after Liberty translaiton finishes :-) 13:27:24 Group just provide a integrated view of different versions. 13:27:36 amotoki: Yes. 13:27:45 Ok, as to IBM translations, I have some thoughts to share. 13:27:50 let's move on 13:27:57 I'm going to normalize the process to contribute translations by uploading po files. 13:28:25 IBM is not the single one who would go through the process. As I said before, redhat may want to contribute their translations in po files too. 13:28:33 Here are my thoughts. 13:28:42 1. Simply uploading po files are not allowed. 13:29:10 2. If people who want to contribute translations by uploading po files, following steps must be followed 13:29:11 2.1 Send email to I18n mailing list, describing the source documents and languages he/she is going to upload. 13:29:11 2.2 Zanata admin will create a branch. She/he could upload po files to the branch. 13:29:12 2.3 When the uploading is done, language coordinators could review the translations. 13:29:14 2.4 If the coordinators agree to merge to the master branch, Zanata admin will make the merge. After merging, this branch will be deleted. 13:29:16 If the coordinators don't agree to merge, .....??... 13:30:16 I have tested version creation, version deleting, version merging, in the Zanata test server. 13:30:59 I met with issue before, Zanata instance was crashed because of memory, but now pleia2 fixed the issue. 13:31:22 I think A possible case that reviewer do not agree to megre is a case where they use different wording policy for same source strings. 13:31:38 amotoki: Yes, that's need to be design. 13:31:47 Daisy, this looks like a great process! It's been challenging as a potential contributor to sort out how to best work with the tools and community. 13:32:16 if coordinators don't agree, maybe coordinators ask the contributors to revise the translations ? 13:32:23 If the coordinators don't agree to the merge, maybe the branch should be deleted after some period of discussion? 13:32:32 in that case, we can work on a proposed branch until a lang team reaches a consensus. 13:32:56 I agree with this process. 13:33:06 but generally speaking we should not deny contributions 13:33:26 agree, amotoki. We are a open team. :) 13:33:36 If the translation is dependent on OpenStack release (e.g., Nova kilo), the deadline would be the release date? 13:34:02 we are openning for any contributions, we should guide our contributors to follow our rules and improve the translations till the translations meet our quality reqirements. 13:34:04 One issue with this process is that I think today at least, a branch cannot be proposed unless one is a member of the translation team 13:34:06 ianychoi: a bit (about a week) before the releaes. 13:34:42 Just as development team will guide new contributors to help them get familiar with their coding rules 13:35:22 I think although the coordinator denies or does not tell any opinion on this contribution, the proposed translation is needed to be recorded and logged. 13:36:23 to make the reference for active translators.. 13:36:35 I don't think we set deadline. If the translations are good enough to help improve the percentage, coodinators would agree to merge. 13:37:00 Is there any way to ensure that only *new* translations are provided by this process? 13:37:00 If the translations are not good, why we set deadline to merge, even it is related with a release ? 13:37:15 It has been very difficult to make sure we do not propose any edits in our PO files 13:37:49 and I'm afraid that during a review process, some strings that were new when proposed might get translated in the community and become edits 13:38:30 I don't know the correct answer, doug-fish. But while I reviewed the contributions made by your team in the test server, I could review the hisotry. If I see a translation have two history record, I could tell it is updated. 13:39:01 doug-fish: actually, I don't think it's reasonable to prevent people contributing better translations. 13:39:08 the background behind my comment is that i noticed nova translation in Japanese which was contributed by IBM uses quite different workding from other transaltion in Horizon and documentation (doen by the community) 13:39:29 so I don't think merging as-is is not safe. 13:39:58 agree, amotoki 13:40:07 amotoki: thank you for taking the time to reivew - this was one of my concerns as well 13:40:22 Daisy: technical question: In Zanata branch, does it use a separate translation memory? 13:41:07 doug-fish: nova translation I checked was contributed more than one years. It is not related to IBM contribution now. 13:41:16 Actually, in Transifex, I feel it's very dangers to open the right for translators to upload po files directly, to the master brach. I met with the case that a people came to me saything that he uploaded po files to the wrong language team. 13:41:34 :-( 13:42:07 Daisy: yes, agreed! 13:43:01 We have a hot discussion here. I probably lost some points. 13:43:37 This discussion has no answers I think :) 13:43:54 anyway, let's try with branch. 13:44:02 Daisy: back to your comment about people proposing better translations - IMO that kind of contribution should happen only through Zanata itself - doing edits though PO file upload seems risk because it bypasses glossaries and community discussion 13:45:42 maybe you are right, doug-fish. But we don't have technical way to block updating translations by po file. 13:46:16 doug-fish: agree with you. we should avoid PO upload as possible as we can. 13:46:22 ianychoi: Yes, we don't have the answer now. We will figure out the best way while we are working with the new tool more and more. 13:46:30 If we agreed it was right we could request an enhancement from Zanata 13:46:47 doug-fish: that's a good point. 13:47:01 next step 13:47:02 i know some translators prefer to his/her own editor over web tool, but it is strongly discouraged. 13:47:10 I know that, amotoki. 13:47:18 Some translators like offline translation. 13:47:26 ugh 13:47:33 you should keep that capability a secret! 13:47:35 While we are investigating the tool candidates, that's a required feature. :) 13:48:05 Maybe they think offline translating are quicker than online. 13:48:11 If translations had reviews and merge conflict resolutino like code I think that could work 13:48:26 One question: if IBM or Redhat contributes translations, and they are updated to Zanata, what would the name of updater ? 13:48:51 (I hope the answer is IBM or Redhat) 13:48:52 doug-fish: while merging versions, I could select the option that the source strings will not be overwrited 13:49:13 Daisy: does that option exist today? 13:49:19 While merging versions, I could set an option that the source strings will not be overwrited. 13:49:29 Yes 13:49:35 wow - that seems perfect 13:49:38 great. 13:49:53 problem solved! 13:49:58 We are digging more functions of Zanata while we use it. :) 13:50:13 so next steps. 13:50:20 No-overwritting is so good functionality in Zanata! 13:50:57 I will continue the test on the test server. While I think it is OK, I will make versions in the production server. I will try groups too. 13:51:28 doug-fish: do you want to upload 10 langauges ? or you plan to only upload a few ? 13:51:58 eventually ~10 languages and 8 or 9 projects 13:52:12 but maybe going a few langauges/projects at a time would be wise 13:52:25 doug-fish and his team will not upload translations to the log messages, because they know community translators still have concerns to log translations. 13:52:49 doug-fish: how do you select which langauges you want to upload ? 13:52:50 I'm not sure if it's better to upload translations for nova now (to help with the effort) or wait and propose them after the community has finished 13:52:55 any suggestion on that? 13:53:44 amotoki and ianychoi: your suggestions ? 13:53:54 we have limited time. 13:54:02 Talking about Japaense, nova translation has no good progress and it does not attract translators so far. 13:54:31 so persoanlly I am okay for uploading, but I am afraid we have no more resource to review them. 13:54:35 doug-fish: I like Nova translations too, as a Chinese coordinator. 13:55:17 I have not discussed with ujuc, Korean coordinator yet, but now I could not find any requirement to translate Nova strings to Korean from Korean guys. 13:55:22 So I will upload them - I understand that does not mean they will get merged 13:55:23 again, all the uploading must to the review branch. amotoki: maybe you and your team go through the translations very quickly ? 13:55:31 this is really no different than what happens with code 13:56:00 Daisy: I am not sure. At least I am short of resource for reviewing :-( 13:56:12 I don't think we can upload any translations for Japanese at this time 13:56:23 Daisy: I will talk to katomo and other two folks from redhat. 13:56:33 Tom from my team has asked for membership on the team, but does not have it yet 13:56:49 I assume membership will still be needed to propose translations? 13:56:51 But I welcome uploading Korean nova translation strings from doug-fish , because this process would bring further discussions in Korea I think. 13:57:05 I hope we could get good progress with nova translating. nova.po only contains user facing messages. 13:57:06 doug-fish: joining request to Japanese team? 13:57:12 ianychoi: yes, understood. Thanks 13:57:15 amotoki: yes, that's right 13:57:55 doug-fish: hmmm.. I must have missed it. please let me know again. 13:58:03 sure, sounds good 13:58:08 ok, guys. 13:58:12 doug-fish: joining process is completely manual in Zanata now. 13:58:13 doug-fish, thanks for your understanding :) 13:58:19 It looks like we have to close the meeting. 13:58:28 We are quit near to the end. 13:58:32 Anything else ? 13:58:37 not here 13:58:42 No from me 13:58:56 Thank you guys, we really have a very good discussion here. I appreciate very much. 13:59:07 Thank you all :) 13:59:09 thank you 13:59:11 #endmeeting