- Update to 3.10.11:
- Core and Builtins - gh-102416: Do not memoize incorrectly automatically generated loop rules in the parser. Patch by Pablo Galindo. - gh-102356: Fix a bug that caused a crash when deallocating deeply nested filter objects. Patch by Marta Gómez Macías. - gh-102397: Fix segfault from race condition in signal handling during garbage collection. Patch by Kumar Aditya. - gh-102126: Fix deadlock at shutdown when clearing thread states if any finalizer tries to acquire the runtime head lock. Patch by Kumar Aditya. - gh-102027: Fix SSE2 and SSE3 detection in _blake2 internal module. Patch by Max Bachmann. - gh-101967: Fix possible segfault in positional_only_passed_as_keyword function, when new list created. - gh-101765: Fix SystemError / segmentation fault in iter __reduce__ when internal access of builtins.__dict__ keys mutates the iter object. - Library - gh-102947: Improve traceback when dataclasses.fields() is called on a non-dataclass. Patch by Alex Waygood - gh-101979: Fix a bug where parentheses in the metavar argument to argparse.ArgumentParser.add_argument() were dropped. Patch by Yeojin Kim. - gh-102179: Fix os.dup2() error message for negative fds. - gh-101961: For the binary mode, fileinput.hookcompressed() doesn’t set the encoding value even if the value is None. Patch by Gihwan Kim. - gh-101936: The default value of fp becomes io.BytesIO OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:Factory/python310?expand=0&rev=85
This commit is contained in:
parent
0a6bd2edcb
commit
e8a35797e6
@ -1513,7 +1513,7 @@ Content-Transfer-Encoding: 8bit
|
|||||||
with open(os.path.join(TEMPDIR, "ustar/regtype"), "rb") as fobj:
|
with open(os.path.join(TEMPDIR, "ustar/regtype"), "rb") as fobj:
|
||||||
data = fobj.read()
|
data = fobj.read()
|
||||||
|
|
||||||
@@ -454,7 +460,7 @@ class CommonReadTest(ReadTest):
|
@@ -455,7 +461,7 @@ class CommonReadTest(ReadTest):
|
||||||
t = tar.next()
|
t = tar.next()
|
||||||
|
|
||||||
with self.assertRaisesRegex(tarfile.ReadError, "unexpected end of data"):
|
with self.assertRaisesRegex(tarfile.ReadError, "unexpected end of data"):
|
||||||
@ -1522,7 +1522,7 @@ Content-Transfer-Encoding: 8bit
|
|||||||
|
|
||||||
with self.assertRaisesRegex(tarfile.ReadError, "unexpected end of data"):
|
with self.assertRaisesRegex(tarfile.ReadError, "unexpected end of data"):
|
||||||
tar.extractfile(t).read()
|
tar.extractfile(t).read()
|
||||||
@@ -609,16 +615,16 @@ class MiscReadTestBase(CommonReadTest):
|
@@ -610,16 +616,16 @@ class MiscReadTestBase(CommonReadTest):
|
||||||
def test_extract_hardlink(self):
|
def test_extract_hardlink(self):
|
||||||
# Test hardlink extraction (e.g. bug #857297).
|
# Test hardlink extraction (e.g. bug #857297).
|
||||||
with tarfile.open(tarname, errorlevel=1, encoding="iso8859-1") as tar:
|
with tarfile.open(tarname, errorlevel=1, encoding="iso8859-1") as tar:
|
||||||
@ -1542,7 +1542,7 @@ Content-Transfer-Encoding: 8bit
|
|||||||
self.addCleanup(os_helper.unlink, os.path.join(TEMPDIR, "ustar/symtype"))
|
self.addCleanup(os_helper.unlink, os.path.join(TEMPDIR, "ustar/symtype"))
|
||||||
with open(os.path.join(TEMPDIR, "ustar/symtype"), "rb") as f:
|
with open(os.path.join(TEMPDIR, "ustar/symtype"), "rb") as f:
|
||||||
data = f.read()
|
data = f.read()
|
||||||
@@ -632,13 +638,14 @@ class MiscReadTestBase(CommonReadTest):
|
@@ -633,13 +639,14 @@ class MiscReadTestBase(CommonReadTest):
|
||||||
os.mkdir(DIR)
|
os.mkdir(DIR)
|
||||||
try:
|
try:
|
||||||
directories = [t for t in tar if t.isdir()]
|
directories = [t for t in tar if t.isdir()]
|
||||||
@ -1559,7 +1559,7 @@ Content-Transfer-Encoding: 8bit
|
|||||||
def format_mtime(mtime):
|
def format_mtime(mtime):
|
||||||
if isinstance(mtime, float):
|
if isinstance(mtime, float):
|
||||||
return "{} ({})".format(mtime, mtime.hex())
|
return "{} ({})".format(mtime, mtime.hex())
|
||||||
@@ -661,7 +668,7 @@ class MiscReadTestBase(CommonReadTest):
|
@@ -662,7 +669,7 @@ class MiscReadTestBase(CommonReadTest):
|
||||||
try:
|
try:
|
||||||
with tarfile.open(tarname, encoding="iso8859-1") as tar:
|
with tarfile.open(tarname, encoding="iso8859-1") as tar:
|
||||||
tarinfo = tar.getmember(dirtype)
|
tarinfo = tar.getmember(dirtype)
|
||||||
@ -1568,7 +1568,7 @@ Content-Transfer-Encoding: 8bit
|
|||||||
extracted = os.path.join(DIR, dirtype)
|
extracted = os.path.join(DIR, dirtype)
|
||||||
self.assertEqual(os.path.getmtime(extracted), tarinfo.mtime)
|
self.assertEqual(os.path.getmtime(extracted), tarinfo.mtime)
|
||||||
if sys.platform != "win32":
|
if sys.platform != "win32":
|
||||||
@@ -674,7 +681,7 @@ class MiscReadTestBase(CommonReadTest):
|
@@ -675,7 +682,7 @@ class MiscReadTestBase(CommonReadTest):
|
||||||
with os_helper.temp_dir(DIR), \
|
with os_helper.temp_dir(DIR), \
|
||||||
tarfile.open(tarname, encoding="iso8859-1") as tar:
|
tarfile.open(tarname, encoding="iso8859-1") as tar:
|
||||||
directories = [t for t in tar if t.isdir()]
|
directories = [t for t in tar if t.isdir()]
|
||||||
@ -1577,7 +1577,7 @@ Content-Transfer-Encoding: 8bit
|
|||||||
for tarinfo in directories:
|
for tarinfo in directories:
|
||||||
path = DIR / tarinfo.name
|
path = DIR / tarinfo.name
|
||||||
self.assertEqual(os.path.getmtime(path), tarinfo.mtime)
|
self.assertEqual(os.path.getmtime(path), tarinfo.mtime)
|
||||||
@@ -685,7 +692,7 @@ class MiscReadTestBase(CommonReadTest):
|
@@ -686,7 +693,7 @@ class MiscReadTestBase(CommonReadTest):
|
||||||
with os_helper.temp_dir(DIR), \
|
with os_helper.temp_dir(DIR), \
|
||||||
tarfile.open(tarname, encoding="iso8859-1") as tar:
|
tarfile.open(tarname, encoding="iso8859-1") as tar:
|
||||||
tarinfo = tar.getmember(dirtype)
|
tarinfo = tar.getmember(dirtype)
|
||||||
@ -1586,7 +1586,7 @@ Content-Transfer-Encoding: 8bit
|
|||||||
extracted = DIR / dirtype
|
extracted = DIR / dirtype
|
||||||
self.assertEqual(os.path.getmtime(extracted), tarinfo.mtime)
|
self.assertEqual(os.path.getmtime(extracted), tarinfo.mtime)
|
||||||
|
|
||||||
@@ -1041,7 +1048,7 @@ class GNUReadTest(LongnameTest, ReadTest
|
@@ -1042,7 +1049,7 @@ class GNUReadTest(LongnameTest, ReadTest
|
||||||
# an all platforms, and after that a test that will work only on
|
# an all platforms, and after that a test that will work only on
|
||||||
# platforms/filesystems that prove to support sparse files.
|
# platforms/filesystems that prove to support sparse files.
|
||||||
def _test_sparse_file(self, name):
|
def _test_sparse_file(self, name):
|
||||||
@ -1595,7 +1595,7 @@ Content-Transfer-Encoding: 8bit
|
|||||||
filename = os.path.join(TEMPDIR, name)
|
filename = os.path.join(TEMPDIR, name)
|
||||||
with open(filename, "rb") as fobj:
|
with open(filename, "rb") as fobj:
|
||||||
data = fobj.read()
|
data = fobj.read()
|
||||||
@@ -1408,7 +1415,8 @@ class WriteTest(WriteTestBase, unittest.
|
@@ -1409,7 +1416,8 @@ class WriteTest(WriteTestBase, unittest.
|
||||||
with tarfile.open(temparchive, errorlevel=2) as tar:
|
with tarfile.open(temparchive, errorlevel=2) as tar:
|
||||||
# this should not raise OSError: [Errno 17] File exists
|
# this should not raise OSError: [Errno 17] File exists
|
||||||
try:
|
try:
|
||||||
@ -1605,7 +1605,7 @@ Content-Transfer-Encoding: 8bit
|
|||||||
except OSError:
|
except OSError:
|
||||||
self.fail("extractall failed with symlinked files")
|
self.fail("extractall failed with symlinked files")
|
||||||
finally:
|
finally:
|
||||||
@@ -2440,6 +2448,15 @@ class CommandLineTest(unittest.TestCase)
|
@@ -2441,6 +2449,15 @@ class CommandLineTest(unittest.TestCase)
|
||||||
for tardata in files:
|
for tardata in files:
|
||||||
tf.add(tardata, arcname=os.path.basename(tardata))
|
tf.add(tardata, arcname=os.path.basename(tardata))
|
||||||
|
|
||||||
@ -1621,7 +1621,7 @@ Content-Transfer-Encoding: 8bit
|
|||||||
def test_bad_use(self):
|
def test_bad_use(self):
|
||||||
rc, out, err = self.tarfilecmd_failure()
|
rc, out, err = self.tarfilecmd_failure()
|
||||||
self.assertEqual(out, b'')
|
self.assertEqual(out, b'')
|
||||||
@@ -2596,6 +2613,25 @@ class CommandLineTest(unittest.TestCase)
|
@@ -2597,6 +2614,25 @@ class CommandLineTest(unittest.TestCase)
|
||||||
finally:
|
finally:
|
||||||
os_helper.rmtree(tarextdir)
|
os_helper.rmtree(tarextdir)
|
||||||
|
|
||||||
@ -1647,7 +1647,7 @@ Content-Transfer-Encoding: 8bit
|
|||||||
def test_extract_command_different_directory(self):
|
def test_extract_command_different_directory(self):
|
||||||
self.make_simple_tarfile(tmpname)
|
self.make_simple_tarfile(tmpname)
|
||||||
try:
|
try:
|
||||||
@@ -2679,7 +2715,7 @@ class LinkEmulationTest(ReadTest, unitte
|
@@ -2680,7 +2716,7 @@ class LinkEmulationTest(ReadTest, unitte
|
||||||
# symbolic or hard links tarfile tries to extract these types of members
|
# symbolic or hard links tarfile tries to extract these types of members
|
||||||
# as the regular files they point to.
|
# as the regular files they point to.
|
||||||
def _test_link_extraction(self, name):
|
def _test_link_extraction(self, name):
|
||||||
@ -1656,7 +1656,7 @@ Content-Transfer-Encoding: 8bit
|
|||||||
with open(os.path.join(TEMPDIR, name), "rb") as f:
|
with open(os.path.join(TEMPDIR, name), "rb") as f:
|
||||||
data = f.read()
|
data = f.read()
|
||||||
self.assertEqual(sha256sum(data), sha256_regtype)
|
self.assertEqual(sha256sum(data), sha256_regtype)
|
||||||
@@ -2811,8 +2847,10 @@ class NumericOwnerTest(unittest.TestCase
|
@@ -2812,8 +2848,10 @@ class NumericOwnerTest(unittest.TestCase
|
||||||
mock_chown):
|
mock_chown):
|
||||||
with self._setup_test(mock_geteuid) as (tarfl, filename_1, _,
|
with self._setup_test(mock_geteuid) as (tarfl, filename_1, _,
|
||||||
filename_2):
|
filename_2):
|
||||||
@ -1669,7 +1669,7 @@ Content-Transfer-Encoding: 8bit
|
|||||||
|
|
||||||
# convert to filesystem paths
|
# convert to filesystem paths
|
||||||
f_filename_1 = os.path.join(TEMPDIR, filename_1)
|
f_filename_1 = os.path.join(TEMPDIR, filename_1)
|
||||||
@@ -2830,7 +2868,8 @@ class NumericOwnerTest(unittest.TestCase
|
@@ -2831,7 +2869,8 @@ class NumericOwnerTest(unittest.TestCase
|
||||||
mock_chown):
|
mock_chown):
|
||||||
with self._setup_test(mock_geteuid) as (tarfl, filename_1, dirname_1,
|
with self._setup_test(mock_geteuid) as (tarfl, filename_1, dirname_1,
|
||||||
filename_2):
|
filename_2):
|
||||||
@ -1679,7 +1679,7 @@ Content-Transfer-Encoding: 8bit
|
|||||||
|
|
||||||
# convert to filesystem paths
|
# convert to filesystem paths
|
||||||
f_filename_1 = os.path.join(TEMPDIR, filename_1)
|
f_filename_1 = os.path.join(TEMPDIR, filename_1)
|
||||||
@@ -2855,7 +2894,8 @@ class NumericOwnerTest(unittest.TestCase
|
@@ -2856,7 +2895,8 @@ class NumericOwnerTest(unittest.TestCase
|
||||||
def test_extract_without_numeric_owner(self, mock_geteuid, mock_chmod,
|
def test_extract_without_numeric_owner(self, mock_geteuid, mock_chmod,
|
||||||
mock_chown):
|
mock_chown):
|
||||||
with self._setup_test(mock_geteuid) as (tarfl, filename_1, _, _):
|
with self._setup_test(mock_geteuid) as (tarfl, filename_1, _, _):
|
||||||
@ -1689,7 +1689,7 @@ Content-Transfer-Encoding: 8bit
|
|||||||
|
|
||||||
# convert to filesystem paths
|
# convert to filesystem paths
|
||||||
f_filename_1 = os.path.join(TEMPDIR, filename_1)
|
f_filename_1 = os.path.join(TEMPDIR, filename_1)
|
||||||
@@ -2869,6 +2909,890 @@ class NumericOwnerTest(unittest.TestCase
|
@@ -2870,6 +2910,890 @@ class NumericOwnerTest(unittest.TestCase
|
||||||
tarfl.extract, filename_1, TEMPDIR, False, True)
|
tarfl.extract, filename_1, TEMPDIR, False, True)
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:0419e9085bf51b7a672009b3f50dbf1859acdf18ba725d0ec19aa5c8503f0ea3
|
|
||||||
size 19627028
|
|
@ -1,16 +0,0 @@
|
|||||||
-----BEGIN PGP SIGNATURE-----
|
|
||||||
|
|
||||||
iQIzBAABCAAdFiEEz9yiRbEEPPKl+Xhl/+h0BBaL2EcFAmPiQfoACgkQ/+h0BBaL
|
|
||||||
2EcB8hAAmFEIHZopWn+A4tDxd001eViLrOmjygqPn1doAQ3dAgyESt4Z/HDtN6rB
|
|
||||||
+6z5rsx+qdcP9kfb/+3V0gKBh/3V4bEpnD+EQtpONWhKbCcqOfq1ok1V+uNH8uOF
|
|
||||||
ixxWkY+MWJzPPhlQiW/sm9FP6CdnaeriKf1JMCUt9aiganpo2CQv5gPE/0PlSGO5
|
|
||||||
BEKjCcyHHPIEAxC6jLm/+33PSzbhGq+YstK/1tcqUrJfkifipovmSZeFyzULPonK
|
|
||||||
MATPyliOupo3ixPs3LoJUjNpGD4fH+p2Lg1ZOgYv7vGmeLcadNVanRlqRg76m+ke
|
|
||||||
zvp/MAqQg4Fr75m2+mfDG/Md+PrSMvz71i55a1Q1NcYdW6QR62m08FCZg7/+t5pD
|
|
||||||
H91ywhMqTv1nySsEZGfuETPTs7gMCtyBeDjIhXBMcfbhGivd7r5zZJ8MUD/FSASC
|
|
||||||
fQ/vEVeHWQeWpfFgxLfLmRnkjIS7JCGlM9z6zsZqbppWqeA94sBIf4ka2JG2DnGP
|
|
||||||
1Pvn+ragiHt1++i2yVhmoAB0t44/SgXacCce5AT3yB71brT21cOXQs0Gq80MwVPI
|
|
||||||
nVbzdOtuGNGcvEi2fbO2IEcgegSHaOHo9PvYTRropSz3V7A95x8mA1xjZf2y77H5
|
|
||||||
/mfJ4687YIItCIcNE5Zzj6GspWlWP31OvRFIIefnKYf2JuU+qt8=
|
|
||||||
=B3xo
|
|
||||||
-----END PGP SIGNATURE-----
|
|
3
Python-3.10.11.tar.xz
Normal file
3
Python-3.10.11.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:3c3bc3048303721c904a03eb8326b631e921f11cc3be2988456a42f115daf04c
|
||||||
|
size 19640792
|
16
Python-3.10.11.tar.xz.asc
Normal file
16
Python-3.10.11.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
iQIzBAABCAAdFiEEz9yiRbEEPPKl+Xhl/+h0BBaL2EcFAmQsoHwACgkQ/+h0BBaL
|
||||||
|
2Efs9BAAheWCnenhHhXi0m0DgyB6eEVH8xmZrBqA1WMgGQOqWVZmEnJdc0IXyFWQ
|
||||||
|
1A4C59d6rEvu8jvXTLvsqGEmehofKqq0bXB1tMUBn9CwSiELOm19WvCHc/Htwo2U
|
||||||
|
DsvAsXXO7vBkKBT9+CQ4BmkGzPUTrBLZRHsQX/M/tpx81jnQVunoMojyPK19sf1I
|
||||||
|
C+YnxE0cQVL9+INd0WtbVByJIwzBBDCLqTQWL//73CqFs8IO6PsjFXqmlVqVfpmz
|
||||||
|
aEXuGeRkRgy7kZaDdLcnhBq7a6vgaecfgfRUGyBgwgakfrHA5SOdsWdAonjA676J
|
||||||
|
6DHmFIf82R4wo7Vu0WAfFAq9jJfVxXN7n5Y/N/cxzqjhrfO341vCflN1c16VAFnu
|
||||||
|
ok7n50poENO/tMRerOEj5baL+mToi8Wh+cYHY6tNpaM2iP+bSyjoS+Ff225xhdNV
|
||||||
|
fqGuyaH7cPgGgoXECrSb7iTWYZxJxQV9S8OlR2gX8IlA+XrbGWQl0PvmErhO3FqN
|
||||||
|
W88gBmYrzrSl6+dzF62yn2gKFc2K5k6NmCcySFfjY87G7RhEf1ixPeDyMSvbKlVw
|
||||||
|
sJWeoXuCNPL+PQV+V76UAbn3bEvH87fyImxoYHNAIbHh8JaTvO5vIKDrrsw92siQ
|
||||||
|
6Pud3Oy6DcD5gWX2KcaAjQjruh18dljsbYN+2KVFfQHM8SYeXns=
|
||||||
|
=enP4
|
||||||
|
-----END PGP SIGNATURE-----
|
@ -1,44 +0,0 @@
|
|||||||
---
|
|
||||||
Doc/howto/logging-cookbook.rst | 24 ++++++++++++++----------
|
|
||||||
1 file changed, 14 insertions(+), 10 deletions(-)
|
|
||||||
|
|
||||||
--- a/Doc/howto/logging-cookbook.rst
|
|
||||||
+++ b/Doc/howto/logging-cookbook.rst
|
|
||||||
@@ -340,10 +340,12 @@ adding a ``filters`` section parallel to
|
|
||||||
|
|
||||||
.. code-block:: json
|
|
||||||
|
|
||||||
- "filters": {
|
|
||||||
- "warnings_and_below": {
|
|
||||||
- "()" : "__main__.filter_maker",
|
|
||||||
- "level": "WARNING"
|
|
||||||
+ {
|
|
||||||
+ "filters": {
|
|
||||||
+ "warnings_and_below": {
|
|
||||||
+ "()" : "__main__.filter_maker",
|
|
||||||
+ "level": "WARNING"
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -351,12 +353,14 @@ and changing the section on the ``stdout
|
|
||||||
|
|
||||||
.. code-block:: json
|
|
||||||
|
|
||||||
- "stdout": {
|
|
||||||
- "class": "logging.StreamHandler",
|
|
||||||
- "level": "INFO",
|
|
||||||
- "formatter": "simple",
|
|
||||||
- "stream": "ext://sys.stdout",
|
|
||||||
- "filters": ["warnings_and_below"]
|
|
||||||
+ {
|
|
||||||
+ "stdout": {
|
|
||||||
+ "class": "logging.StreamHandler",
|
|
||||||
+ "level": "INFO",
|
|
||||||
+ "formatter": "simple",
|
|
||||||
+ "stream": "ext://sys.stdout",
|
|
||||||
+ "filters": ["warnings_and_below"]
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
A filter is just a function, so we can define the ``filter_maker`` (a factory
|
|
@ -1,10 +1,93 @@
|
|||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Apr 27 21:19:52 UTC 2023 - Matej Cepl <mcepl@suse.com>
|
Thu Apr 27 21:23:19 UTC 2023 - Matej Cepl <mcepl@suse.com>
|
||||||
|
|
||||||
- Add CVE-2007-4559-filter-tarfile_extractall.patch to fix
|
- Add CVE-2007-4559-filter-tarfile_extractall.patch to fix
|
||||||
CVE-2007-4559 (bsc#1203750) by adding the filter for
|
CVE-2007-4559 (bsc#1203750) by adding the filter for
|
||||||
tarfile.extractall (PEP 706).
|
tarfile.extractall (PEP 706).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Apr 27 21:19:52 UTC 2023 - Matej Cepl <mcepl@suse.com>
|
||||||
|
|
||||||
|
- Update to 3.10.11:
|
||||||
|
- Core and Builtins
|
||||||
|
- gh-102416: Do not memoize incorrectly automatically
|
||||||
|
generated loop rules in the parser. Patch by Pablo Galindo.
|
||||||
|
- gh-102356: Fix a bug that caused a crash when deallocating
|
||||||
|
deeply nested filter objects. Patch by Marta Gómez Macías.
|
||||||
|
- gh-102397: Fix segfault from race condition in signal
|
||||||
|
handling during garbage collection. Patch by Kumar Aditya.
|
||||||
|
- gh-102126: Fix deadlock at shutdown when clearing thread
|
||||||
|
states if any finalizer tries to acquire the runtime head
|
||||||
|
lock. Patch by Kumar Aditya.
|
||||||
|
- gh-102027: Fix SSE2 and SSE3 detection in _blake2 internal
|
||||||
|
module. Patch by Max Bachmann.
|
||||||
|
- gh-101967: Fix possible segfault in
|
||||||
|
positional_only_passed_as_keyword function, when new list
|
||||||
|
created.
|
||||||
|
- gh-101765: Fix SystemError / segmentation fault in iter
|
||||||
|
__reduce__ when internal access of builtins.__dict__ keys
|
||||||
|
mutates the iter object.
|
||||||
|
- Library
|
||||||
|
- gh-102947: Improve traceback when dataclasses.fields() is
|
||||||
|
called on a non-dataclass. Patch by Alex Waygood
|
||||||
|
- gh-101979: Fix a bug where parentheses in the metavar
|
||||||
|
argument to argparse.ArgumentParser.add_argument() were
|
||||||
|
dropped. Patch by Yeojin Kim.
|
||||||
|
- gh-102179: Fix os.dup2() error message for negative fds.
|
||||||
|
- gh-101961: For the binary mode, fileinput.hookcompressed()
|
||||||
|
doesn’t set the encoding value even if the value is
|
||||||
|
None. Patch by Gihwan Kim.
|
||||||
|
- gh-101936: The default value of fp becomes io.BytesIO
|
||||||
|
if HTTPError is initialized without a designated fp
|
||||||
|
parameter. Patch by Long Vo.
|
||||||
|
- gh-101566: In zipfile, apply fix for extractall on the
|
||||||
|
underlying zipfile after being wrapped in Path.
|
||||||
|
- gh-101997: Upgrade pip wheel bundled with ensurepip (pip
|
||||||
|
23.0.1)
|
||||||
|
- gh-101892: Callable iterators no longer raise SystemError
|
||||||
|
when the callable object exhausts the iterator but forgets
|
||||||
|
to either return a sentinel value or raise StopIteration.
|
||||||
|
- gh-97786: Fix potential undefined behaviour in corner cases
|
||||||
|
of floating-point-to-time conversions.
|
||||||
|
- gh-101517: Fixed bug where bdb looks up the source line
|
||||||
|
with linecache with a lineno=None, which causes it to fail
|
||||||
|
with an unhandled exception.
|
||||||
|
- gh-101673: Fix a pdb bug where ll clears the changes to
|
||||||
|
local variables.
|
||||||
|
- gh-96931: Fix incorrect results from
|
||||||
|
ssl.SSLSocket.shared_ciphers()
|
||||||
|
- gh-88233: Correctly preserve “extra” fields in zipfile
|
||||||
|
regardless of their ordering relative to a zip64 “extra.”
|
||||||
|
- gh-95495: When built against OpenSSL 3.0, the ssl module
|
||||||
|
had a bug where it reported unauthenticated EOFs (i.e.
|
||||||
|
without close_notify) as a clean TLS-level EOF. It now
|
||||||
|
raises SSLEOFError, matching the behavior in previous
|
||||||
|
versions of OpenSSL. The options attribute on SSLContext
|
||||||
|
also no longer includes OP_IGNORE_UNEXPECTED_EOF by
|
||||||
|
default. This option may be set to specify the previous
|
||||||
|
OpenSSL 3.0 behavior.
|
||||||
|
- gh-94440: Fix a concurrent.futures.process bug where
|
||||||
|
ProcessPoolExecutor shutdown could hang after a future has
|
||||||
|
been quickly submitted and canceled.
|
||||||
|
- Documentation
|
||||||
|
- gh-103112: Add docstring to http.client.HTTPResponse.read()
|
||||||
|
to fix pydoc output.
|
||||||
|
- gh-85417: Update cmath documentation to clarify behaviour
|
||||||
|
on branch cuts.
|
||||||
|
- gh-97725: Fix asyncio.Task.print_stack() description for
|
||||||
|
file=None. Patch by Oleg Iarygin.
|
||||||
|
- Tests
|
||||||
|
- gh-102980: Improve test coverage on pdb.
|
||||||
|
- gh-102537: Adjust the error handling strategy in
|
||||||
|
test_zoneinfo.TzPathTest.python_tzpath_context. Patch by
|
||||||
|
Paul Ganssle.
|
||||||
|
- gh-101377: Improved test_locale_calendar_formatweekday of
|
||||||
|
calendar.
|
||||||
|
- Build
|
||||||
|
- gh-102711: Fix -Wstrict-prototypes compiler warnings.
|
||||||
|
- Removed upstreamed:
|
||||||
|
- invalid-json.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Mar 13 08:39:53 UTC 2023 - Matej Cepl <mcepl@suse.com>
|
Mon Mar 13 08:39:53 UTC 2023 - Matej Cepl <mcepl@suse.com>
|
||||||
|
|
||||||
|
@ -103,7 +103,7 @@ Obsoletes: python39%{?1:-%{1}}
|
|||||||
%define dynlib() %{sitedir}/lib-dynload/%{1}.cpython-%{abi_tag}-%{archname}-%{_os}%{?_gnu}%{?armsuffix}.so
|
%define dynlib() %{sitedir}/lib-dynload/%{1}.cpython-%{abi_tag}-%{archname}-%{_os}%{?_gnu}%{?armsuffix}.so
|
||||||
%bcond_without profileopt
|
%bcond_without profileopt
|
||||||
Name: %{python_pkg_name}%{psuffix}
|
Name: %{python_pkg_name}%{psuffix}
|
||||||
Version: 3.10.10
|
Version: 3.10.11
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Python 3 Interpreter
|
Summary: Python 3 Interpreter
|
||||||
License: Python-2.0
|
License: Python-2.0
|
||||||
@ -170,12 +170,9 @@ Patch36: support-expat-CVE-2022-25236-patched.patch
|
|||||||
# blocklist bypass via the urllib.parse component when supplying
|
# blocklist bypass via the urllib.parse component when supplying
|
||||||
# a URL that starts with blank characters
|
# a URL that starts with blank characters
|
||||||
Patch37: CVE-2023-24329-blank-URL-bypass.patch
|
Patch37: CVE-2023-24329-blank-URL-bypass.patch
|
||||||
# PATCH-FIX-UPSTREAM invalid-json.patch gh#python/cpython#102582 mcepl@suse.com
|
|
||||||
# We require valid JSON in documentation
|
|
||||||
Patch38: invalid-json.patch
|
|
||||||
# PATCH-FIX-UPSTREAM CVE-2007-4559-filter-tarfile_extractall.patch bsc#1203750 mcepl@suse.com
|
# PATCH-FIX-UPSTREAM CVE-2007-4559-filter-tarfile_extractall.patch bsc#1203750 mcepl@suse.com
|
||||||
# PEP 706 – Filter for tarfile.extractall
|
# PEP 706 – Filter for tarfile.extractall
|
||||||
Patch39: CVE-2007-4559-filter-tarfile_extractall.patch
|
Patch38: CVE-2007-4559-filter-tarfile_extractall.patch
|
||||||
BuildRequires: autoconf-archive
|
BuildRequires: autoconf-archive
|
||||||
BuildRequires: automake
|
BuildRequires: automake
|
||||||
BuildRequires: fdupes
|
BuildRequires: fdupes
|
||||||
@ -450,7 +447,6 @@ other applications.
|
|||||||
%patch36 -p1
|
%patch36 -p1
|
||||||
%patch37 -p1
|
%patch37 -p1
|
||||||
%patch38 -p1
|
%patch38 -p1
|
||||||
%patch39 -p1
|
|
||||||
|
|
||||||
# drop Autoconf version requirement
|
# drop Autoconf version requirement
|
||||||
sed -i 's/^AC_PREREQ/dnl AC_PREREQ/' configure.ac
|
sed -i 's/^AC_PREREQ/dnl AC_PREREQ/' configure.ac
|
||||||
|
Loading…
Reference in New Issue
Block a user