Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-et_xmlfile for openSUSE:Factory checked in at 2026-10-12 22:05:47 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-et_xmlfile (Old) and /work/SRC/openSUSE:Factory/.python-et_xmlfile.new.3698736 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-et_xmlfile" Mon Oct 12 22:05:47 2026 rev:8 rq:1384138 version:2.0.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-et_xmlfile/python-et_xmlfile.changes 2025-11-19 15:04:58.364128847 +0100 +++ /work/SRC/openSUSE:Factory/.python-et_xmlfile.new.3698736/python-et_xmlfile.changes 2026-10-12 22:06:13.691832562 +0200 @@ -1,0 +2,6 @@ +Mon Oct 12 00:45:57 UTC 2026 - Steve Kowalik <[email protected]> + +- Add patch support-python315.patch: + * Support Python 3.15 changes. + +------------------------------------------------------------------- New: ---- support-python315.patch ----------(New B)---------- New: - Add patch support-python315.patch: * Support Python 3.15 changes. ----------(New E)---------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-et_xmlfile.spec ++++++ --- /var/tmp/diff_new_pack.y0ixxc/_old 2026-10-12 22:06:14.368860850 +0200 +++ /var/tmp/diff_new_pack.y0ixxc/_new 2026-10-12 22:06:14.370860934 +0200 @@ -1,7 +1,7 @@ # # spec file for package python-et_xmlfile # -# Copyright (c) 2025 SUSE LLC and contributors +# Copyright (c) 2026 SUSE LLC and contributors # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -26,6 +26,8 @@ Source0: https://foss.heptapod.net/openpyxl/et_xmlfile/-/archive/%{version}/et_xmlfile-%{version}.tar.gz # PATCH-FIX-UPSTREAM https://foss.heptapod.net/openpyxl/et_xmlfile/-/merge_requests/4 Patch0: support-python314.patch +# PATCH-FIX-OPENSUSE Support Python 3.15 changes +Patch1: support-python315.patch BuildRequires: %{python_module lxml} BuildRequires: %{python_module pip} BuildRequires: %{python_module pytest} ++++++ support-python315.patch ++++++ Index: et_xmlfile-2.0.0/et_xmlfile/tests/_vendor/test/test_xml_etree.py =================================================================== --- et_xmlfile-2.0.0.orig/et_xmlfile/tests/_vendor/test/test_xml_etree.py +++ et_xmlfile-2.0.0/et_xmlfile/tests/_vendor/test/test_xml_etree.py @@ -372,8 +372,10 @@ class ElementTreeTest(unittest.TestCase) self.serialize_check(element, '<tag key="value"><subtag /></tag>') # 4 element.remove(subelement) self.serialize_check(element, '<tag key="value" />') # 5 - with self.assertRaisesRegex(ValueError, - r'Element\.remove\(.+\): element not found'): + msg_regex = r'Element\.remove\(.+\): element not found' + if sys.version_info[:2] >= (3, 15): + msg_regex = r"<Element 'subtag'.* not in <Element 'tag'" + with self.assertRaisesRegex(ValueError, msg_regex): element.remove(subelement) self.serialize_check(element, '<tag key="value" />') # 6 element[0:0] = [subelement, subelement, subelement] @@ -699,12 +701,14 @@ class ElementTreeTest(unittest.TestCase) next(it) self.assertEqual(str(cm.exception), 'junk after document element: line 1, column 12') + it.close() del cm, it # Not exhausting the iterator still closes the resource (bpo-43292) - with warnings_helper.check_no_resource_warning(self): - it = iterparse(SIMPLE_XMLFILE) - del it + if sys.version_info[:2] < (3, 15): + with warnings_helper.check_no_resource_warning(self): + it = iterparse(SIMPLE_XMLFILE) + del it with warnings_helper.check_no_resource_warning(self): it = iterparse(SIMPLE_XMLFILE) @@ -714,6 +718,7 @@ class ElementTreeTest(unittest.TestCase) with warnings_helper.check_no_resource_warning(self): it = iterparse(SIMPLE_XMLFILE) action, elem = next(it) + it.close() self.assertEqual((action, elem.tag), ('end', 'element')) del it, elem @@ -4357,9 +4362,12 @@ class KeywordArgsTest(unittest.TestCase) e2 = ET.SubElement(elements[0], 'foobar', attrib={'key1': 'value1'}) self.assertEqual(e2.attrib['key1'], 'value1') - with self.assertRaisesRegex(TypeError, 'must be dict, not str'): + message = 'must be dict, not str' + if sys.version_info[:2] >= (3, 15): + message = 'must be dict or frozendict, not str' + with self.assertRaisesRegex(TypeError, message): ET.Element('a', "I'm not a dict") - with self.assertRaisesRegex(TypeError, 'must be dict, not str'): + with self.assertRaisesRegex(TypeError, message): ET.Element('a', attrib="I'm not a dict") # --------------------------------------------------------------------
