Construct ast node with known fields to avoid deprecation warning in Python 3.13 #90
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When using
GAstToAst
in Python 3.13, there are too many ofDeprecationWarning
.It can also be reproduced in the existing unittests
This is because omitting optional fields was allowed in previous versions, but this was marked as deprecated in Python 3.13 and will be removed in 3.151
So I tried to construct the ast node directly using the known fields and it seems to work well.
The changes have been tested at PaddlePaddle/Paddle#69232.
Footnotes
https://docs.python.org/3/library/ast.html#ast.AST ↩