diff options
Diffstat (limited to 'third_party/python/compare_locales/compare_locales-8.2.1.dist-info')
5 files changed, 195 insertions, 0 deletions
diff --git a/third_party/python/compare_locales/compare_locales-8.2.1.dist-info/METADATA b/third_party/python/compare_locales/compare_locales-8.2.1.dist-info/METADATA new file mode 100644 index 0000000000..0b7275a1ee --- /dev/null +++ b/third_party/python/compare_locales/compare_locales-8.2.1.dist-info/METADATA @@ -0,0 +1,89 @@ +Metadata-Version: 2.1 +Name: compare-locales +Version: 8.2.1 +Summary: Lint Mozilla localizations +Home-page: UNKNOWN +Author: Axel Hecht +Author-email: axel@mozilla.com +License: MPL 2.0 +Platform: any +Classifier: Development Status :: 5 - Production/Stable +Classifier: Intended Audience :: Developers +Classifier: License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0) +Classifier: Operating System :: OS Independent +Classifier: Programming Language :: Python +Classifier: Programming Language :: Python :: 2 +Classifier: Programming Language :: Python :: 2.7 +Classifier: Programming Language :: Python :: 3 +Classifier: Programming Language :: Python :: 3.5 +Classifier: Programming Language :: Python :: 3.6 +Classifier: Programming Language :: Python :: 3.7 +Classifier: Programming Language :: Python :: 3.8 +Classifier: Programming Language :: Python :: 3.9 +Classifier: Topic :: Software Development :: Libraries :: Python Modules +Classifier: Topic :: Software Development :: Localization +Classifier: Topic :: Software Development :: Testing +Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4 +Description-Content-Type: text/markdown +Requires-Dist: fluent.syntax (<0.19,>=0.18.0) +Requires-Dist: pytoml +Requires-Dist: six + +![Build tests](https://github.com/mozilla/compare-locales/workflows/test/badge.svg) +# compare-locales +Lint Mozilla localizations + +Finds +* missing strings +* obsolete strings +* errors on runtime errors without false positives +* warns on possible runtime errors + +It also includes `l10n-merge` functionality, which pads localizations with +missing English strings, and replaces entities with errors with English. + +If you want to check your original code for errors like duplicated messages, +use `moz-l10n-lint`, which is also part of this package. You can also use +this to check for conflicts between your strings and those already exposed +to l10n. + +# Configuration + +You configure `compare-locales` (and `moz-l10n-lint`) through a +[project configuration](https://moz-l10n-config.readthedocs.io/en/latest/fileformat.html) +file, `l10n.toml`. + +# Examples + +To check all locales in a project use + +```bash +compare-locales l10n.toml . +``` + +To check Firefox against a local check-out of l10n-central, use + +```bash +compare-locales browser/locales/l10n.toml ../l10n-central +``` + +If you just want to check particular locales, specify them as additional +commandline parameters. + +To lint your local work, use + +```bash +moz-l10n-lint l10n.toml +``` + +To check for conflicts against already existing strings: + +```bash +moz-l10n-lint --reference-project ../android-l10n/mozilla-mobile/fenix l10n.toml +moz-l10n-lint --l10n-reference ../gecko-strings browser/locales/l10n.toml +``` + +to check for a monolithic project like Fenix or a gecko project like Firefox, +resp. + + diff --git a/third_party/python/compare_locales/compare_locales-8.2.1.dist-info/RECORD b/third_party/python/compare_locales/compare_locales-8.2.1.dist-info/RECORD new file mode 100644 index 0000000000..838763ecca --- /dev/null +++ b/third_party/python/compare_locales/compare_locales-8.2.1.dist-info/RECORD @@ -0,0 +1,95 @@ +compare_locales/__init__.py,sha256=rwy5Zms-DJtp9qiIBjlw2_W4baFvd1bmdMuklvodTF4,18 +compare_locales/commands.py,sha256=y-GfISkj9QEHa6hxkc-KA2JWKyer6ALt0yIBu44G6JA,8524 +compare_locales/keyedtuple.py,sha256=LZW0ekyGOGSEPzbstEbkMP5ZlrMIJ0JfUUgO_bYpuY0,1634 +compare_locales/merge.py,sha256=3V-SHO6JxDY1_8z-FNmYM0TQTf-DQbaHzpZjM3kjxOA,4669 +compare_locales/mozpath.py,sha256=G8ICLtD-PvnwrCyd9M8Dr2jtl9tpNvU_u-Vb2VprqUw,4271 +compare_locales/plurals.py,sha256=hcVFkPccb1HxJTfm5zZcugPoQAMBVfUuv8RAtRB5bOc,4001 +compare_locales/serializer.py,sha256=SaVmgdQD4pZXeUs8nxxRGyn90fz-HxZtbe_bwnHtRzY,4415 +compare_locales/util.py,sha256=ttl1tcGveJpYqoHKVlIplhb0wSjAjAaTRQT0z6xoYrQ,439 +compare_locales/checks/__init__.py,sha256=igkMRAsVC6o-qoMz1nPKVgo7mApD3ZfxJ0HziBkP1Mw,1049 +compare_locales/checks/android.py,sha256=D_mk7Ht30G7A9KJwEMfUwwwO5MtvcVN-dONOisvrcpY,8616 +compare_locales/checks/base.py,sha256=vEpbYRTqNUesQD_cvfOgTOoqBgEdifSXrlPNzVQqVrc,4306 +compare_locales/checks/dtd.py,sha256=fon3uNnVrRGjUSdeEqv-UL52Cweq0Slipa7BvYFoS8Y,10240 +compare_locales/checks/fluent.py,sha256=1IQSHoq3b3-bDKDgFtCsjvndqAvK2fm79RHRVSoeyic,13450 +compare_locales/checks/properties.py,sha256=xvyn4lSFH2DsUabl4jvhoTAQMo_vHzbFjo5PUGlT-SI,6966 +compare_locales/compare/__init__.py,sha256=Dqij9bny_S8lPrPCdWSwRFSy20E2-Cn0mDe6p0fYDjc,3373 +compare_locales/compare/content.py,sha256=yE7WeA3fZuFONdR5Gwl0A55MLRh2krCTeE656V4WPm8,11068 +compare_locales/compare/observer.py,sha256=ZZ-dCwtBi-r9DmB9kljIIFWfczeiaQAxPrR1EKO3tkI,7543 +compare_locales/compare/utils.py,sha256=eH4UA1gTj0w4Cn2RV9FDe34PtBzCRNfGHjJGjFrnX_c,4383 +compare_locales/integration_tests/__init__.py,sha256=eOFgaCLveRf8s90SCQUeZRRxG5LAXwUSxQHxi4H4hvc,154 +compare_locales/integration_tests/test_plurals.py,sha256=vsEOEpYPONiAM5AJ2lm-jKSTioa4ORWZsfCu3Kem1Ug,1687 +compare_locales/lint/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +compare_locales/lint/cli.py,sha256=WnjOwoJicS8e1Qm-CXfVIPn3T01tXVZlouSr72hN7ZU,3044 +compare_locales/lint/linter.py,sha256=zHikPhXtmFR8nqBBt1UgmRjo3bcETaJWOoJ8lCdtIw0,4306 +compare_locales/lint/util.py,sha256=Ksk08CUNe-tSUuU3E1dSC4UnNuAjCuM3NxaqvVcEa_o,1369 +compare_locales/parser/__init__.py,sha256=qiITkrdYBbObr2BL8aojDN0QhAhPwNHKxA0uwPius28,2120 +compare_locales/parser/android.py,sha256=TxRv9ODhLHQBThxj8xVHY6JmBUAUEB0M8osMLguPAPY,9360 +compare_locales/parser/base.py,sha256=mG-apfK_ASAVJvvYtRxuzWlQY3vk5LGHIz5Gq_j0ctk,13248 +compare_locales/parser/defines.py,sha256=2CEX0x-GmeQzqWjG0yGFHPhWy7-VKPz_hFe3mJIjdQo,3628 +compare_locales/parser/dtd.py,sha256=aqiL4DbP3t6dcJVTgr1tcLa-tIpKfvJ0FC2Ysck5C0Q,4545 +compare_locales/parser/fluent.py,sha256=z6LXnoksjNlmqjwS1aSM-FlqSvhogb_KcYstFxN2gS8,7168 +compare_locales/parser/ini.py,sha256=42_tYNSYJwONCcoH6OdRBK_5xBtamn4gWQzIi9vi-k0,1654 +compare_locales/parser/po.py,sha256=HDyKdvKzPRGBGrdIr0p5SnL94kaZe2y71H2OaJjz7wQ,3321 +compare_locales/parser/properties.py,sha256=y7Le97-myaRa5Zv1Gn8Mk7qv-zsxrDmhQZz9SkpXLn0,3829 +compare_locales/paths/__init__.py,sha256=ltkGVBHeBbh0VMymXjx2AlGSLZjIPBHYIOTU8bZiEtY,1466 +compare_locales/paths/configparser.py,sha256=Ktm9NI-bsXXEO9IQQEgZY1uMGGhT5mySkHsHW-bcZY8,4480 +compare_locales/paths/files.py,sha256=qpCYLuRh_YtaiPWcec_fTuiSq-KX4m_Nnem1k3MU8ig,9068 +compare_locales/paths/ini.py,sha256=Z0bQXOgIkpgoOaPha8Uh0Kk9tsfaoPGdKFnvXwB4PCM,8518 +compare_locales/paths/matcher.py,sha256=kbWCqO7BIAjOQ7fqeH57UVqk-AQCgWDuIoweDPL_Q30,15261 +compare_locales/paths/project.py,sha256=YVcNvPnGA44rgy2RzFO-RS-inf6VIM4bWkIBQpcLQTU,8986 +compare_locales/tests/__init__.py,sha256=gtR7yDaY0fmHOVnZkqilJY1QTmt0rFMbTsecH4AZl1c,2643 +compare_locales/tests/test_apps.py,sha256=sGtV1eWVTm86g6DEzoHkKg4sEZKZWZsQ4E2gtpwPyw4,5922 +compare_locales/tests/test_checks.py,sha256=Ur-TwEbL2gUYFNvonrWFnYVuLryKyMiTM6p_3oXmkwY,3082 +compare_locales/tests/test_compare.py,sha256=FNe49MBWAD_p6Epo4QS9RUwCLJpE9MZCJpthjy73Ab0,6556 +compare_locales/tests/test_defines.py,sha256=CoxB2KBp88lyfQ0RNQ2dgjhKwV-kuzfyXrzQAD8Zwrc,7419 +compare_locales/tests/test_ini.py,sha256=ojbYCtg4h6XsGPBUOJMC5emb88Ok74pHHP4NxgWt43o,5545 +compare_locales/tests/test_keyedtuple.py,sha256=-k9OfVWfi8RUi4ifImto2kgiQ9bh26QGCosmzkyPTZM,1879 +compare_locales/tests/test_merge.py,sha256=-gaN10LrrwffJ4zDDNN2u7VXcAPoTxK6lBw6jCEIlkQ,44822 +compare_locales/tests/test_mozpath.py,sha256=WpDtafH9JOn5PKGucPI4lIiuKhB33E3DvRkpz3E20oU,5917 +compare_locales/tests/test_parser.py,sha256=i4NGKjOwhWI4fEHFACIkbl2PqYUdS1CUw4bye549k4g,3212 +compare_locales/tests/test_util.py,sha256=UVagNHE-cyOaf6JIl_mzy-rHyegIs700rxvT7oauGHM,728 +compare_locales/tests/android/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +compare_locales/tests/android/test_checks.py,sha256=H8Tfv9ZKsd0P2lnhVgW2ZeAlwz-IiYbPUqalHNxh3dA,9397 +compare_locales/tests/android/test_merge.py,sha256=A-GymwIj88G6IEZGFFE4zGPH7li5WAdYF4NFbJZlnPY,2036 +compare_locales/tests/android/test_parser.py,sha256=GKZlytRICiQLsAq_ck4mSC_77KyyOXtN0V8t4f_n_Lo,3397 +compare_locales/tests/data/bug121341.properties,sha256=BLQKqFxYoxwN4ML3an3By5IxpqD1o2nL95FEMRWfCGE,4103 +compare_locales/tests/data/test.properties,sha256=nrqfW1KcAIIgEJ5Qpyg_ijTDmbApKenwd-kqZAJGGCY,332 +compare_locales/tests/data/triple-license.dtd,sha256=PIebO8DcvRtXZVWnjcvtWFB3hrwWWV4H-nhiMbXF5J0,1771 +compare_locales/tests/dtd/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +compare_locales/tests/dtd/test_checks.py,sha256=tVpQacc7f-tD3DZXTd9Nr7zkeFysl6WepZB4kzjgrWo,13852 +compare_locales/tests/dtd/test_merge.py,sha256=iIoW_16EeoZWSqMTCHjnAKUnotticfVEyADuPTAeJqs,6262 +compare_locales/tests/dtd/test_parser.py,sha256=XlgZCTpcVbYaoGxVhW_vUte_OfZ-xJn1AV0gBwR0AIw,8919 +compare_locales/tests/fluent/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +compare_locales/tests/fluent/test_checks.py,sha256=0jxNghHITvAq5WqFhWrpDBjerRVtukfPbKph5ZpKhd8,14520 +compare_locales/tests/fluent/test_merge.py,sha256=rUNNiiudokol2bUIT7brVKfgOxHWpg584JF1wZ28hKc,5063 +compare_locales/tests/fluent/test_parser.py,sha256=yIJpg4m96nNs0Wusbg08ucRldJ3EusfYpZy-kQ5iCTc,9109 +compare_locales/tests/lint/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +compare_locales/tests/lint/test_linter.py,sha256=_Ds3XfWM8-jsqpR_tM-J2HYKC8euwcWvV4x96Br4Kak,3399 +compare_locales/tests/lint/test_util.py,sha256=IzkNiLIpanqpAodPNyLbwa5XGvYYawH2il1PbNUw__w,3470 +compare_locales/tests/merge/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +compare_locales/tests/merge/test_comments.py,sha256=uxbQSbB8Ed9CCkY5kdiz4Dpx4YyHvDSIwdn0xoU4-9c,3470 +compare_locales/tests/merge/test_messages.py,sha256=uyw_ajphPHw3hJzLlU9mDBdPsRJLnj91NDB7HTaDRr0,1756 +compare_locales/tests/merge/test_unknown.py,sha256=kXbPgkHk3Su8EZxtahyVvUCM86k3m9pigJuZONohlQ0,663 +compare_locales/tests/merge/test_whitespace.py,sha256=GiFguoZYlikyDjv9kJPpjoHGxgX7uWhT1TN6-VGa2bk,1290 +compare_locales/tests/paths/__init__.py,sha256=VoUPmeoFOYBulfuS07nWBj4CwcCcSiwKsJIxCOrWS3k,3889 +compare_locales/tests/paths/test_configparser.py,sha256=no9fflU8ROu7wYSJp-tABFujPL9g5z77guEiRbNVY-8,3577 +compare_locales/tests/paths/test_files.py,sha256=hAz4Z9IUfRp4muskonqFZ1R0bNymlOZQwtzLzCx5Xp8,18885 +compare_locales/tests/paths/test_ini.py,sha256=Qytt5d68xotKZ99msYk4jMULb8LlI-4mQeXfOo3Xuwc,3389 +compare_locales/tests/paths/test_matcher.py,sha256=xz5CUBUe541NiBEgYdDLoskrEOyVDYpZsmSlHvCmLRo,16020 +compare_locales/tests/paths/test_paths.py,sha256=QP7JlojewyM_jPUV3MlG6h0EfuATXvKjNPwNkuDsBa0,1036 +compare_locales/tests/paths/test_project.py,sha256=-llBFCbKFR-lzg4sUBPH5qU15x7_Krgss1rFevE2Atc,7844 +compare_locales/tests/po/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +compare_locales/tests/po/test_parser.py,sha256=B1qbRQs6HwHjr_ob5qec7H_lmErO-UnUgmcwgU8H77U,3784 +compare_locales/tests/properties/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +compare_locales/tests/properties/test_checks.py,sha256=kjfhOExgSkSLHggN5tTa7TrB_sz0Pn1HdlOPUFOyV8s,3533 +compare_locales/tests/properties/test_merge.py,sha256=q0MaTyX9LoLC1aPlVa_0yagrX8pafZQXV30uvgSUYeU,1348 +compare_locales/tests/properties/test_parser.py,sha256=SKcUAGNsO52NgtVhmIr8v_8-sKFDw4W2pI3f0xyZ9z8,7361 +compare_locales/tests/serializer/__init__.py,sha256=BjQqPldYwIaBckqv4XbKUFCxiQ3PtxrvOrY2P-ozMkk,1136 +compare_locales/tests/serializer/test_android.py,sha256=iRNxC742DpmU_q-i0N1c3hXUDa8UpqV4yiR3vQ4h628,5537 +compare_locales/tests/serializer/test_fluent.py,sha256=3DaGmaAbrmBPI_NZ0LStktF1E_3RUW_rNwggsLDUiRU,1645 +compare_locales/tests/serializer/test_properties.py,sha256=qqnv13huEyIzFvp83E3YmaQpe0zLGRj9Zfr3eEv63qA,2007 +compare_locales-8.2.1.dist-info/METADATA,sha256=D8Y0BwudFeGBSCPGyb8gEsIXuQEFJNvt9UoR10QKEPk,2782 +compare_locales-8.2.1.dist-info/WHEEL,sha256=z9j0xAa_JmUKMpmz72K0ZGALSM_n-wQVmGbleXx2VHg,110 +compare_locales-8.2.1.dist-info/entry_points.txt,sha256=OCmSzZoRKqFdYlm_UCCYFQfw22nhf8LGcI3fpMRyQ30,128 +compare_locales-8.2.1.dist-info/top_level.txt,sha256=eSEPLAFZcEPFC1j0N9GtVpMaKCFKw67ehDx9CMcoel0,16 +compare_locales-8.2.1.dist-info/RECORD,, diff --git a/third_party/python/compare_locales/compare_locales-8.2.1.dist-info/WHEEL b/third_party/python/compare_locales/compare_locales-8.2.1.dist-info/WHEEL new file mode 100644 index 0000000000..0b18a28110 --- /dev/null +++ b/third_party/python/compare_locales/compare_locales-8.2.1.dist-info/WHEEL @@ -0,0 +1,6 @@ +Wheel-Version: 1.0 +Generator: bdist_wheel (0.37.1) +Root-Is-Purelib: true +Tag: py2-none-any +Tag: py3-none-any + diff --git a/third_party/python/compare_locales/compare_locales-8.2.1.dist-info/entry_points.txt b/third_party/python/compare_locales/compare_locales-8.2.1.dist-info/entry_points.txt new file mode 100644 index 0000000000..d6be6cb65e --- /dev/null +++ b/third_party/python/compare_locales/compare_locales-8.2.1.dist-info/entry_points.txt @@ -0,0 +1,4 @@ +[console_scripts] +compare-locales = compare_locales.commands:CompareLocales.call +moz-l10n-lint = compare_locales.lint.cli:main + diff --git a/third_party/python/compare_locales/compare_locales-8.2.1.dist-info/top_level.txt b/third_party/python/compare_locales/compare_locales-8.2.1.dist-info/top_level.txt new file mode 100644 index 0000000000..d9c74fc101 --- /dev/null +++ b/third_party/python/compare_locales/compare_locales-8.2.1.dist-info/top_level.txt @@ -0,0 +1 @@ +compare_locales |