Closed avylove closed 4 years ago
@camprevail, I looked at this for a while. They seem to be something with the output buffering in pyinstaller. Can you reach out to them to see?
yeah I'll open an issue for it
Thanks! Please reference this issue or link here.
https://github.com/pyinstaller/pyinstaller/issues/4908 opened on Jun 1, closed Jun 13 after being unable to reproduce
Root cause was Pyinstaller didn't flush stdout and stderr before invoking atexit. This was fixed in https://github.com/pyinstaller/pyinstaller/commit/d8e4621df273233ca379222e9a9425af0937fb3a, released in 4.0
Enlighten shouldn't be depending on this behavior, so the flushing was improved in ccf77ff35e76dc8303fd2ac686e7029a07e6a8c4. It will go out with the next release
Jinxed should also flush the buffers before resetting the console mode. That was added in https://github.com/Rockhopper-Technologies/jinxed/commit/aca28e7036c73f03d6a73a54386952c5f3a4611f, released in 1.0.1
Any of these independently will resolve it. Let me know if you have any additional issues.
Describe the bug Under pyinstaller output buffers are mangled in a way where some escape codes are written in plain text to the screen at the end of the program
To Reproduce
Create script:
Build and run:
Environment (please complete the following information):
Additional context
This may be triggered by something called by
Manager.stop()
. It does not appear to happen a simple test case in jinxed and does occur ifManager.stop()
isn't called. The output seems to be flushed to the screen after the program has terminated.