-
Notifications
You must be signed in to change notification settings - Fork 475
[plugin.video.youtube@matrix] 7.3.0 #4725
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
base: matrix
Are you sure you want to change the base?
Conversation
|
Another large release, hopefully the last as I move towards making changes in more manageable interim releases. |
basrieter
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, it took me a lot of time. One thing I would like to see changed, and that is the gc.disable() without a proper finally that re-enables it.
| plugin=_plugin, | ||
| provider=_provider, | ||
| profiler=_profiler): | ||
| gc.disable() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you make sure that there is a try-finally here, where in finally gc.enable() and gc.collect() is always called. Kodi re-uses Python instances and if your add-on fails, then the gc is disabled for that re-usable instance.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Kodi re-uses Python instances and if your add-on fails, then the gc is disabled for that re-usable instance.
With hindsight I think I should not be trying to do this.
While it speeds up long running plugin calls by a significant amount, I think this actually influences all subinterpreters not just the one used by this addon.
While I test the addon using timing code that implicitly disables the gc anyway, can't be certain that there aren't any cyclic object references that may result in memory leaks.
A better way may be to use a try/finally to prevent automatic collection then collect manually at the end of the plugin call - most of the speed up with less of the unknown potential issues
basrieter
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See my previous comment.
Add-on details:
General
Code location
YouTube is one of the biggest video-sharing websites of the world.
Description of changes:
v7.3.0
Fixed
Checklist: