Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.Sign up
Please make the parsetab.py files reproducible #79
Whilst working on the Debian reproducible builds effort, I noticed that python-ply generates
I first had a quick go at fixing this by adding a bunch of sorts inside
Of course, one solution would be to wontfix this and simply decree that these files are non-determistc.. but that would require that Debian etc. would not be able to ship these useful optimisations as they would render the package unreproducible.
Suggest using yacc(write_tables=False) to disable the creation of the parsetab.py file entirely.
Background: The whole reason that parsetab.py file is there in the first place is that the first version of PLY was written on a 200Mhz PC and the parser table creation was slow. To make startup faster on subsequent runs, parsetab.py was written and used as a kind of cache. I'm not even sure it matters now. For one, machines are a LOT faster. Also, PLY switched over to a different, much faster, algorithm ages ago (generating the tables for C with some 353 states takes about 0.3s on my current machine).
Honestly, I've been thinking about ditching all of this parsetab.py/lextab.py business entirely in some future version.
Hello, FWIW I switched the Debian packaging to the new release 1.0.0
So, I consider this issue "fixed" for my packaging needs