: The Claws Team sets a date for release, at least 2 weeks in advance.

: The Claws Team sets a date for release, at least 2 weeks in advance.

−

:: <u>Week One:</u> CVS feature freeze

+

:: <u>Week One:</u> Git feature freeze

−

::: No new features are added to CVS, the Team try to fix as many outstanding bugs as possible, test new features thoroughly, and improve any translatable strings as is deemed necessary.

+

::: No new features are added to Git, the Team try to fix as many outstanding bugs as possible, test new features thoroughly, and improve any translatable strings as is deemed necessary.

::: A message announcing the forthcoming release is sent to the [http://www.claws-mail.org/MLs.php translators' mailing list]. Translators should respond to this message, confirming whether they will or will not be submitting updates.

::: A message announcing the forthcoming release is sent to the [http://www.claws-mail.org/MLs.php translators' mailing list]. Translators should respond to this message, confirming whether they will or will not be submitting updates.

−

:: <u>Week Two:</u> CVS string freeze

+

:: <u>Week Two:</u> Git string freeze

::: No new features are added and no translatable strings are changed or added.

::: No new features are added and no translatable strings are changed or added.

−

::: During this second week, translators should update their local CVS trees and work on updating their translations. For those translators who are unable to build from CVS, up to date POT files are made available for download at http://www.claws-mail.org/i18n/.

+

::: During this second week, translators should update their local Git trees and work on updating their translations. For those translators who are unable to build from Git, up to date POT files are made available for download at http://www.claws-mail.org/i18n/.

::: If no strings were changed from the previous release the PO file <u>must not be changed and does not need to be submitted</u>.

::: If no strings were changed from the previous release the PO file <u>must not be changed and does not need to be submitted</u>.

−

::: When a translator has updated his/her translations they should be sent to Paul at [mailto:translations@thewildbeast.co.uk translations@thewildbeast.co.uk] at any time before the week is up. They will then be committed to CVS and included in the release.

+

::: When a translator has updated his/her translations they should be sent to Paul at [mailto:translations@thewildbeast.co.uk translations@thewildbeast.co.uk] at any time before the week is up. They will then be committed to Git and included in the release.

:: <u>Week Three:</u> The release

:: <u>Week Three:</u> The release

::: The release will be made on Day One of Week Three.

::: The release will be made on Day One of Week Three.

: <b>Bug-Fix Releases</b>

: <b>Bug-Fix Releases</b>

−

:: The Claws Team occasionally feels the need to make bug-fix releases. These are normally indicated by an increment of the MICRO_VERSION, (e.g. from version 2.7.0 to 2.7.1). The bug-fix releases contain none of the new features that have been added to CVS since the last major release, and they also do not contain any new translatable strings that may have been added to CVS. Therefore no translation updates are required for these releases and, consequently, the usual process, detailed above, is not initiated.

+

:: The Claws Team occasionally feels the need to make bug-fix releases. These are normally indicated by an increment of the MICRO_VERSION, (e.g. from version 2.7.0 to 2.7.1). The bug-fix releases contain none of the new features that have been added to Git since the last major release, and they also do not contain any new translatable strings that may have been added to Git. Therefore no translation updates are required for these releases and, consequently, the usual process, detailed above, is not initiated.

===Information for new translators===

===Information for new translators===

Line 20:

Line 20:

'''Starting fresh'''

'''Starting fresh'''

−

First grab yourself a copy of the Claws Mail sources, preferably from [http://www.claws-mail.org/cvs.php CVS], and create a claws-mail.pot file:

+

First grab yourself a copy of the Claws Mail sources, preferably from [http://www.claws-mail.org/git.php Git], and create a claws-mail.pot file:

: ./autogen.sh

: ./autogen.sh

: cd po

: cd po

: make claws-mail.pot

: make claws-mail.pot

−

If you are not able to build from CVS, then get a copy of the last released sources from the [http://sourceforge.net/project/showfiles.php?group_id=25528&package_id=147457 SourceForge Claws-Mail files page], which has the claws-mail.pot file included.

+

If you are not able to build from Git, then get a copy of the last released sources from the [http://www.claws-mail.org/releases.php Claws-Mail releases page], which has the claws-mail.pot file included.

Copy claws-mail.pot to [LANGUAGE ABBREV].po, (replace [LANGUAGE ABBREV] with the correct abbreviation for your language, e.g. 'es' if you are translating into Spanish).

Copy claws-mail.pot to [LANGUAGE ABBREV].po, (replace [LANGUAGE ABBREV] with the correct abbreviation for your language, e.g. 'es' if you are translating into Spanish).

: cp claws-mail.pot es.po

: cp claws-mail.pot es.po

−

Open your new po file with your favourite text editor, (or you may prefer to use a translation catalog editor, such as [http://poedit.sourceforge.net poedit] or [http://kbabel.kde.org/ kbabel], for example), and first edit the header section of your file. You will need to replace the text in UPPERCASE with the correct values. The easiest way to work out how to do this is to compare it to another po file that already exists:

+

Open your new po file with your favourite text editor, (or you may prefer to use a translation catalog editor, such as [http://poeditor.com POEditor], [https://poedit.net/ poedit] or [https://userbase.kde.org/Lokalize Lokalize], for example), and first edit the header section of your file. You will need to replace the text in UPPERCASE with the correct values. The easiest way to work out how to do this is to compare it to another po file that already exists:

Consult the [http://www.gnu.org/software/gettext/manual/html_node/gettext_150.html gettext manual] for the correct Plural-Forms entry for your language.

Consult the [http://www.gnu.org/software/gettext/manual/html_node/gettext_150.html gettext manual] for the correct Plural-Forms entry for your language.

+

+

Be sure the top five lines in your submitted file are exactly like the example. Years and your language name may vary, of course.

Next you will add your translated strings in the <b>msgstr</b> sections.

Next you will add your translated strings in the <b>msgstr</b> sections.

Line 145:

Line 151:

'''Checking your translation for errors''' (and completeness)

'''Checking your translation for errors''' (and completeness)

: /usr/bin/msgfmt -c --statistics es.po

: /usr/bin/msgfmt -c --statistics es.po

−

−

You can also use the editor [http://www.poedit.net/ poedit] for editing the po file.

'''Building Claws Mail with your new translation included'''

'''Building Claws Mail with your new translation included'''

−

For this step you will need to be able to build from CVS, so a full set of development tools is required.

+

For this step you will need to be able to build from Git, so a full set of development tools is required.

Open the file configure.ac in your text editor and locate the line that begins with 'ALL_LINGUAS=', then add your language to the list of languages.

Open the file configure.ac in your text editor and locate the line that begins with 'ALL_LINGUAS=', then add your language to the list of languages.

Then run ./autogen.sh [OPTIONS], make, make install as usual.

Then run ./autogen.sh [OPTIONS], make, make install as usual.

−

−

When you have changed a translation in the po-file and compile claws-mail anew but the change don't show up, you have to do the following:

−

: cd po

−

: rm es.gmo

−

: make update-gmo

−

Then compile claws-mail as usual.

−

'''Updating your translation'''

'''Updating your translation'''

−

When it is time to update your translation, first update your [http://www.claws-mail.org/cvs.php CVS] working directory.

+

When it is time to update your translation, first update your [http://www.claws-mail.org/git.php Git] working directory.

Then do the following:

Then do the following:

Latest revision as of 10:55, 20 March 2017

The Release Process

The Claws Team sets a date for release, at least 2 weeks in advance.

Week One: Git feature freeze

No new features are added to Git, the Team try to fix as many outstanding bugs as possible, test new features thoroughly, and improve any translatable strings as is deemed necessary.

A message announcing the forthcoming release is sent to the translators' mailing list. Translators should respond to this message, confirming whether they will or will not be submitting updates.

Week Two: Git string freeze

No new features are added and no translatable strings are changed or added.

During this second week, translators should update their local Git trees and work on updating their translations. For those translators who are unable to build from Git, up to date POT files are made available for download at http://www.claws-mail.org/i18n/.

If no strings were changed from the previous release the PO file must not be changed and does not need to be submitted.

When a translator has updated his/her translations they should be sent to Paul at translations@thewildbeast.co.uk at any time before the week is up. They will then be committed to Git and included in the release.

Week Three: The release

The release will be made on Day One of Week Three.

Bug-Fix Releases

The Claws Team occasionally feels the need to make bug-fix releases. These are normally indicated by an increment of the MICRO_VERSION, (e.g. from version 2.7.0 to 2.7.1). The bug-fix releases contain none of the new features that have been added to Git since the last major release, and they also do not contain any new translatable strings that may have been added to Git. Therefore no translation updates are required for these releases and, consequently, the usual process, detailed above, is not initiated.

Information for new translators

Starting fresh

First grab yourself a copy of the Claws Mail sources, preferably from Git, and create a claws-mail.pot file:

./autogen.sh

cd po

make claws-mail.pot

If you are not able to build from Git, then get a copy of the last released sources from the Claws-Mail releases page, which has the claws-mail.pot file included.

Copy claws-mail.pot to [LANGUAGE ABBREV].po, (replace [LANGUAGE ABBREV] with the correct abbreviation for your language, e.g. 'es' if you are translating into Spanish).

cp claws-mail.pot es.po

Open your new po file with your favourite text editor, (or you may prefer to use a translation catalog editor, such as POEditor, poedit or Lokalize, for example), and first edit the header section of your file. You will need to replace the text in UPPERCASE with the correct values. The easiest way to work out how to do this is to compare it to another po file that already exists:

Some strings have informational data for translators included in the msgid part, delimited by the '|' character. Their purpose is to indicate the context of the string and they should not appear in your msgstr: