Source: translate-toolkit Version: 3.13.3-1 Severity: normal User: debian-pyt...@lists.debian.org Usertags: python3.13
This package failed build from source when test-built against a version of python3-defaults that includes 3.13 as a supported version. To reproduce this issue, build against python3-defaults (python3-all-dev etc.) from Debian experimental. What's new in Python 3.13: https://docs.python.org/3.13/whatsnew/3.13.html Log snippet: =================================== FAILURES =================================== __________________________ TestPOFactory.test_bz2file __________________________ self = <tests.translate.storage.test_factory.TestPOFactory object at 0xffff9b2887c0> def test_bz2file(self): """Test that we can open a gzip file correctly.""" filename = os.path.join(self.testdir, self.filename + ".bz2") with BZ2File(filename, mode="wb") as bz2file: bz2file.write(self.file_content) > store = factory.getobject(filename) tests/translate/storage/test_factory.py:118: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ translate/storage/factory.py:237: in getobject store = storeclass.parsefile(storefile) translate/storage/base.py:935: in parsefile newstore._assignname() translate/storage/base.py:798: in _assignname filename = getattr(fileobj, "name", None) /usr/lib/python3.13/bz2.py:127: in name self._check_not_closed() _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <bz2.BZ2File object at 0xffff99f63010> def _check_not_closed(self): if self.closed: > raise ValueError("I/O operation on closed file") E ValueError: I/O operation on closed file /usr/lib/python3.13/_compression.py:14: ValueError ________________________ TestXliffFactory.test_bz2file _________________________ self = <tests.translate.storage.test_factory.TestXliffFactory object at 0xffff9b2888d0> def test_bz2file(self): """Test that we can open a gzip file correctly.""" filename = os.path.join(self.testdir, self.filename + ".bz2") with BZ2File(filename, mode="wb") as bz2file: bz2file.write(self.file_content) > store = factory.getobject(filename) tests/translate/storage/test_factory.py:118: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ translate/storage/factory.py:237: in getobject store = storeclass.parsefile(storefile) translate/storage/base.py:935: in parsefile newstore._assignname() translate/storage/base.py:798: in _assignname filename = getattr(fileobj, "name", None) /usr/lib/python3.13/bz2.py:127: in name self._check_not_closed() _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <bz2.BZ2File object at 0xffff99f63370> def _check_not_closed(self): if self.closed: > raise ValueError("I/O operation on closed file") E ValueError: I/O operation on closed file /usr/lib/python3.13/_compression.py:14: ValueError _______________________ TestPOXliffFactory.test_bz2file ________________________ self = <tests.translate.storage.test_factory.TestPOXliffFactory object at 0xffff9b288af0> def test_bz2file(self): """Test that we can open a gzip file correctly.""" filename = os.path.join(self.testdir, self.filename + ".bz2") with BZ2File(filename, mode="wb") as bz2file: bz2file.write(self.file_content) > store = factory.getobject(filename) tests/translate/storage/test_factory.py:118: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ translate/storage/factory.py:237: in getobject store = storeclass.parsefile(storefile) translate/storage/base.py:935: in parsefile newstore._assignname() translate/storage/base.py:798: in _assignname filename = getattr(fileobj, "name", None) /usr/lib/python3.13/bz2.py:127: in name self._check_not_closed() _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <bz2.BZ2File object at 0xffff99f60730> def _check_not_closed(self): if self.closed: > raise ValueError("I/O operation on closed file") E ValueError: I/O operation on closed file /usr/lib/python3.13/_compression.py:14: ValueError _______________________ TestWordfastFactory.test_bz2file _______________________ self = <tests.translate.storage.test_factory.TestWordfastFactory object at 0xffff9b288f30> def test_bz2file(self): """Test that we can open a gzip file correctly.""" filename = os.path.join(self.testdir, self.filename + ".bz2") with BZ2File(filename, mode="wb") as bz2file: bz2file.write(self.file_content) > store = factory.getobject(filename) tests/translate/storage/test_factory.py:118: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ translate/storage/factory.py:237: in getobject store = storeclass.parsefile(storefile) translate/storage/base.py:935: in parsefile newstore._assignname() translate/storage/base.py:798: in _assignname filename = getattr(fileobj, "name", None) /usr/lib/python3.13/bz2.py:127: in name self._check_not_closed() _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <bz2.BZ2File object at 0xffff9b91a890> def _check_not_closed(self): if self.closed: > raise ValueError("I/O operation on closed file") E ValueError: I/O operation on closed file /usr/lib/python3.13/_compression.py:14: ValueError =============================== warnings summary =============================== tests/translate/storage/test_cpo.py:15 Warning: Module 'translate.storage.cpo' was found, but when imported by pytest it raised: ImportError('gettext PO library not found') In pytest 9.1 this warning will become an error by default. You can fix the underlying problem, or alternatively overwrite this behavior and silence this warning by passing exc_type=ImportError explicitly. See https://docs.pytest.org/en/stable/deprecations.html#pytest-importorskip-default-behavior-regarding-importerror .pybuild/cpython3_3.13_translate/build/tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing .pybuild/cpython3_3.13_translate/build/tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey .pybuild/cpython3_3.13_translate/build/tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey .pybuild/cpython3_3.13_translate/build/tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing .pybuild/cpython3_3.13_translate/build/tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey .pybuild/cpython3_3.13_translate/build/tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey Warning: Could not find accesskey for key.accesskey .pybuild/cpython3_3.13_translate/build/tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey .pybuild/cpython3_3.13_translate/build/tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey Warning: Could not find accesskey for prop.accesskey .pybuild/cpython3_3.13_translate/build/tests/translate/convert/test_po2tmx.py: 26 warnings .pybuild/cpython3_3.13_translate/build/tests/translate/filters/test_pofilter.py: 13 warnings .pybuild/cpython3_3.13_translate/build/tests/translate/storage/test_tbx.py: 17 warnings .pybuild/cpython3_3.13_translate/build/tests/translate/storage/test_tmx.py: 24 warnings Warning: This search incorrectly ignores the root element, and will be fixed in a future version. If you rely on the current behaviour, change it to './/body' .pybuild/cpython3_3.13_translate/build/tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers .pybuild/cpython3_3.13_translate/build/tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers .pybuild/cpython3_3.13_translate/build/tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker .pybuild/cpython3_3.13_translate/build/tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker .pybuild/cpython3_3.13_translate/build/tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker .pybuild/cpython3_3.13_translate/build/tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source .pybuild/cpython3_3.13_translate/build/tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source .pybuild/cpython3_3.13_translate/build/tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source Warning: The 'u' type code is deprecated and will be removed in Python 3.16 .pybuild/cpython3_3.13_translate/build/tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting Warning: DTD parse error: <string>:1:36:FATAL:PARSER:ERR_ENTITY_NOT_FINISHED: xmlParseEntityDecl: entity test.me not terminated .pybuild/cpython3_3.13_translate/build/tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting Warning: DTD file '' does not validate -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html --------------------------- snapshot report summary ---------------------------- 23 snapshots passed. =========================== short test summary info ============================ SKIPPED [1] tests/translate/storage/test_cpo.py:15: could not import 'translate.storage.cpo': gettext PO library not found SKIPPED [1] tests/translate/storage/test_fluent.py:29: could not import 'translate.storage.fluent': No module named 'fluent' SKIPPED [1] tests/translate/filters/test_checks.py:1429: Spell checking for af is not available XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence - Not Implemented XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence - Not Implemented XFAIL tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template - Need to review if we want this behaviour XFAIL tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template - Need to review if we want this behaviour XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change - Not implemented - review if this is even correct XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes - Not Implemented - needs review XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently - Not Implemented - review if this is even correct XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change - Not implemented - review if this is even correct XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes - Not Implemented - needs review XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently - Not Implemented - review if this is even correct XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates - This is invalid YAML document XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates - This is invalid YAML document XFAIL tests/translate/filters/test_checks.py::test_acceleratedvariables - Accelerated variables needs a better implementation XFAIL tests/translate/filters/test_checks.py::test_musttranslatewords - FIXME: All fails() tests are not working XFAIL tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time - Bug #3408 XFAIL tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags - Bug #3506 XFAIL tests/translate/lang/test_common.py::test_word_khmer - ZWS is not considered a space in Python 2.6+. Khmer should extend words() to include \u200b in addition to other word breakers. XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables - Test needs fixing, disabled for now XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables - Test needs fixing, disabled for now XFAIL tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases - Not Implemented XFAIL tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases - Not Implemented XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_comment_following - Not Implemented XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting - Not Implemented XFAIL tests/translate/storage/test_omegat.py::TestOtFile::test_extensions - This doesn't work, due to two store classes handling different extensions, but factory listing it as one supported file type XFAIL tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals - Not Implemented XFAIL tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo XFAIL tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis - Incompatible wrapping with gettext, see #5251 XFAIL tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove - removal not working in full page XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals - Not Implemented XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis - Incompatible wrapping with gettext, see #5251 XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment - Not sure if this can not be parsed gracefully XFAIL tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity - Not Implemented XFAIL tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde - Support commented out pending removal XFAIL tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs - Not Implemented XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change - Not Implemented XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes - Not Implemented XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently - Not Implemented XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change - Not Implemented XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes - Not Implemented XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently - Not Implemented = 4 failed, 3295 passed, 3 skipped, 41 xfailed, 99 warnings in 696.21s (0:11:36) = If required, the full build log is available here (for the next 30 days): https://debusine.debian.net/artifact/795239/ This bug has been filed at "normal" severity, as we haven't started the transition to add 3.13 as a supported version, yet. This will be raised to RC as soon as that happens, hopefully well before trixie. Thanks, Stefano