[repository.xbmc.org] Use dir in extension point #21029
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
It was brought to my attention by @Lunatixz that our addon-checker was failing to validate valid addon.xml definitions for repository addons. That made me look into the implementation in the Kodi core and find out we currently (and since at least gotham) we support two ways of defining a repo structure, with and without
dirs
:and the ancient way (dharma compatible?):
The wiki was also lacking most of this info, so added in https://kodi.wiki/view/Add-on_repositories
I've made the necessary changes in xbmc/addon-check#256 but it's not fail-proof. With xsd 1.0 we can't make sure that if a dir does not exist the other elements (info/checksum, etc) must exist. Might be possible with xs:assert in higher xsd versions but that requires deep changes in addon checker.
Thinking a bit more about this, I don't think there's a reason to continue supporting the "dharma" way if the option with
dirs
is more recent and more flexible (it supports min and max versions for example).So I plan to remove the ancient support in Kodi. As far as I could see, all the mainstream external repos use dir anyway. I am not sure about dodgy/illegal addon repos but I/we don't care for them anyway. Unfortunately our official addon repo is still stuck with the older schema :)
That's all this PR does, it updates the repo to use the up to date schema for repos.
Will remove the support for the older definition type in a follow up PR.
How has this been tested?
Runtime tested
What is the effect on users?
None