diff options
author | Peter Marko <peter.marko@siemens.com> | 2025-08-09 17:07:49 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2025-08-11 18:04:25 +0100 |
commit | 5ca542cadfe62e760d7f186f6d2b826e7ca38f11 (patch) | |
tree | 9ecd45673dbe4a7db2d1f8276e4cea752ecc41f5 | |
parent | 36cf5fc27b2222830aa1e4f0c23cbb0bd1838c2b (diff) | |
download | poky-5ca542cadfe62e760d7f186f6d2b826e7ca38f11.tar.gz |
python3: Upgrade 3.13.5 -> 3.13.6
Changelog: https://docs.python.org/3/whatsnew/changelog.html#python-3-13-6-final
Handles CVE-2025-8194 and 4 other vulnerabilities without CVE numbers.
Refresh patches via devtool.
(From OE-Core rev: 55b31ad3cf221dc07ef0ef1bc50c02f7c2e628ef)
Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
11 files changed, 33 insertions, 27 deletions
diff --git a/meta/recipes-devtools/python/python3/0001-Avoid-shebang-overflow-on-python-config.py.patch b/meta/recipes-devtools/python/python3/0001-Avoid-shebang-overflow-on-python-config.py.patch index 81a613c151..eaf5ea5049 100644 --- a/meta/recipes-devtools/python/python3/0001-Avoid-shebang-overflow-on-python-config.py.patch +++ b/meta/recipes-devtools/python/python3/0001-Avoid-shebang-overflow-on-python-config.py.patch | |||
@@ -19,7 +19,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in | |||
19 | index 9ec3a71..f7d5382 100644 | 19 | index 9ec3a71..f7d5382 100644 |
20 | --- a/Makefile.pre.in | 20 | --- a/Makefile.pre.in |
21 | +++ b/Makefile.pre.in | 21 | +++ b/Makefile.pre.in |
22 | @@ -2578,6 +2578,8 @@ python-config: $(srcdir)/Misc/python-config.in Misc/python-config.sh | 22 | @@ -2585,6 +2585,8 @@ python-config: $(srcdir)/Misc/python-config.in Misc/python-config.sh |
23 | @ # Substitution happens here, as the completely-expanded BINDIR | 23 | @ # Substitution happens here, as the completely-expanded BINDIR |
24 | @ # is not available in configure | 24 | @ # is not available in configure |
25 | sed -e "s,@EXENAME@,$(EXENAME)," < $(srcdir)/Misc/python-config.in >python-config.py | 25 | sed -e "s,@EXENAME@,$(EXENAME)," < $(srcdir)/Misc/python-config.in >python-config.py |
diff --git a/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch b/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch index ca72ebc899..ffdf9affd9 100644 --- a/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch +++ b/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch | |||
@@ -17,7 +17,7 @@ diff --git a/Lib/sysconfig/__init__.py b/Lib/sysconfig/__init__.py | |||
17 | index f8e1c7d..0882526 100644 | 17 | index f8e1c7d..0882526 100644 |
18 | --- a/Lib/sysconfig/__init__.py | 18 | --- a/Lib/sysconfig/__init__.py |
19 | +++ b/Lib/sysconfig/__init__.py | 19 | +++ b/Lib/sysconfig/__init__.py |
20 | @@ -494,6 +494,11 @@ def _init_config_vars(): | 20 | @@ -501,6 +501,11 @@ def _init_config_vars(): |
21 | _CONFIG_VARS['VPATH'] = sys._vpath | 21 | _CONFIG_VARS['VPATH'] = sys._vpath |
22 | if os.name == 'posix': | 22 | if os.name == 'posix': |
23 | _init_posix(_CONFIG_VARS) | 23 | _init_posix(_CONFIG_VARS) |
diff --git a/meta/recipes-devtools/python/python3/0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch b/meta/recipes-devtools/python/python3/0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch index c8537db1fd..8fa794b5e7 100644 --- a/meta/recipes-devtools/python/python3/0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch +++ b/meta/recipes-devtools/python/python3/0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch | |||
@@ -26,7 +26,7 @@ diff --git a/Lib/test/_test_multiprocessing.py b/Lib/test/_test_multiprocessing. | |||
26 | index 5dae370..23eb971 100644 | 26 | index 5dae370..23eb971 100644 |
27 | --- a/Lib/test/_test_multiprocessing.py | 27 | --- a/Lib/test/_test_multiprocessing.py |
28 | +++ b/Lib/test/_test_multiprocessing.py | 28 | +++ b/Lib/test/_test_multiprocessing.py |
29 | @@ -688,6 +688,7 @@ class _TestProcess(BaseTestCase): | 29 | @@ -701,6 +701,7 @@ class _TestProcess(BaseTestCase): |
30 | close_queue(q) | 30 | close_queue(q) |
31 | 31 | ||
32 | @support.requires_resource('walltime') | 32 | @support.requires_resource('walltime') |
@@ -34,7 +34,7 @@ index 5dae370..23eb971 100644 | |||
34 | def test_many_processes(self): | 34 | def test_many_processes(self): |
35 | if self.TYPE == 'threads': | 35 | if self.TYPE == 'threads': |
36 | self.skipTest('test not appropriate for {}'.format(self.TYPE)) | 36 | self.skipTest('test not appropriate for {}'.format(self.TYPE)) |
37 | @@ -2211,6 +2212,7 @@ class _TestBarrier(BaseTestCase): | 37 | @@ -2232,6 +2233,7 @@ class _TestBarrier(BaseTestCase): |
38 | except threading.BrokenBarrierError: | 38 | except threading.BrokenBarrierError: |
39 | results.append(True) | 39 | results.append(True) |
40 | 40 | ||
@@ -42,7 +42,7 @@ index 5dae370..23eb971 100644 | |||
42 | def test_timeout(self): | 42 | def test_timeout(self): |
43 | """ | 43 | """ |
44 | Test wait(timeout) | 44 | Test wait(timeout) |
45 | @@ -5299,6 +5301,7 @@ class TestWait(unittest.TestCase): | 45 | @@ -5320,6 +5322,7 @@ class TestWait(unittest.TestCase): |
46 | time.sleep(period) | 46 | time.sleep(period) |
47 | 47 | ||
48 | @support.requires_resource('walltime') | 48 | @support.requires_resource('walltime') |
diff --git a/meta/recipes-devtools/python/python3/0001-skip-no_stdout_fileno-test-due-to-load-variability.patch b/meta/recipes-devtools/python/python3/0001-skip-no_stdout_fileno-test-due-to-load-variability.patch index ea103bc834..9bc8b091cc 100644 --- a/meta/recipes-devtools/python/python3/0001-skip-no_stdout_fileno-test-due-to-load-variability.patch +++ b/meta/recipes-devtools/python/python3/0001-skip-no_stdout_fileno-test-due-to-load-variability.patch | |||
@@ -19,7 +19,7 @@ diff --git a/Lib/test/test_builtin.py b/Lib/test/test_builtin.py | |||
19 | index c5394de..ed17fb6 100644 | 19 | index c5394de..ed17fb6 100644 |
20 | --- a/Lib/test/test_builtin.py | 20 | --- a/Lib/test/test_builtin.py |
21 | +++ b/Lib/test/test_builtin.py | 21 | +++ b/Lib/test/test_builtin.py |
22 | @@ -2435,6 +2435,7 @@ class PtyTests(unittest.TestCase): | 22 | @@ -2474,6 +2474,7 @@ class PtyTests(unittest.TestCase): |
23 | "byte 0xe9 in position 4: ordinal not in " | 23 | "byte 0xe9 in position 4: ordinal not in " |
24 | "range(128)") | 24 | "range(128)") |
25 | 25 | ||
diff --git a/meta/recipes-devtools/python/python3/0001-test_active_children-skip-problematic-test.patch b/meta/recipes-devtools/python/python3/0001-test_active_children-skip-problematic-test.patch index 5f60c60b5b..08ac5861b3 100644 --- a/meta/recipes-devtools/python/python3/0001-test_active_children-skip-problematic-test.patch +++ b/meta/recipes-devtools/python/python3/0001-test_active_children-skip-problematic-test.patch | |||
@@ -17,7 +17,7 @@ diff --git a/Lib/test/_test_multiprocessing.py b/Lib/test/_test_multiprocessing. | |||
17 | index 23eb971..b1295b2 100644 | 17 | index 23eb971..b1295b2 100644 |
18 | --- a/Lib/test/_test_multiprocessing.py | 18 | --- a/Lib/test/_test_multiprocessing.py |
19 | +++ b/Lib/test/_test_multiprocessing.py | 19 | +++ b/Lib/test/_test_multiprocessing.py |
20 | @@ -585,6 +585,7 @@ class _TestProcess(BaseTestCase): | 20 | @@ -594,6 +594,7 @@ class _TestProcess(BaseTestCase): |
21 | self.assertTrue(type(cpus) is int) | 21 | self.assertTrue(type(cpus) is int) |
22 | self.assertTrue(cpus >= 1) | 22 | self.assertTrue(cpus >= 1) |
23 | 23 | ||
diff --git a/meta/recipes-devtools/python/python3/0001-test_locale.py-correct-the-test-output-format.patch b/meta/recipes-devtools/python/python3/0001-test_locale.py-correct-the-test-output-format.patch index 2cca004b57..f672ee7ad7 100644 --- a/meta/recipes-devtools/python/python3/0001-test_locale.py-correct-the-test-output-format.patch +++ b/meta/recipes-devtools/python/python3/0001-test_locale.py-correct-the-test-output-format.patch | |||
@@ -34,7 +34,7 @@ diff --git a/Lib/test/test_locale.py b/Lib/test/test_locale.py | |||
34 | index da4bd79..fd9e67d 100644 | 34 | index da4bd79..fd9e67d 100644 |
35 | --- a/Lib/test/test_locale.py | 35 | --- a/Lib/test/test_locale.py |
36 | +++ b/Lib/test/test_locale.py | 36 | +++ b/Lib/test/test_locale.py |
37 | @@ -572,7 +572,7 @@ class TestMiscellaneous(unittest.TestCase): | 37 | @@ -576,7 +576,7 @@ class TestMiscellaneous(unittest.TestCase): |
38 | self.skipTest('test needs Turkish locale') | 38 | self.skipTest('test needs Turkish locale') |
39 | loc = locale.getlocale(locale.LC_CTYPE) | 39 | loc = locale.getlocale(locale.LC_CTYPE) |
40 | if verbose: | 40 | if verbose: |
diff --git a/meta/recipes-devtools/python/python3/0001-test_readline-skip-limited-history-test.patch b/meta/recipes-devtools/python/python3/0001-test_readline-skip-limited-history-test.patch index 862a7f5ea7..a619d51c10 100644 --- a/meta/recipes-devtools/python/python3/0001-test_readline-skip-limited-history-test.patch +++ b/meta/recipes-devtools/python/python3/0001-test_readline-skip-limited-history-test.patch | |||
@@ -13,12 +13,14 @@ Upstream-Status: Inappropriate [OE-specific] | |||
13 | 13 | ||
14 | Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com> | 14 | Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com> |
15 | --- | 15 | --- |
16 | Lib/test/test_readline.py | 2 ++ | 16 | Lib/test/test_readline.py | 3 +++ |
17 | 1 file changed, 2 insertions(+) | 17 | 1 file changed, 3 insertions(+) |
18 | 18 | ||
19 | diff --git a/Lib/test/test_readline.py b/Lib/test/test_readline.py | ||
20 | index 537a9fb..ddf0323 100644 | ||
19 | --- a/Lib/test/test_readline.py | 21 | --- a/Lib/test/test_readline.py |
20 | +++ b/Lib/test/test_readline.py | 22 | +++ b/Lib/test/test_readline.py |
21 | @@ -70,6 +70,7 @@ class TestHistoryManipulation (unittest. | 23 | @@ -71,6 +71,7 @@ class TestHistoryManipulation (unittest.TestCase): |
22 | 24 | ||
23 | @unittest.skipUnless(hasattr(readline, "append_history_file"), | 25 | @unittest.skipUnless(hasattr(readline, "append_history_file"), |
24 | "append_history not available") | 26 | "append_history not available") |
@@ -26,7 +28,7 @@ Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com> | |||
26 | def test_write_read_append(self): | 28 | def test_write_read_append(self): |
27 | hfile = tempfile.NamedTemporaryFile(delete=False) | 29 | hfile = tempfile.NamedTemporaryFile(delete=False) |
28 | hfile.close() | 30 | hfile.close() |
29 | @@ -141,6 +142,7 @@ class TestHistoryManipulation (unittest. | 31 | @@ -142,6 +143,7 @@ class TestHistoryManipulation (unittest.TestCase): |
30 | self.assertEqual(readline.get_history_item(1), "entrée 1") | 32 | self.assertEqual(readline.get_history_item(1), "entrée 1") |
31 | self.assertEqual(readline.get_history_item(2), "entrée 22") | 33 | self.assertEqual(readline.get_history_item(2), "entrée 22") |
32 | 34 | ||
@@ -34,7 +36,7 @@ Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com> | |||
34 | def test_write_read_limited_history(self): | 36 | def test_write_read_limited_history(self): |
35 | previous_length = readline.get_history_length() | 37 | previous_length = readline.get_history_length() |
36 | self.addCleanup(readline.set_history_length, previous_length) | 38 | self.addCleanup(readline.set_history_length, previous_length) |
37 | @@ -382,6 +384,7 @@ readline.write_history_file(history_file | 39 | @@ -390,6 +392,7 @@ readline.write_history_file(history_file) |
38 | self.assertIn(b"done", output) | 40 | self.assertIn(b"done", output) |
39 | 41 | ||
40 | 42 | ||
diff --git a/meta/recipes-devtools/python/python3/0001-test_storlines-skip-due-to-load-variability.patch b/meta/recipes-devtools/python/python3/0001-test_storlines-skip-due-to-load-variability.patch index b4f873fd72..b452c6556f 100644 --- a/meta/recipes-devtools/python/python3/0001-test_storlines-skip-due-to-load-variability.patch +++ b/meta/recipes-devtools/python/python3/0001-test_storlines-skip-due-to-load-variability.patch | |||
@@ -19,7 +19,7 @@ diff --git a/Lib/test/test_ftplib.py b/Lib/test/test_ftplib.py | |||
19 | index bed0e6d..36602be 100644 | 19 | index bed0e6d..36602be 100644 |
20 | --- a/Lib/test/test_ftplib.py | 20 | --- a/Lib/test/test_ftplib.py |
21 | +++ b/Lib/test/test_ftplib.py | 21 | +++ b/Lib/test/test_ftplib.py |
22 | @@ -627,6 +627,7 @@ class TestFTPClass(TestCase): | 22 | @@ -630,6 +630,7 @@ class TestFTPClass(TestCase): |
23 | self.client.storbinary('stor', f, rest=r) | 23 | self.client.storbinary('stor', f, rest=r) |
24 | self.assertEqual(self.server.handler_instance.rest, str(r)) | 24 | self.assertEqual(self.server.handler_instance.rest, str(r)) |
25 | 25 | ||
diff --git a/meta/recipes-devtools/python/python3/makerace.patch b/meta/recipes-devtools/python/python3/makerace.patch index b115a6fa65..bf73135e09 100644 --- a/meta/recipes-devtools/python/python3/makerace.patch +++ b/meta/recipes-devtools/python/python3/makerace.patch | |||
@@ -20,7 +20,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in | |||
20 | index be1b9ea..9ec3a71 100644 | 20 | index be1b9ea..9ec3a71 100644 |
21 | --- a/Makefile.pre.in | 21 | --- a/Makefile.pre.in |
22 | +++ b/Makefile.pre.in | 22 | +++ b/Makefile.pre.in |
23 | @@ -2485,7 +2485,7 @@ COMPILEALL_OPTS=-j0 | 23 | @@ -2492,7 +2492,7 @@ COMPILEALL_OPTS=-j0 |
24 | TEST_MODULES=@TEST_MODULES@ | 24 | TEST_MODULES=@TEST_MODULES@ |
25 | 25 | ||
26 | .PHONY: libinstall | 26 | .PHONY: libinstall |
diff --git a/meta/recipes-devtools/python/python3/valid-dists.patch b/meta/recipes-devtools/python/python3/valid-dists.patch index 1b2c078c21..38b6ebc5cb 100644 --- a/meta/recipes-devtools/python/python3/valid-dists.patch +++ b/meta/recipes-devtools/python/python3/valid-dists.patch | |||
@@ -8,12 +8,16 @@ Closes python/importlib_metadata#489 | |||
8 | 8 | ||
9 | Upstream-Status: Backport [https://github.com/python/importlib_metadata/commit/a65c29adc027b3615154cab73aaedd58a6aa23da] | 9 | Upstream-Status: Backport [https://github.com/python/importlib_metadata/commit/a65c29adc027b3615154cab73aaedd58a6aa23da] |
10 | Signed-off-by: Ross Burton <ross.burton@arm.com> | 10 | Signed-off-by: Ross Burton <ross.burton@arm.com> |
11 | --- | ||
12 | Lib/importlib/metadata/__init__.py | 14 +++- | ||
13 | Lib/importlib/metadata/_itertools.py | 98 ++++++++++++++++++++++++++++ | ||
14 | 2 files changed, 110 insertions(+), 2 deletions(-) | ||
11 | 15 | ||
12 | diff --git i/Lib/importlib/metadata/__init__.py w/Lib/importlib/metadata/__init__.py | 16 | diff --git a/Lib/importlib/metadata/__init__.py b/Lib/importlib/metadata/__init__.py |
13 | index 8ce62dd864f..085378caabc 100644 | 17 | index 8ce62dd..085378c 100644 |
14 | --- i/Lib/importlib/metadata/__init__.py | 18 | --- a/Lib/importlib/metadata/__init__.py |
15 | +++ w/Lib/importlib/metadata/__init__.py | 19 | +++ b/Lib/importlib/metadata/__init__.py |
16 | @@ -21,7 +21,7 @@ | 20 | @@ -21,7 +21,7 @@ import collections |
17 | from . import _meta | 21 | from . import _meta |
18 | from ._collections import FreezableDefaultDict, Pair | 22 | from ._collections import FreezableDefaultDict, Pair |
19 | from ._functools import method_cache, pass_none | 23 | from ._functools import method_cache, pass_none |
@@ -22,7 +26,7 @@ index 8ce62dd864f..085378caabc 100644 | |||
22 | from ._meta import PackageMetadata, SimplePath | 26 | from ._meta import PackageMetadata, SimplePath |
23 | 27 | ||
24 | from contextlib import suppress | 28 | from contextlib import suppress |
25 | @@ -404,7 +404,7 @@ def from_name(cls, name: str) -> Distribution: | 29 | @@ -404,7 +404,7 @@ class Distribution(DeprecatedNonAbstract): |
26 | if not name: | 30 | if not name: |
27 | raise ValueError("A distribution name is required.") | 31 | raise ValueError("A distribution name is required.") |
28 | try: | 32 | try: |
@@ -31,7 +35,7 @@ index 8ce62dd864f..085378caabc 100644 | |||
31 | except StopIteration: | 35 | except StopIteration: |
32 | raise PackageNotFoundError(name) | 36 | raise PackageNotFoundError(name) |
33 | 37 | ||
34 | @@ -428,6 +428,16 @@ def discover( | 38 | @@ -428,6 +428,16 @@ class Distribution(DeprecatedNonAbstract): |
35 | resolver(context) for resolver in cls._discover_resolvers() | 39 | resolver(context) for resolver in cls._discover_resolvers() |
36 | ) | 40 | ) |
37 | 41 | ||
@@ -48,10 +52,10 @@ index 8ce62dd864f..085378caabc 100644 | |||
48 | @staticmethod | 52 | @staticmethod |
49 | def at(path: str | os.PathLike[str]) -> Distribution: | 53 | def at(path: str | os.PathLike[str]) -> Distribution: |
50 | """Return a Distribution for the indicated metadata path. | 54 | """Return a Distribution for the indicated metadata path. |
51 | diff --git i/Lib/importlib/metadata/_itertools.py w/Lib/importlib/metadata/_itertools.py | 55 | diff --git a/Lib/importlib/metadata/_itertools.py b/Lib/importlib/metadata/_itertools.py |
52 | index d4ca9b9140e..79d37198ce7 100644 | 56 | index d4ca9b9..79d3719 100644 |
53 | --- i/Lib/importlib/metadata/_itertools.py | 57 | --- a/Lib/importlib/metadata/_itertools.py |
54 | +++ w/Lib/importlib/metadata/_itertools.py | 58 | +++ b/Lib/importlib/metadata/_itertools.py |
55 | @@ -1,3 +1,4 @@ | 59 | @@ -1,3 +1,4 @@ |
56 | +from collections import defaultdict, deque | 60 | +from collections import defaultdict, deque |
57 | from itertools import filterfalse | 61 | from itertools import filterfalse |
diff --git a/meta/recipes-devtools/python/python3_3.13.5.bb b/meta/recipes-devtools/python/python3_3.13.6.bb index dde03dc0e7..184d71bdce 100644 --- a/meta/recipes-devtools/python/python3_3.13.5.bb +++ b/meta/recipes-devtools/python/python3_3.13.6.bb | |||
@@ -36,7 +36,7 @@ SRC_URI:append:class-native = " \ | |||
36 | file://0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch \ | 36 | file://0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch \ |
37 | " | 37 | " |
38 | 38 | ||
39 | SRC_URI[sha256sum] = "93e583f243454e6e9e4588ca2c2662206ad961659863277afcdb96801647d640" | 39 | SRC_URI[sha256sum] = "17ba5508819d8736a14fbfc47d36e184946a877851b2e9c4b6c43acb44a3b104" |
40 | 40 | ||
41 | # exclude pre-releases for both python 2.x and 3.x | 41 | # exclude pre-releases for both python 2.x and 3.x |
42 | UPSTREAM_CHECK_REGEX = "[Pp]ython-(?P<pver>\d+(\.\d+)+).tar" | 42 | UPSTREAM_CHECK_REGEX = "[Pp]ython-(?P<pver>\d+(\.\d+)+).tar" |