Uh oh!
There was an error while loading. Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork 33.9k
gh-105820: Fix tok_mode expression buffer in file & readline tokenizer#105828
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
gh-105820: Fix tok_mode expression buffer in file & readline tokenizer #105828
Uh oh!
There was an error while loading. Please reload this page.
Conversation
lysnikolaou commented Jun 15, 2023 • edited
Loading Uh oh!
There was an error while loading. Please reload this page.
edited
Uh oh!
There was an error while loading. Please reload this page.
pablogsal commented Jun 15, 2023
@lysnikolaou Hummm, can you quickly cover why moving this chunk solves the problem? I think I am missing some key insight here |
lysnikolaou commented Jun 15, 2023 • edited
Loading Uh oh!
There was an error while loading. Please reload this page.
edited
Uh oh!
There was an error while loading. Please reload this page.
Sure. There's two different cases to consider here:
cpythonon mainviaCv14.0.3-clangvia 🐍 pyenv3.11.3 ❯ cattmp/t.pyprint(f'''{3=}''')%cpythonon mainviaCv14.0.3-clangvia 🐍 pyenv3.11.3 ❯ ./python.exe-mtokenizetmp/t.pyunexpectederror: NegativesizepassedtoPyUnicode_NewTraceback (mostrecentcalllast): File"/Users/lysnikolaou/repos/python/cpython/Lib/runpy.py", line198, in_run_module_as_mainreturn_run_code(code, main_globals, None, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File"/Users/lysnikolaou/repos/python/cpython/Lib/runpy.py", line88, in_run_codeexec(code, run_globals) File"/Users/lysnikolaou/repos/python/cpython/Lib/tokenize.py", line547, in<module>main() File"/Users/lysnikolaou/repos/python/cpython/Lib/tokenize.py", line489, inmaintokens=list(tokenize(f.readline)) ^^^^^^^^^^^^^^^^^^^^^^^^^^File"/Users/lysnikolaou/repos/python/cpython/Lib/tokenize.py", line447, intokenizeyieldfrom_generate_tokens_from_c_tokenizer(rl_gen.__next__, encoding, extra_tokens=True) File"/Users/lysnikolaou/repos/python/cpython/Lib/tokenize.py", line537, in_generate_tokens_from_c_tokenizerforinfoinit: SystemError: NegativesizepassedtoPyUnicode_New
cpythonon mainviaCv14.0.3-clangvia 🐍 pyenv3.11.3took15s ❯ cattmp/t.pyprint(f'''{3=}''')%cpythonon mainviaCv14.0.3-clangvia 🐍 pyenv3.11.3 ❯ ./python.exetmp/t.py33 |
lysnikolaou commented Jun 15, 2023
Do you think I should split this PR in two and open a second issue for the second case above? |
2efb0a4 to a83de94Comparepablogsal commented Jun 15, 2023
Nah, I think is fine, but we may want to add two NEWS entries |
pablogsal left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Thanks for the explanation @lysnikolaou. Fantastic work as always! 💪
pablogsal commented Jun 15, 2023
@lysnikolaou If you want add the second NEWS entry and then land it. |
miss-islington commented Jun 15, 2023
Thanks @lysnikolaou for the PR 🌮🎉.. I'm working now to backport this PR to: 3.12. |
…kenizer (pythonGH-105828) (cherry picked from commit d382ad4) Co-authored-by: Lysandros Nikolaou <lisandrosnik@gmail.com>
bedevere-bot commented Jun 15, 2023
GH-105832 is a backport of this pull request to the 3.12 branch. |
* main: (57 commits) pythongh-105831: Fix NEWS blurb from pythongh-105828 (python#105833) pythongh-105820: Fix tok_mode expression buffer in file & readline tokenizer (python#105828) pythongh-105751, test_ctypes: Remove disabled tests (python#105826) pythongh-105821: Use a raw f-string in test_httpservers.py (python#105822) pythongh-105751: Remove platform usage in test_ctypes (python#105819) pythongh-105751: Reenable disable test_ctypes tests (python#105818) pythongh-105751: Remove dead code in test_ctypes (python#105817) More reorganisation of the typing docs (python#105787) Improve docs for `typing.dataclass_transform` (python#105792) pythonGH-89812: Churn `pathlib.Path` test methods (python#105807) pythongh-105800: Issue SyntaxWarning in f-strings for invalid escape sequences (python#105801) pythongh-105751: Cleanup test_ctypes imports (python#105803) pythongh-105481: add HAS_JUMP flag to opcode metadata (python#105791) pythongh-105751: test_ctypes avoids the operator module (pythonGH-105797) pythongh-105751: test_ctypes: Remove @need_symbol decorator (pythonGH-105798) pythongh-104909: Implement conditional stack effects for macros (python#105748) pythongh-75905: Remove test_xmlrpc_net: skipped since 2017 (python#105796) pythongh-105481: Fix types and a bug for pseudos (python#105788) Update DSL docs for cases generator (python#105753) pythonGH-77273: Better bytecodes for f-strings (pythonGH-6132) ...
patchcheck.pyraisesSystemErroronmain#105820