It seems that we are still using the script.module.elementtree however this is no longer needed since python version 2.5 and higher. Since XBMC uses python 2.6 or higher it is safe to use elementtree that has been included in python.
To use it simply include this (for example):
import xml.etree.ElementTree as ET
More information can be found here
On next update it would be appreciated if you could replace the used module with the build in one.
It seems that from python 2.7 and up the internal JSON lib is faster than the external script.module.simplejson that most of us use.
To test this out for yourself you can download script.json.performance-0.0.1.zip and try it out for yourself what the difference is.
Note: running the addon gives no indication during it's testing so have some patience until the dialog pops up.
Since some platforms use 2.6 you can use the following code to use the fastest method:
if sys.version_info >= (2, 7):
import json as _json
import simplejson as _json
Tests done with JSON:
- Windows: simplejson is 1.37x faster than json (python 2.6). No difference when using simpljeson version 2.0.10 and 3.3.0
- Android: Android: simplejson is 1.41x faster than json (python 2.6). No difference when using simpljeson version 2.0.10 and 3.3.0
- OpenELEC: json is 12.44x faster than simplejson (python 2.7). No difference when using simpljeson version 2.0.10 and 3.3.0
- Ubuntu: json is 13.2x faster than simplejson (python 2.7). No difference when using simplejson version 2.0.10 and 3.3.0
- iOS: untested
- OSX: untested
- rPi: untested
So all in all using simplejson doesn't seem like the obvious choice. So i would recommend every script dev to use the code posted in OP to use the fastest method.
results may differ per machine/test
We are trying to keep things more tidy so once in a while we try to clean up broken addons or unmaintained ones.
If you have addons that are still in Dharma repo which should be marked broken or removed please contact us so we can take action. We will not allow any updates for them any more so only action is to remove or mark them broken.
If you have addons that are still in Eden repo which should be marked broken or removed please contact us so we can take action.
For Frodo we still allow updates so if you which you could also send an update. No new additions will be allowed.
We would like to request that you updated you plugin with the following:
- Additional information in addon.xml
- set python import to version 2.1.0 (and possible others to the correct version)
To be clear we will not remove them. We would just like to have a more consistent repository for future XBMC versions.
Current list: http://mirrors.xbmc.org/addons/frodo/
Remember that Eden and Frodo versions should differ regarding version number and xbmc.python version when submitted.
Deprecate usage of explicitly setting the player in add-ons
We would like to ask when you update your plugin to no longer use the option for selection the internal player.
So instead of:
* - xbmc.PLAYER_CORE_AUTO
* - xbmc.PLAYER_CORE_DVDPLAYER
* - xbmc.PLAYER_CORE_MPLAYER
* - xbmc.PLAYER_CORE_PAPLAYER
XBMC will auto select the player it needs.