Skip to content
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

Upgrade pycparser to 2.19+ #6618

Closed
legoktm opened this issue Oct 12, 2022 · 1 comment · Fixed by #6686
Closed

Upgrade pycparser to 2.19+ #6618

legoktm opened this issue Oct 12, 2022 · 1 comment · Fixed by #6686

Comments

@legoktm
Copy link
Member

legoktm commented Oct 12, 2022

This is a good first issue for new contributors to take on, if you have any questions, please ask on the task or in our Gitter room!

(this is a Python C parser, not a pyc parser...)

We are currently pinned to 2.18, which appears to be unreproducible (see #5901):

├── pycparser/__pycache__/c_ast.cpython-38.pyc
│ @@ -1,8 +1,8 @@
│ -00000000: 550d 0d0a 0000 0000 1669 3363 475c 0000  U........i3cG\..
│ +00000000: 550d 0d0a 0000 0000 5a11 4763 475c 0000  U.......Z.GcG\..
│  00000010: e300 0000 0000 0000 0000 0000 0000 0000  ................
│  00000020: 0004 0000 0040 0000 0073 1c03 0000 6400  .....@...s....d.
│  00000030: 6401 6c00 5a00 4700 6402 6403 8400 6403  d.l.Z.G.d.d...d.
│  00000040: 6501 8303 5a02 4700 6404 6405 8400 6405  e...Z.G.d.d...d.
│  00000050: 6501 8303 5a03 4700 6406 6407 8400 6407  e...Z.G.d.d...d.
│  00000060: 6502 8303 5a04 4700 6408 6409 8400 6409  e...Z.G.d.d...d.
│  00000070: 6502 8303 5a05 4700 640a 640b 8400 640b  e...Z.G.d.d...d.
├── pycparser-2.18.dist-info/RECORD
│ @@ -9,15 +9,15 @@
│  pycparser/c_parser.py,sha256=BGdoaSjLrhEWatUjSybOBATPAlGdg-grzbJb0k-fmms,66340
│  pycparser/lextab.py,sha256=FyjRIsaq2wViDqJNYScURuc7GDW5F12VuYxOJLh1j4g,7011
│  pycparser/plyparser.py,sha256=IXb0LO1wiN_8KCHYY_xuo5QZlJ3R6bss2xJ_-UXhHgY,4006
│  pycparser/yacctab.py,sha256=0kdNrVyOGjxaLANxf4Wi5rNav1nxyOODHNIOOynBD6E,164587
│  pycparser/__pycache__/__init__.cpython-38.pyc,sha256=06fYfW2Az58CSIZW9k7MAezpPTXgcoNrWIP4wmpVFdo,2565
│  pycparser/__pycache__/_ast_gen.cpython-38.pyc,sha256=U80C3Fr_O75MqykUmKDhJD6lT8YAwhnbfN5w3VjOciU,8677
│  pycparser/__pycache__/ast_transforms.cpython-38.pyc,sha256=vyJ5Y1cnR5OseU-Mfzpw5MZ6MlOY7eRklcNS_aGz2lY,2560
│ -pycparser/__pycache__/c_ast.cpython-38.pyc,sha256=N6eg2ABPTd8q-3X2n0ctvxmOZzUQnKCloIJGp-6fceI,27689
│ +pycparser/__pycache__/c_ast.cpython-38.pyc,sha256=RjMHbtE17g0oloE4lQBM0CNZRade9uvMvdm-PPa_V60,27689
│  pycparser/__pycache__/c_lexer.cpython-38.pyc,sha256=frlKmot2sqFbIcEP19NK1NqEtFGRZvDRy3Sco2QqueU,11598
│  pycparser/__pycache__/c_parser.cpython-38.pyc,sha256=ZmoSW5dNgCepgHaQF-heDQFdCpTDOvd4mCs6KmeURQU,58973
│  pycparser/__pycache__/lextab.cpython-38.pyc,sha256=7mO3eXYB6vZ0NtLM4MEwIC1ns6gZJfk7RZdNpXIbs1I,5661
│  pycparser/__pycache__/plyparser.cpython-38.pyc,sha256=NMPAbz-w8zICCHhs-8dJ9R2jCynavAhk13Wly5v69n0,4474
│  pycparser/__pycache__/yacctab.cpython-38.pyc,sha256=qRSOaIejqe9ioKg2uwLB0sUnZ9BbsinIQxmZF9afA0Q,134753
│  pycparser/ply/__init__.py,sha256=q4s86QwRsYRa20L9ueSxfh-hPihpftBjDOvYa2_SS2Y,102
│  pycparser/ply/cpp.py,sha256=As93HdoqcSZVjPU31PG3LyqXlATbgGbtvCEsAC_Bch4,33317

We know that pyc files are unreproducible without some work. But in pycparser 2.19 has a fix that would stop including pyc files in the wheel: eliben/pycparser@aedb4ed. So we need to upgrade to at least 2.19. Given that 2.19 is from 2018, I think going to 2.21 would be nice if the diff review isn't too terrible.

We also need to verify that newer versions work properly with our pinned cffi, in case we also need to bump that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants