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

[Packaging] Fix deluge-console working again on Windows #456

Open
wants to merge 1 commit into
base: develop
Choose a base branch
from

Conversation

mhertz
Copy link
Contributor

@mhertz mhertz commented Aug 10, 2024

Deluge-console broke on Windows after commit d559f67, which before that, was working by happy coincidence from it's source files getting included with rest UI/plugin data copied into place. This fix, well workaround rather, copies back it's source files into place, to restore old ways, until proper fix can be made.

@mhertz
Copy link
Contributor Author

mhertz commented Aug 14, 2024

Further elaboration, I found the underlying work-arounded issue here, is two-fold I believe. It's not that anything is missing from the freezing, but rather that there at runtime is generated subparsers for the commands, using path_[0] (UI_PATH var in init.py, joined in console.py with rest path), so looking for files/paths not there anymore, as freezed now, and second , the use of @OVERRIDES which breaks in freezed env because of issues with inspect.stack() used in decorators.py - inspect issues is known with pyinstaller and a runtime hook for inspect already auto-added I see, but isn't enough apparently.

Edit: Specifically(for latter), decorators.py line 73 breaks in freezed env, since trying use stack[2][4][0], stack being inspect.stack(), and in freezed env stack[2][4] is None, and hence any mention of stack[2][4][0] breaks with 'NoneType object is not subscriptable'. In non-freezed, it returns the call-context correctly.

Edit2: Not an pyinstaller bug, so will need rewrite that part of @OVERRIDES to properly fixing this.

Deluge-console broke on Windows after commit d559f67, which before that, was working by happy coincidence from it's source files getting included with rest UI/plugin data copied into place. This fix, well workaround rather, copies back it's source files into place, to restore old ways, until proper fix can be made.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant