Mercurial > libervia-backend
view README4TRANSLATORS @ 2716:06160b529da6
core (memory/sqlite): changed history constraint
/!\ Database schema change /!\
History was using a unique constraint on `profile_id, timestamp, source, dest, source_res, dest_res`, which can cause trouble because several messages send quickly by the same person can have a common timestamp (specially with delayed messages where precision is second), resulting in message loss.
The new constraint use `profile_id, stanza_id, source, dest` where `stanza_id` is XEP-0359 stanza_id, so it's unique by definition, and no message should be lost anymore.
Because sqlite doesn't support altering table with a constraint change, we have to create new tables and copy old data to new one, which can be pretty long.
Sqlite update mechanism with "specifics" has been fixed when several updates are applied (e.g. moving from v5 to v7) and a specific is in the workflow.
author | Goffi <goffi@goffi.org> |
---|---|
date | Sun, 09 Dec 2018 14:07:26 +0100 |
parents | 0db0013c59dd |
children | 5e72efd2f95d |
line wrap: on
line source
First of all, thank you for helping translating SàT :) NOTE: *.po files are in i18n directory To translate a file, you can use a dedicated tool as the excellent gtranslator: - use the template .po file (e.g. sat.po) and name it to your translated language (e.g. fr.po for french); you can preferably generate a new template directly from the source with the following command (eventually adapted, the following command use zsh's globbing syntax), launched from root sat dir after having emptied the build directory: > xgettext -L python -d sat --keyword=D_ -p i18n **/*(.py|.tac|primitivus)(.) **/jp(.) - then to start a new translation, copy i18n/sat.po to your language file, e.g. cd i18n; cp sat.po fr.po - use the choosed tool (a simple text editor can be sufficient) to edit the file: e.g. gtranslator fr.po - once you translation is finished (or partly finished: the english sentences are used if there is no translation), you can test them by generating a binary and moving it to the right place with the following commands: > msgfmt -o sat.mo fr.po > mv sat.mo i18n/fr/LC_MESSAGES/sat.mo - if you have already a translation, and want to update it (new translations to do, some sentences have changed), you can use the following commands: > msgmerge fr.po sat.po > fr2.po and if everything is allright > mv fr2.po fr.po Don't forget that you can (and should !) use the version-control system (mercurial, the "hg" command) to keep history of you translations. You can check the fr.po file to see how it's done and to know what to put while you set up you translation tool. Thank you again for you help, don't forget to give me your name and contact email so I can credit you, and don't hesitate to contact me if you need help (goffi@goffi.org, or the sat XMPP room at sat@chat.jabberfr.org).