berkerpeksag / astor

Python AST read/write
https://pypi.org/project/astor/
BSD 3-Clause "New" or "Revised" License
810 stars 102 forks source link

[3.12] DeprecationWarning: ast.Num is deprecated and will be removed in Python 3.14; use ast.Constant instead #217

Open graingert opened 11 months ago

graingert commented 11 months ago

importing astor fails when run with python3.12 -W error

python -W error -c 'import astor'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/home/graingert/.virtualenvs/testing312/lib/python3.12/site-packages/astor/__init__.py", line 15, in <module>
    from .code_gen import SourceGenerator, to_source  # NOQA
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/graingert/.virtualenvs/testing312/lib/python3.12/site-packages/astor/code_gen.py", line 25, in <module>
    from .op_util import get_op_symbol, get_op_precedence, Precedence
  File "/home/graingert/.virtualenvs/testing312/lib/python3.12/site-packages/astor/op_util.py", line 92, in <module>
    precedence_data = dict((getattr(ast, x, None), z) for x, y, z in op_data)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/graingert/.virtualenvs/testing312/lib/python3.12/site-packages/astor/op_util.py", line 92, in <genexpr>
    precedence_data = dict((getattr(ast, x, None), z) for x, y, z in op_data)
                            ^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/ast.py", line 1802, in __getattr__
    warnings._deprecated(
  File "/usr/lib/python3.12/warnings.py", line 529, in _deprecated
    warn(msg, DeprecationWarning, stacklevel=3)
DeprecationWarning: ast.Num is deprecated and will be removed in Python 3.14; use ast.Constant instead