L10n:Becoming an Official Localization: Difference between revisions

align the structure of the document to the process, some wordsmithing, too
No edit summary
(align the structure of the document to the process, some wordsmithing, too)
Line 1: Line 1:
=Preparation and Building=
__TOC__


As mentioned in the [[L10n:Localization_Process_Start| start]] section you will likely be building an "unofficial" build at this stage also called a language pack (or language pack installer xpi file type). The written material in this next section should get you started, show you how to launch your build, and work towards becoming "official". Mozilla Corporation provides the QA and Build resources to support builds they categorize as [[L10n:Localization_Process_End| "official"]].
The [[L10n:Localization Process Start|Localization Process Start]] layed out how to start a localization and use language packs to distribute that work to testers and users.


=Mozilla Localization Build Categories=
Having an official build will give your users
* a download link on [http://en-US.www.mozilla.com/en-US/firefox/all.html mozilla.com], <code>navigator.language</code>-based download links on http://getfirefox.com, for all three major platforms
* a localized install experience, including profile migration
* a localized start page
* localized [[L10n:Web parts|Web parts]] like first-run page, or get-involved
* automatically generated security updates
* language-specific major upgrade to the next versions


Generally speaking at this stage Mozilla Corporation categorizes this stage as either of:
There are a bunch of technical measures that help us achieve these goals, namely
*"name" language packs with no source (not in CVS); users are able to get your build through AMO (here is the [https://addons.mozilla.org/en-US/firefox/addon/2057 Friulian/Furlan] extension as an example), so they'd download either en-US or other related versions and then apply a language pack listed in the [https://addons.mozilla.org/en-US/firefox/browse/type:1/cat:37 AMO directory] to enable the language you've translated
; Use the mozilla cvs server : To create builds Mozilla needs access to your source, this happens through our [http://lxr.mozilla.org/l10n cvs repository]. [[L10n:Localization Process Middle#Landing_in_CVS|Details...]]
*"pre-Beta" which means your build would be put in the tree, but not considered "official" in terms of the high level of QA and Build support made available; user has the same experience for this build as for the one above
; Localize some web content : This isn't all of the mozilla.com website. We currently only offer the localization of the [[L10n:Web parts|Web parts]]. If your interested in translating the mozilla.com website, we're interested, too, but haven't figured out a good set of pages yet.
*"Beta" in shipped-locales; users access to your build from the main Mozilla [http://www.mozilla.com/en-US/firefox/all.html page] except the build is listed as "Beta-language" versus just the name of the language.
; Fix bugs in your localization : There will be a bugzilla component for your localization, in wich Mozilla and community members can file bugs on your localization. We'll be working together to fix those, land them, test them and ship them with the next (minor) release.
; Organize further QA : There will be further test requirements, which the localization team and its community need to lift with help from the Mozilla L10n and QA teams.
; Follow the development : Localizers need to follow the announcements in .l10n, so that they know when to work on minor and major versions.


Over the next few paragraphs we will better define the process that moves towards official build status.
Over the next few paragraphs we will better define the process that moves towards official build status.
   
   
==Preparation stage==
= Preparation =
To become an official localization, you will need to have a source for your localization and, if possible, some reviews of your work by native speakers. If you have some of the [[L10n:Building Blocks|Building Blocks]] filled, that's a plus, too. You should have a registration bug filed now, and that bug should list


The section attempts to guide you through the various technical documentation available in Mozilla open source knowledge repositories to make your build "official".
; what do you want to release : Please mention your language, the language code, and the product/products you're localizing.
; who you are : We'll need your name, and the name of your peers. A link to your [[L10n:Teams|Teams]] page would be good, too.


==Review stage==
File a registration bug using this [https://bugzilla.mozilla.org/enter_bug.cgi?product=Mozilla%20Localizations&version=unspecified&component=Registration%20%26%20Management&rep_platform=All&op_sys=All&priority=--&bug_severity=normal&target_milestone=---&bug_status=UNCONFIRMED&assigned_to=registration%40localization.bugs&qa_contact=registration%40localization.bugs&cc=&bug_file_loc=http%3A%2F%2F&short_desc=&comment=&commentprivacy=0&keywords=&dependson=&blocked=&maketemplate=Remember%20values%20as%20bookmarkable%20template&form_name=enter_bug bug link], which sets the right component. If multiple teams try to submit a localization, this will be resolved within a single registration bug, so before filing a new registration bug, make sure that there isn't one already. We strongly prefer that everyone cooperates to make a better and stronger team.
This stage is your formal request for a review. This means that you are willing to commit over the longer term to sustain your build and in particular to be relied upon by your users and Mozilla to keep up to date with major releases. The review is done by seasoned Mozilla staff to ensure the quality of your work meets the high standards people have come to expect when they download a Mozilla product from the official [http://www.mozilla.com/en-US/firefox/all.html Mozilla site]. A successful review means moving from having language pack xpi to a robust build.


* Review the source (checking for completeness and obvious areas) and effectively [http://www.mozilla.org/projects/l10n/mlp_howto.html#mlp_qa QA] your work; further information is available on [http://developer.mozilla.org/en/docs/Create_a_new_localization Mozilla Development Center]
Consider this your official signing up moment for being responsible for this effort and think of it as a mid-term commitment to continue with the effort of your localization. Mozilla is a community project and as such, we understand that your schedule has more on it than just Mozilla. Localizing Mozilla is an ongoing effort nevertheless, and if a localization community runs short on manpower, we need your help in getting new volunteers on board.
* if you haven't already done so, file a [http://www.mozilla.org/projects/l10n/registration.html registration bug]. We want this to happen as early in process as possible, because this gives us the notification that you are ready to connect more permanently to us and to your users. Consider it your official signing up moment for being responsible for this effort, think of this as a mid-term commitment to continue with the effort of localization. We consider this a "must" do in order to move forward. This is also the best way to effectively let people across all geographies and user groups (e.g.,Mozilla, Localizer community and users) know what's happening
* You will need to open an l10n account [http://developer.mozilla.org/en/docs/Create_a_new_localization#File_CVS_account_bug| request] (on CVS). This enables Mozilla to create builds for minor updates without involving you. This means the user experience is consistent across the world (or across all of our builds).
* Create a bugzilla component (so language is created in bugzilla for tracking purposes)


==Incubator Stage==
You should attach your localization source to this bug for review. Zips usually fail to work due to their file size as a single attachment, but tarballs do. You can create one by using
[[User:AxelHecht| Axel]] does this part for you. The result of this stage is a review of your language pack to ensure its working the way we all expect and then it moves to the branch.
tar -jcvf localization.tar.bz2 l10n/en-X-dude,
where you replace <code>en-X-dude</code> with your language code.


*This is what we refer to as the incubator stage. Mozilla's objective is to get an idea of how things are working, collaboratively go through an evaluation criteria for moving to the branch: trunk l10n with branch language pack for testing. At this stage you won't have a public product launched, or web pages (yet).
== Reviews ==
* More specifically, you should attach a language pack to your bug, we'll put language pack for you on branch to take a look at and see if its working reasonably well, and then you test it to be sure it's fine
Mozilla will take a look at the reviews by native speakers that you point to in the bug. In addition to that, we'll do an user-experience and a technical review. The technical review is done by seasoned Mozilla staff to ensure that there is a promising effort to create a full source localization of the product in question by evaluating the technical correctness and localization coverage. The user-experience review will make a call whether a particular language or dialect is better served with a language pack instead of a full product localization. We may prioritize requests to match them with the resources inside the QA and release team at Mozilla. Part of the user experience review is also some linguistic assessment of the language or dialect in question.
* Once landing tests fine then Axel will move it onto the trunk.
 
* Our intent is to make this more powerful with tools, for example we've built one called [http://l10n.mozilla.org/buildbot/| buildbot] to give us an idea of how your language pack is performing
These reviews are done to ensure that the quality of the localization work meets the high standards people have come to expect when they download a Mozilla product from the official [http://www.mozilla.com/en-US/firefox/all.html Mozilla site]. A successful review gives the OK for moving from a language pack to a fully localized product. 
*For landing on the trunk: land-ab-CD alias
 
Once the reviews have been successful, we'll make your localization team official, create a bugzilla component for it, and we're ready to move the localization work into CVS.
 
= Landing in CVS =
Mozilla uses CVS to organize the source code changes. You would want to dig a little into version control systems, with a focus on CVS and branches.
 
== CVS write access ==
To get write access to the l10n cvs repository on the Mozilla server, there's a bit of paper work to be done. The localization owner needs to [https://bugzilla.mozilla.org/enter_bug.cgi?product=mozilla.org&component=CVS%20Account%20Request&version=other&rep_platform=All&op_sys=All&priority=--&bug_severity=normal&target_milestone=---&bug_status=UNCONFIRMED&assigned_to=registration%40localization.bugs&qa_contact=registration%40localization.bugs&short_desc=l10n%20CVS%20account%20for%20John%20Doe%20(ab-CD) file a bug requesting a CVS account]. You need to follow the instructions regarding the [http://www.mozilla.org/hacking/form.html CVS contributor form]. Write access to the CVS repository requires a ''voucher'', which, for the owner, will be done based on the review by Mozilla. For peers of a localization, the owner can vouch (once she or he is registered).
 
Once your cvs access is up and working, we'll be working towards release.
 
= Towards Release =
The first thing that needs to be done is the initial landing and set up. We're calling this the [[L10n:Incubator|Incubator]].
 
== Incubator Stage ==
[[User:AxelHecht| Axel]] does the initial landing in CVS for you, as it happened to be more error prone than the rest. Your localization will be added to the [http://l10n.mozilla.org/buildbot/ incubator build], too, which generates build logs and language packs as soon as you check in. The result of this stage is a review of your language pack to ensure its working the way we all expect and then it moves to the branch. You'll be landing your changes on the trunk, which remain to be tested against the latest stable release.
 
This work will be tracked by a landing bug, filed in your bugzilla component and with the alias <code>land-AB-CD</code>, where <code>AB-CD</code> is your language code.
 
While we're jointly ironing out the remaining localization issues and possibly technical problems, the remaining parts for a full localization get addressed, in particular, the productization and the web parts.
 
=== Productization ===
We'll jointly work on  your language-specific search engines, RSS readers, feeds and [http://wiki.mozilla.org/Firefox3/Product_Requirements_Document#Content_handling| content handlers]. This way users have not only a browser that works in their language but also have features localized specifically for their language like Search and RSS readers.
 
We'll file a separate bug to track this step, in which you propose what local options you'd like to include and we collaboratively review it and once it's approved, you check in the changes.


==Productization==
* This stage is when you create  your language-specific search engines, RSS readers or feeds and [http://wiki.mozilla.org/Firefox3/Product_Requirements_Document#Content_handling| content handlers]. This way users have not only a browser that works in their language but also has tools specifically for their language like Search and RSS readers.
* The way you do this is within your bug propose what local options you'd like to include and we collaboratively review it (in a similar way as we did in the stage before) and once it's approved, you check in the changes.
* [[User:MicBerman| Mic]] is the one who does the reviews with you over this stage
* [[User:MicBerman| Mic]] is the one who does the reviews with you over this stage
* the best way to make these recommendations is to get input from your local community as to what they use or want to use in your local language version. For examples check out bugs: [https://bugzilla.mozilla.org/show_bug.cgi?id=375198| 375198], or [https://bugzilla.mozilla.org/show_bug.cgi?id=375818| 375818]  
* the best way to make these recommendations is to get input from your local community as to what they use or want to use in your local language version. For examples check out bugs: [https://bugzilla.mozilla.org/show_bug.cgi?id=375198| 375198], or [https://bugzilla.mozilla.org/show_bug.cgi?id=375818| 375818]  
* also check out the current list of [[Firefox3/L10n_Requirements| requirements]] for the upcoming release of Firefox 3
* also check out the current list of [[Firefox3/L10n_Requirements| requirements]] for the upcoming release of Firefox 3


==Morph==
== Building your Web presence ==
* This is the stage when you build your [[L10n:Web_parts#Firefox_in-product_pages|in web product]] pages. These are dedicated pages to your build which describe and promote specifications you've identified that users will appreciate. This page is for users.
* [[User:Pascalc|Pascalc]] work with you to guide the building of these pages
* Pascal is working to create an [[L10n:Web_parts|explicit instruction set]]
 
== Branching the localization ==
Axel handles this part again and specifically,
Axel handles this part again and specifically,
* This is the stage when your landing bug gets into branch
* This is the step when your localization gets on the branch
* It is completed after initial landing is done
* We create a bug for build automation  
* We create a bug for build automation  
* We then create a bug for test automation
* once this step is complete your localization will then be building on branch
* once this step is complete you will then be building on branch
* evaluations are then done by you to ensure all is done the way it's supposed to be. You should incorporate your community if you can for testing here as we all want the user experience to be the best and the crux of this stage is making sure all the translations are completed and "right".
* evaluations are then done by you to ensure all is done the way it's supposed to be: this is where testing starts to ensure all strings are translated, etc. You should rely on your community if you can for testing here as we all want the user experience to be the best and the crux of this stage is making sure all the translations are completed and appear "right".


==Building your Web presence==
== Ship Beta ==
 
* This is the stage when you build your [http://wiki.mozilla.org/L10n:Web_parts#Firefox_in-product_pages in web product] pages. These are dedicated pages to your build which describe and promote specifications you've identified that users will appreciate. This page is for users.
* [mailto:pascal.chevrel@mozilla-europe.org  Pascal] work with you to guide the building of these pages
* Pascal is working to create an [http://wiki.mozilla.org/L10n:Web_parts explicit instruction set]
* We can help you with hosting costs if you need, we have been working on a [http://blog.mozilla.com/seth/2007/06/04/support-update-3/ global program],  [mailto:l10n-drivers@mozilla.org email] for this type of support.
 
==Ship Beta==
* This is our QA stage, it is heavily dependent on a community review
* This is our QA stage, it is heavily dependent on a community review
* Effectively we're asking and you're asking to get as much community feedback as you have access to to review these builds. We want to make sure users will be very happy with the quality of the language translation and the choices we've made to reflect functionality like search, RSS, etc in their language.
* Effectively we're asking and you're asking to get as much community feedback as you have access to to review these builds. We want to make sure users will be very happy with the quality of the language translation and the choices we've made to reflect functionality like search, RSS, etc in their language.
* The build is still not on web official, however it is listed as a Beta on http://www.mozilla.com/en-US/firefox/all.html
* There are no automatic links to your localization on http://getfirefox.com yet, however it is listed as a Beta on http://www.mozilla.com/en-US/firefox/all.html.
 
We're working on a testing matrix to make it easier to find out how to get from a Beta build to a full official release.


Now moving from Beta to [[L10n:Localization_Process_End| Official Build]].
= Official Release =
You now have an official release of your localized Mozilla product. [[L10n:Localization_Process_End|Official Build]]s come with more possibilities and tasks, which deserve a separate page.
Confirmed users, Bureaucrats and Sysops emeriti
2,976

edits