Fluent Migration Tools
======================
Programmatically create Fluent files from existing content in both legacy
and Fluent formats. Use recipes written in Python to migrate content for each
of your localizations.
`migrate-l10n` is a CLI script which uses the `fluent.migrate` module under
the hood to run migrations on existing translations.
`validate-l10n-recipe` is a CLI script to test a migration recipe for common
errors, without trying to apply it.
Installation
------------
Install from PyPI:
pip install fluent.migrate[hg]
If you only want to use the `MigrationContext` API, you can drop the
requirement on `python-hglib`:
pip install fluent.migrate
Usage
-----
Migrations consist of _recipes_, which are applied to a _localization repository_, based on _template files_.
You can find recipes for Firefox in `mozilla-central/python/l10n/fluent_migrations/`,
the reference repository is [gecko-strings](https://hg.mozilla.org/l10n/gecko-strings/) or _quarantine_.
You apply those migrations to l10n repositories in [l10n-central](https://hg.mozilla.org/l10n-central/), or to `gecko-strings` for testing.
The migrations are run as python modules, so you need to have their file location in `PYTHONPATH`.
An example would look like
$ migrate-l10n --lang it --reference-dir gecko-strings --localization-dir l10n-central/it bug_1451992_preferences_sitedata bug_1451992_preferences_translation
Raw data
{
"_id": null,
"home_page": "https://github.com/mozilla/fluent-migrate",
"name": "fluent.migrate",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "fluent,localization,l10n",
"author": "Mozilla",
"author_email": "l10n-drivers@mozilla.org",
"download_url": "https://files.pythonhosted.org/packages/ae/81/14a35a7a03527524d9d85465c84390f9d5807d4a82c3a4ac9e4e38218f32/fluent.migrate-0.13.0.tar.gz",
"platform": null,
"description": "Fluent Migration Tools\n======================\n\nProgrammatically create Fluent files from existing content in both legacy\nand Fluent formats. Use recipes written in Python to migrate content for each\nof your localizations.\n\n`migrate-l10n` is a CLI script which uses the `fluent.migrate` module under\nthe hood to run migrations on existing translations.\n\n`validate-l10n-recipe` is a CLI script to test a migration recipe for common\nerrors, without trying to apply it.\n\nInstallation\n------------\n\nInstall from PyPI:\n\n pip install fluent.migrate[hg]\n\nIf you only want to use the `MigrationContext` API, you can drop the\nrequirement on `python-hglib`:\n\n pip install fluent.migrate\n\nUsage\n-----\n\nMigrations consist of _recipes_, which are applied to a _localization repository_, based on _template files_.\nYou can find recipes for Firefox in `mozilla-central/python/l10n/fluent_migrations/`,\nthe reference repository is [gecko-strings](https://hg.mozilla.org/l10n/gecko-strings/) or _quarantine_.\nYou apply those migrations to l10n repositories in [l10n-central](https://hg.mozilla.org/l10n-central/), or to `gecko-strings` for testing.\n\nThe migrations are run as python modules, so you need to have their file location in `PYTHONPATH`.\n\nAn example would look like\n\n $ migrate-l10n --lang it --reference-dir gecko-strings --localization-dir l10n-central/it bug_1451992_preferences_sitedata bug_1451992_preferences_translation\n",
"bugtrack_url": null,
"license": "APL 2",
"summary": "Toolchain to migrate legacy translation to Fluent.",
"version": "0.13.0",
"project_urls": {
"Homepage": "https://github.com/mozilla/fluent-migrate"
},
"split_keywords": [
"fluent",
"localization",
"l10n"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "fe03507fb6406bfe3be909575cf122d21772ccd04f5c75af2d47a82dae20a955",
"md5": "70ccb9cd169f7e826bfa2deed3eba9d8",
"sha256": "18a5c9d0c00cd50f45754a8e568d1fa57500679bdd00a98604de963cafef5a70"
},
"downloads": -1,
"filename": "fluent.migrate-0.13.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "70ccb9cd169f7e826bfa2deed3eba9d8",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 29351,
"upload_time": "2024-02-01T08:44:29",
"upload_time_iso_8601": "2024-02-01T08:44:29.954105Z",
"url": "https://files.pythonhosted.org/packages/fe/03/507fb6406bfe3be909575cf122d21772ccd04f5c75af2d47a82dae20a955/fluent.migrate-0.13.0-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ae8114a35a7a03527524d9d85465c84390f9d5807d4a82c3a4ac9e4e38218f32",
"md5": "0457cff2ea756ba38dd9c05d5ad06f5f",
"sha256": "15d48d51c838167a2ace3788f34b130d40e4946f08f9f48d9495a34ac565bb1c"
},
"downloads": -1,
"filename": "fluent.migrate-0.13.0.tar.gz",
"has_sig": false,
"md5_digest": "0457cff2ea756ba38dd9c05d5ad06f5f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24926,
"upload_time": "2024-02-01T08:44:31",
"upload_time_iso_8601": "2024-02-01T08:44:31.482416Z",
"url": "https://files.pythonhosted.org/packages/ae/81/14a35a7a03527524d9d85465c84390f9d5807d4a82c3a4ac9e4e38218f32/fluent.migrate-0.13.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-02-01 08:44:31",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "mozilla",
"github_project": "fluent-migrate",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"tox": true,
"lcname": "fluent.migrate"
}