Kodi Community Forum

Full Version: skin helper service
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
(2020-10-06, 23:02)AnonTester Wrote: [ -> ]I noticed some errors relating to cherrypy when restarting my Kodi19 today. Not sure if this is related to the latest nightly. However, I've upgraded cherrypy to the last version compatible with both python 2 and 3, added all new dependencies and adjusted skin.helper.service to use the updated cherrypy version and removed a deprecated cherrypy setting.
Had a complete disaster yesterday with my TV show library getting corrupted. Lots of episodes showing up in the wrong shows, so had do complete re-install of Kodi. Even more frustrating that you have to install Kodi 18 first, use Artwork Beef to get all the extra artwork, then install Matrix.
So, I tried the updated versions of the skin.helper.service and cherrypy module and whilst both are installed, I'm still getting an error. Full log is attached, but seems to be saying no module named 'pkg_resources' which is causing the error. Hope this will mean something to you? First mentioned from line 568.
I did notice when re-installing Kodi using Matrix Alpha 2, I observed some strange behaviour when installing addons. Whilst they all appear to install okay initially, I saw after that most had actually become disabled for some reason and needed enabling again. It was quite strange, as I've never seen this happen before. Maybe that's bug?
Anyway, hopefully the log will mean something to you.
cheers

Kodi log: https://pastebin.com/SjTQAGGj
@Dumyat I've added pkg_resources from setuptools which is most likely what it wants and updated the cherrypy kodi package. Please test and hopefully no other dependencies are missing.

As for Matrix alpha 2, this may be a new behaviour with the team kodi versioncheck addon. I got a popup message mentioning something about disabling addons and warnings, but skipped over it.

You might want to look into the backup/xbmcbackup addon (https://forum.kodi.tv/showthread.php?tid=129499) to automatically create backups of your library and/or settings. It saved me from disasters a couple of times in the past.
(2020-10-07, 19:10)AnonTester Wrote: [ -> ]@Dumyat I've added pkg_resources from setuptools which is most likely what it wants and updated the cherrypy kodi package. Please test and hopefully no other dependencies are missing.
The previous error has gone, but now been replaced with a new one saying No Module Named 'resources'. Details of the error right at the bottom of the attached log.
Yeah, I will check out the back-up addon. Has happened to me maybe 5-6 times in 8 years, so not often thankfully. Just a bit of pain when it does.
Thanks again for all the help with this. Really appreciate it.
Cheers

Updated Log: https://pastebin.com/LF0n76pj
@Dumyat Skin Helper Service updated to 1.1.30, should now be fixed *fingers crossed*.
(2020-10-07, 22:10)AnonTester Wrote: [ -> ]@Dumyat Skin Helper Service updated to 1.1.30, should now be fixed *fingers crossed*.
Thanks very much for the update. Unfortunately, it's returned an error again. Details below:-
2020-10-07 22:24:25.331 T:12348   ERROR <general>: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
 - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
   Error Type: <class 'ModuleNotFoundError'>
   Error Contents: No module named 'pkg_resources'
   Traceback (most recent call last):
   File "C:\Users\Mini-Pc\AppData\Roaming\Kodi\addons\script.skin.helper.service\service.py", line 10, in <module>
   from resources.lib.main_service import MainService
   File "C:\Users\Mini-Pc\AppData\Roaming\Kodi\addons\script.skin.helper.service\resources\lib\main_service.py", line 15, in <module>
   from resources.lib.webservice import WebService
   File "C:\Users\Mini-Pc\AppData\Roaming\Kodi\addons\script.skin.helper.service\resources\lib\webservice.py", line 12, in <module>
   import cherrypy
   File "C:\Users\Mini-Pc\AppData\Roaming\Kodi\addons\script.module.cherrypy\lib\cherrypy\__init__.py", line 73, in <module>
   from ._cptools import default_toolbox as tools, Tool
   File "C:\Users\Mini-Pc\AppData\Roaming\Kodi\addons\script.module.cherrypy\lib\cherrypy\_cptools.py", line 31, in <module>
   from cherrypy.lib import sessions as _sessions, xmlrpcutil as _xmlrpc
   File "C:\Users\Mini-Pc\AppData\Roaming\Kodi\addons\script.module.cherrypy\lib\cherrypy\lib\sessions.py", line 114, in <module>
   import zc.lockfile
   File "C:\Users\Mini-Pc\AppData\Roaming\Kodi\addons\script.module.cherrypy\lib\zc\__init__.py", line 1, in <module>
    __import__('pkg_resources').declare_namespace(__name__)
   ModuleNotFoundError: No module named 'pkg_resources'
   -->End of Python script error report<--
                                                   
2020-10-07 22:24:25.575 T:12348    INFO <general>: Python interpreter stopped

Thought I would just paste the error from the log. Hope it helps.
Apologies for being such a pain. Blush
No need for an apology! On the contrary, thank you for the error reports. They help to find any remaining issues both for you and anyone else with similar setup or config as yours.

Did your system get the updated cherrypy version? It's the same error as before, but I added the pkg_resources module dependency. Should be version 17.4.2-1
(2020-10-07, 23:59)AnonTester Wrote: [ -> ]No need for an apology! On the contrary, thank you for the error reports. They help to find any remaining issues both for you and anyone else with similar setup or config as yours.

Did your system get the updated cherrypy version? It's the same error as before, but I added the pkg_resources module dependency. Should be version 17.4.2-1
Just checked the dependencies in the system settings and it says version 17.4.2. I'll download the other repo again and get 17.4.2-1 from there.
By jove, we now have lift off!  Big Grin
Yay! I'm very glad to hear that! Love
@AnonTester 

Have one error in cherrypy module, please check.
Code:
2020-10-08 08:15:10.250 T:9712   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.AttributeError'>
                                            Error Contents: 'module' object has no attribute 'declare_namespace'
                                            Traceback (most recent call last):
                                              File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.skin.helper.service/service.py", line 10, in <module>
                                                from resources.lib.main_service import MainService
                                              File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.skin.helper.service/resources/lib/main_service.py", line 15, in <module>
                                                from resources.lib.webservice import WebService
                                              File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.skin.helper.service/resources/lib/webservice.py", line 12, in <module>
                                                import cherrypy
                                              File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.module.cherrypy/lib/cherrypy/__init__.py", line 73, in <module>
                                                from ._cptools import default_toolbox as tools, Tool
                                              File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.module.cherrypy/lib/cherrypy/_cptools.py", line 31, in <module>
                                                from cherrypy.lib import sessions as _sessions, xmlrpcutil as _xmlrpc
                                              File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.module.cherrypy/lib/cherrypy/lib/sessions.py", line 114, in <module>
                                                import zc.lockfile
                                              File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.module.cherrypy/lib/zc/__init__.py", line 1, in <module>
                                                __import__('pkg_resources').declare_namespace(__name__)
                                            AttributeError: 'module' object has no attribute 'declare_namespace'
                                            -->End of Python script error report<--
log
https://pastebin.com/CtWi52Ya
I'm getting the same log error as Wanilton.
I think I understand roughly what the error means, but as I don't use Kodi 18 nor Kodi on Android and I also do not get the error myself, it's rather difficult to work on it. I'll try and see if I can setup a Kodi18 test install on the weekend.
I created a test installation on Linux Mint 20 x64 first using the default repository (Kodi 18.6 for Debian), then removed it and used the Kodi repository with Kodi 18.8. Neither of them ran into the issue in your logs. There was yet another dependency that needed to be added and I've replaced the BeautifulSoup3 references of metadatautils, but everything appears to be running fine.
I doubt this has anything to do with 64 vs 32 bit, but rather something with Kodi and/or its integrated Python for ARM/Android. I think I might still have an old Android Xtreamer box somewhere. If I can find it, then I may be able to replicate the issue and work on it.

In the meantime, if anyone has any ideas, feel free to jump in Smile
I tested with another fork of cherrypy script for Matrix, and I'm getting a different error in the log as follows:

T:28578 WARNING <general>: Skin Helper Backup --> Exception details: Type: SyntaxError Value: invalid syntax (zipfile.py, line 349) Traceback: Traceback (most recent call last):
                                                     File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.skin.helper.skinbackup/default.py", line 26, in __init__
                                                       BackupRestore().backuprestore()
                                                     File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.skin.helper.skinbackup/resources/lib/backuprestore.py", line 162, in backuprestore
                                                       self.backup(backup_file=self.get_backupfilename())
                                                     File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.skin.helper.skinbackup/resources/lib/backuprestore.py", line 61, in backup
                                                       zip_tofile(temp_path, zip_temp)
                                                     File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.skin.helper.skinbackup/resources/lib/utils.py", line 193, in zip_tofile
                                                       from . import zipfile
                                                     File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.skin.helper.skinbackup/resources/lib/zipfile.py", line 349
                                                       raise RuntimeError, "Corrupt extra field %s"%(ln,)
                                                                         ^
                                                   SyntaxError: invalid syntax
                                                   
2020-10-10 12:22:27.279 T:28578    INFO <general>: CPythonInvoker(17, /storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/script.skin.helper.skinbackup/default.py): script successfully run
2020-10-10 12:22:27.735 T:28578

I don't know if this helps.
Wanilton uses Kodi18, so unless the other fork you found is compatible with py2 and 3,this won't help him. Please post a link to it.

Also, the error you get now is for skinbackup. Kodi 18 on Android needed a patched zipfile.py which I included a couple of days ago. I'm wondering if Kodi19 would work with the regular zipfile.py and it's only specifically required for Kodi18... I've adjusted skinbackup now. Please test version 1.0.27