sy6sy2 / xbmc

Kodi is an award-winning free and open source home theater/media center software and entertainment hub for digital media. With its beautiful interface and powerful skinning engine, it's available for Android, BSD, Linux, macOS, iOS and Windows.
https://kodi.tv/
Other
6 stars 1 forks source link

State of Python 3 #77

Open fuzzard opened 4 years ago

fuzzard commented 4 years ago

Just some notes regarding the state of python 3 support.

  1. we have merged into the feature_python3 branch all the python related build stuff. Python builds and runs on an atv based off that branch.

  2. Ive found its best not to use eggs due to file permission issues when extracting to run. What this means is modules like PIL are best to be extracted as part of the build process into AppData/AppHome/addons/. Have working code for this, and have tested against https://github.com/enen92/plugin.image.piltest that enen was kind enough to create as a test for PIL usage.

Potential Issue: as this is now in the tvos cache area, and not Frameworks, this module can be deleted as part of tvos app cleanup mechanisms. There would be no way to get this back without a reinstall of the app. May need to look to link into loading addons from Frameworks for modules?

  1. Most modules i have come across seem to be loading and running ok. Current exceptions
  1. In general python3 compatability seems poor even in kodi's repo

  2. Removal and subsequent adding of addons gives a failure to rename previous files. log from error below. Will need to look into the file system usage.

special%3a%2f%2fhome%2faddons%2fpackages%2fplugin.video.tester-0.0.5.zip/plugin.video.tester/ to /private/var/mobile/Containers/Data/Application/53FC5995-65DE-4EA1-8582-2D775BA2A723/Library/Caches/Kodi/addons/temp/18e13a5f-1438-421f-9233-3e3399dfa1b0 2019-09-01 01:58:43.906318+1000 Kodi[4642:3657994] Debug Print: Rename - Error renaming file /private/var/mobile/Containers/Data/Application/53FC5995-65DE-4EA1-8582-2D775BA2A723/Library/Caches/Kodi/addons/plugin.video.tester 2019-09-01 01:58:43.906400+1000 Kodi[4642:3657994] Debug Print: Failed to move old addon files from '/private/var/mobile/Containers/Data/Application/53FC5995-65DE-4EA1-8582-2D775BA2A723/Library/Caches/Kodi/addons/plugin.video.tester' to '/private/var/mobile/Containers/Data/Application/53FC5995-65DE-4EA1-8582-2D775BA2A723/Library/Caches/Kodi/addons/temp/bd64aed2-379d-4616-8494-76ac39779b79'

Feel free to play/test with the following branch

https://github.com/fuzzard/xbmc/tree/atv_python3

fuzzard commented 4 years ago

Python3 now in main branch. Will just need to wait for more addons to be updated to ease testing.