New submission from Robert O'Callahan <[email protected]>:
Starting from Python 3.9, copy.deepcopy can't copy a platform.uname_result
object.
```
Python 3.9.0 (default, Oct 6 2020, 00:00:00)
[GCC 10.2.1 20200826 (Red Hat 10.2.1-3)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import platform
>>> import copy
>>> u = platform.uname()
>>> print(u)
uname_result(system='Linux', node='localhost.localdomain',
release='5.8.16-300.fc33.x86_64', version='#1 SMP Mon Oct 19 13:18:33 UTC
2020', machine='x86_64')
>>> v = copy.deepcopy(u)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib64/python3.9/copy.py", line 172, in deepcopy
y = _reconstruct(x, memo, *rv)
File "/usr/lib64/python3.9/copy.py", line 264, in _reconstruct
y = func(*args)
File "/usr/lib64/python3.9/copyreg.py", line 91, in __newobj__
return cls.__new__(cls, *args)
TypeError: <lambda>() takes 6 positional arguments but 7 were given
```
Looks similar to issue 42163 but I guess it might need to be fixed differently.
This has broken building Intel's Xed library, which uses a Python-based build
system: https://github.com/intelxed/mbuild
----------
components: Library (Lib)
messages: 379853
nosy: rocallahan
priority: normal
severity: normal
status: open
title: copy.deepcopy() no longer works on platform.uname_result objects
type: behavior
versions: Python 3.10, Python 3.9
_______________________________________
Python tracker <[email protected]>
<https://bugs.python.org/issue42189>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com