diff --git a/CHANGELOG b/CHANGELOG index 25ce7df..76051ee 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,9 @@ +Version 8.0.5 - 2026-08-10 +-------------------------- +* Translate every field and selection introduced by the module into Spanish + and Latin American Spanish. +* Include translation catalogs in built distributions. + Version 8.0.4 - 2026-08-10 -------------------------- * Display the Dominican tax classification on tax and tax-template forms and diff --git a/locale/es.po b/locale/es.po new file mode 100644 index 0000000..dd733b4 --- /dev/null +++ b/locale/es.po @@ -0,0 +1,83 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: account_do 8.0\n" +"PO-Revision-Date: 2026-08-10 00:00-0400\n" +"Last-Translator: Fundación Un País Mejor\n" +"Language-Team: Spanish\n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgctxt "field:account.tax,tax_kind:" +msgid "Tax Kind" +msgstr "Clasificación fiscal" + +msgctxt "field:account.tax.template,tax_kind:" +msgid "Tax Kind" +msgstr "Clasificación fiscal" + +msgctxt "selection:account.tax,tax_kind:" +msgid "ITBIS" +msgstr "ITBIS" + +msgctxt "selection:account.tax,tax_kind:" +msgid "ITBIS Withholding" +msgstr "Retención de ITBIS" + +msgctxt "selection:account.tax,tax_kind:" +msgid "ITBIS Acquirer Withholding" +msgstr "Retención de ITBIS por adquirencia" + +msgctxt "selection:account.tax,tax_kind:" +msgid "ISR Withholding" +msgstr "Retención de ISR" + +msgctxt "selection:account.tax,tax_kind:" +msgid "Selective Consumption Tax (ISC)" +msgstr "Impuesto Selectivo al Consumo (ISC)" + +msgctxt "selection:account.tax,tax_kind:" +msgid "INDOTEL Contribution (CDT)" +msgstr "Contribución al Desarrollo de las Telecomunicaciones (CDT)" + +msgctxt "selection:account.tax,tax_kind:" +msgid "Statutory Tip" +msgstr "Propina legal" + +msgctxt "selection:account.tax,tax_kind:" +msgid "Other Taxes" +msgstr "Otros impuestos" + +msgctxt "selection:account.tax.template,tax_kind:" +msgid "ITBIS" +msgstr "ITBIS" + +msgctxt "selection:account.tax.template,tax_kind:" +msgid "ITBIS Withholding" +msgstr "Retención de ITBIS" + +msgctxt "selection:account.tax.template,tax_kind:" +msgid "ITBIS Acquirer Withholding" +msgstr "Retención de ITBIS por adquirencia" + +msgctxt "selection:account.tax.template,tax_kind:" +msgid "ISR Withholding" +msgstr "Retención de ISR" + +msgctxt "selection:account.tax.template,tax_kind:" +msgid "Selective Consumption Tax (ISC)" +msgstr "Impuesto Selectivo al Consumo (ISC)" + +msgctxt "selection:account.tax.template,tax_kind:" +msgid "INDOTEL Contribution (CDT)" +msgstr "Contribución al Desarrollo de las Telecomunicaciones (CDT)" + +msgctxt "selection:account.tax.template,tax_kind:" +msgid "Statutory Tip" +msgstr "Propina legal" + +msgctxt "selection:account.tax.template,tax_kind:" +msgid "Other Taxes" +msgstr "Otros impuestos" diff --git a/locale/es_419.po b/locale/es_419.po new file mode 100644 index 0000000..9888663 --- /dev/null +++ b/locale/es_419.po @@ -0,0 +1,83 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: account_do 8.0\n" +"PO-Revision-Date: 2026-08-10 00:00-0400\n" +"Last-Translator: Fundación Un País Mejor\n" +"Language-Team: Spanish (Latin America)\n" +"Language: es_419\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgctxt "field:account.tax,tax_kind:" +msgid "Tax Kind" +msgstr "Clasificación fiscal" + +msgctxt "field:account.tax.template,tax_kind:" +msgid "Tax Kind" +msgstr "Clasificación fiscal" + +msgctxt "selection:account.tax,tax_kind:" +msgid "ITBIS" +msgstr "ITBIS" + +msgctxt "selection:account.tax,tax_kind:" +msgid "ITBIS Withholding" +msgstr "Retención de ITBIS" + +msgctxt "selection:account.tax,tax_kind:" +msgid "ITBIS Acquirer Withholding" +msgstr "Retención de ITBIS por adquirencia" + +msgctxt "selection:account.tax,tax_kind:" +msgid "ISR Withholding" +msgstr "Retención de ISR" + +msgctxt "selection:account.tax,tax_kind:" +msgid "Selective Consumption Tax (ISC)" +msgstr "Impuesto Selectivo al Consumo (ISC)" + +msgctxt "selection:account.tax,tax_kind:" +msgid "INDOTEL Contribution (CDT)" +msgstr "Contribución al Desarrollo de las Telecomunicaciones (CDT)" + +msgctxt "selection:account.tax,tax_kind:" +msgid "Statutory Tip" +msgstr "Propina legal" + +msgctxt "selection:account.tax,tax_kind:" +msgid "Other Taxes" +msgstr "Otros impuestos" + +msgctxt "selection:account.tax.template,tax_kind:" +msgid "ITBIS" +msgstr "ITBIS" + +msgctxt "selection:account.tax.template,tax_kind:" +msgid "ITBIS Withholding" +msgstr "Retención de ITBIS" + +msgctxt "selection:account.tax.template,tax_kind:" +msgid "ITBIS Acquirer Withholding" +msgstr "Retención de ITBIS por adquirencia" + +msgctxt "selection:account.tax.template,tax_kind:" +msgid "ISR Withholding" +msgstr "Retención de ISR" + +msgctxt "selection:account.tax.template,tax_kind:" +msgid "Selective Consumption Tax (ISC)" +msgstr "Impuesto Selectivo al Consumo (ISC)" + +msgctxt "selection:account.tax.template,tax_kind:" +msgid "INDOTEL Contribution (CDT)" +msgstr "Contribución al Desarrollo de las Telecomunicaciones (CDT)" + +msgctxt "selection:account.tax.template,tax_kind:" +msgid "Statutory Tip" +msgstr "Propina legal" + +msgctxt "selection:account.tax.template,tax_kind:" +msgid "Other Taxes" +msgstr "Otros impuestos" diff --git a/pyproject.toml b/pyproject.toml index df1832a..31a700e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -42,6 +42,7 @@ include = [ '**/tryton.cfg', '**/*.py', '**/*.xml', + '**/*.po', 'doc/**/*.rst', 'doc/**/*.py', 'view/**/*.xml', diff --git a/tests/test_module.py b/tests/test_module.py index 1d9d0c7..ed32253 100644 --- a/tests/test_module.py +++ b/tests/test_module.py @@ -568,7 +568,7 @@ class AccountDoUnitTestCase(unittest.TestCase): if line.strip() ] - self.assertEqual(config.get('tryton', 'version'), '8.0.4') + self.assertEqual(config.get('tryton', 'version'), '8.0.5') self.assertEqual( set(lines('tryton', 'depends')), {'account', 'ir'}) @@ -609,6 +609,7 @@ class AccountDoUnitTestCase(unittest.TestCase): "'CHANGELOG'", "'pyproject.toml'", "'**/*.xml'", + "'**/*.po'", "'doc/**/*.rst'", "'tests/**/*.rst'", ]: @@ -755,6 +756,33 @@ class AccountDoUnitTestCase(unittest.TestCase): with self.subTest(marker=marker): self.assertNotIn(marker, text) + def test_spanish_translations_cover_module_strings(self): + translations = { + 'Tax Kind': 'Clasificación fiscal', + 'ITBIS': 'ITBIS', + 'ITBIS Withholding': 'Retención de ITBIS', + 'ITBIS Acquirer Withholding': ( + 'Retención de ITBIS por adquirencia'), + 'ISR Withholding': 'Retención de ISR', + 'Selective Consumption Tax (ISC)': ( + 'Impuesto Selectivo al Consumo (ISC)'), + 'INDOTEL Contribution (CDT)': ( + 'Contribución al Desarrollo de las Telecomunicaciones (CDT)'), + 'Statutory Tip': 'Propina legal', + 'Other Taxes': 'Otros impuestos', + } + for language in ['es', 'es_419']: + text = (MODULE_DIR / 'locale' / f'{language}.po').read_text( + encoding='utf-8') + with self.subTest(language=language): + for source, target in translations.items(): + self.assertIn(f'msgid "{source}"', text) + self.assertIn(f'msgstr "{target}"', text) + self.assertIn( + 'msgctxt "field:account.tax,tax_kind:"', text) + self.assertIn( + 'msgctxt "field:account.tax.template,tax_kind:"', text) + def test_spanish_chart_has_complete_parallel_identifiers(self): pairs = [ ('account_chart_do_en.xml', 'account_chart_do_es_419.xml'), diff --git a/tryton.cfg b/tryton.cfg index 1ce401a..1062b2c 100644 --- a/tryton.cfg +++ b/tryton.cfg @@ -1,5 +1,5 @@ [tryton] -version=8.0.4 +version=8.0.5 depends: account ir