uqfoundation/dill

co_lnotab deprecated triggers failure for > 3.12.0a6

Closed this issue · 0 comments

$ python test_recursive.py 
Traceback (most recent call last):
  File "/Users/mmckerns/dev/git/uqfoundation/dill/dill/tests/test_recursive.py", line 171, in <module>
    test_super()
  File "/Users/mmckerns/dev/git/uqfoundation/dill/dill/tests/test_recursive.py", line 47, in test_super
    assert copy(obj1(), recurse=True)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mmckerns/dev/git/uqfoundation/dill/dill/tests/test_recursive.py", line 27, in copy
    return dill.copy(obj, byref=byref, recurse=recurse)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mmckerns/lib/python3.12/site-packages/dill/_dill.py", line 237, in copy
    return loads(dumps(obj, *args, **kwds), ignore=ignore)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mmckerns/lib/python3.12/site-packages/dill/_dill.py", line 277, in dumps
    dump(obj, file, protocol, byref, fmode, recurse, **kwds)#, strictio)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mmckerns/lib/python3.12/site-packages/dill/_dill.py", line 249, in dump
    Pickler(file, protocol, **_kwds).dump(obj)
  File "/Users/mmckerns/lib/python3.12/site-packages/dill/_dill.py", line 417, in dump
    StockPickler.dump(self, obj)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/pickle.py", line 481, in dump
    self.save(obj)
  File "/Users/mmckerns/lib/python3.12/site-packages/dill/_dill.py", line 411, in save
    StockPickler.save(self, obj, save_persistent_id)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/pickle.py", line 597, in save
    self.save_reduce(obj=obj, *rv)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/pickle.py", line 681, in save_reduce
    save(cls)
  File "/Users/mmckerns/lib/python3.12/site-packages/dill/_dill.py", line 411, in save
    StockPickler.save(self, obj, save_persistent_id)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/pickle.py", line 554, in save
    f(self, obj)  # Call unbound method with explicit self
    ^^^^^^^^^^^^
  File "/Users/mmckerns/lib/python3.12/site-packages/dill/_dill.py", line 1807, in save_type
    _save_with_postproc(pickler, (_create_type, (
  File "/Users/mmckerns/lib/python3.12/site-packages/dill/_dill.py", line 1092, in _save_with_postproc
    pickler.save_reduce(*reduction, obj=obj)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/pickle.py", line 686, in save_reduce
    save(args)
  File "/Users/mmckerns/lib/python3.12/site-packages/dill/_dill.py", line 411, in save
    StockPickler.save(self, obj, save_persistent_id)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/pickle.py", line 554, in save
    f(self, obj)  # Call unbound method with explicit self
    ^^^^^^^^^^^^
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/pickle.py", line 896, in save_tuple
    save(element)
  File "/Users/mmckerns/lib/python3.12/site-packages/dill/_dill.py", line 411, in save
    StockPickler.save(self, obj, save_persistent_id)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/pickle.py", line 554, in save
    f(self, obj)  # Call unbound method with explicit self
    ^^^^^^^^^^^^
  File "/Users/mmckerns/lib/python3.12/site-packages/dill/_dill.py", line 1208, in save_module_dict
    StockPickler.save_dict(pickler, obj)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/pickle.py", line 966, in save_dict
    self._batch_setitems(obj.items())
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/pickle.py", line 990, in _batch_setitems
    save(v)
  File "/Users/mmckerns/lib/python3.12/site-packages/dill/_dill.py", line 411, in save
    StockPickler.save(self, obj, save_persistent_id)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/pickle.py", line 554, in save
    f(self, obj)  # Call unbound method with explicit self
    ^^^^^^^^^^^^
  File "/Users/mmckerns/lib/python3.12/site-packages/dill/_dill.py", line 1960, in save_function
    _save_with_postproc(pickler, (_create_function, (
  File "/Users/mmckerns/lib/python3.12/site-packages/dill/_dill.py", line 1092, in _save_with_postproc
    pickler.save_reduce(*reduction, obj=obj)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/pickle.py", line 686, in save_reduce
    save(args)
  File "/Users/mmckerns/lib/python3.12/site-packages/dill/_dill.py", line 411, in save
    StockPickler.save(self, obj, save_persistent_id)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/pickle.py", line 554, in save
    f(self, obj)  # Call unbound method with explicit self
    ^^^^^^^^^^^^
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/pickle.py", line 896, in save_tuple
    save(element)
  File "/Users/mmckerns/lib/python3.12/site-packages/dill/_dill.py", line 411, in save
    StockPickler.save(self, obj, save_persistent_id)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/pickle.py", line 554, in save
    f(self, obj)  # Call unbound method with explicit self
    ^^^^^^^^^^^^
  File "/Users/mmckerns/lib/python3.12/site-packages/dill/_dill.py", line 1142, in save_code
    obj.co_lnotab, # for < python 3.10 [not counted in args]
    ^^^^^^^^^^^^^
DeprecationWarning: co_lnotab is deprecated, use co_lines instead.

tested on 3.120a6, 3.12.0a7, and:

Python 3.12.0b1 (main, May 23 2023, 16:55:26) [Clang 10.0.1 (clang-1001.0.46.4)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import dill
>>> dill.__version__
'0.3.7.dev0'