Closed mikebveil closed 1 year ago
Can one of the admins verify this patch?
If this PR isn't what the authors would want, at least do:
log = logging.getLogger(__name__)
+ log.level = logging.ERROR
We're 2 years in to this PR, and the WARNING: Symbol '...' is unreachable
is still at large.
Due to age and by popular community request I will merge this. However I am not a python maintainer and have not vetted this PR.
Thank you! Our logs and storage are forever in your debt! ^^
Thank you! This should resolve https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1033714
Is there a release schedule for flanker? Would be great to get this package into Debian Bookworm, which is currently approaching release.
Is there a release schedule for flanker? Would be great to see this patch released and in Debian.
Address two outstanding issues that are especially a problem when using flanker in a frozen application (i.e. using pyinstaller).
231 Disable warnings on first run
When addresslib is first imported, the yacc parser gets run and logs a bunch of warnings about missing symbols. This pollutes the stdout (or maybe stderr) of the application using it. And when freezing with pyInstaller, the directory with cached tables is removed between runs, so this happens on every run. I have no idea if these warnings are themselves a bug, but they shouldn't be exposed like this and setting
check_recursion=False
suppresses them.208 Don't generate cached parser tables
When running in a read-only filesystem, yacc will fail to write out the cached parser tables. This affects, for example, AWS Lambda and pyInstaller builds. It's not fatal, but it does generate an error in the application output each time.
There is a cost to
write_tables=False
, since we will have to re-parse on the next startup. But it's worth noting that the next version of the yacc module will do away with caching entirely, and the author considers it of negligible performance benefit:Testing
Have verified no regressions in
nosetests
.