Kodi a cassé tous mes addons!

Depuis la sortie 19.0 “Matrix”, nous avons entendu beaucoup de bruit sur la façon dont les addons ont cessé de fonctionner, et pourquoi nous sommes tous de très mauvaises personnes pour faire cela. Nous pensons qu’il serait bien d’aider les gens à comprendre ce qui se passe ici – principalement parce que nous sommes fatigués d’essayer d’expliquer, et cela économisera énormément de coups de gueule sur le net, ou sur Facebook, ou ailleurs.

– team kodi, 18 mars 2021

Un savoureux billet publié en mars dernier par Team Kodi que je me permet de vous partager ici…

Mise en contexte

N’oubliez pas, tout d’abord, que Kodi lui-même ne se met  pas  automatiquement à jour. 

Nous pouvons vous dire qu’une nouvelle version est disponible, bien sûr, mais nous ne vous imposons jamais une nouvelle version : c’est entièrement un produit du système d’exploitation et de la configuration que vous avez choisis. 

  • Il est probablement activé par défaut ; 
  • c’est peut-être quelque chose que vous devez déclencher ; 
  • il s’agit peut-être d’un processus entièrement manuel, mais il n’est pas sous notre contrôle. 

Nous ne vous « imposons vraiment pas une nouvelle version », mais nous ne pouvons rien faire pour arrêter une mise à jour automatique si vous l’avez activée.

De l’histoire ancienne…

Alors, d’où vient tout cela ?

Les addons de Kodi fonctionnaient traditionnellement en Python 2, qui a été publié pour la première fois en  octobre 2000 

Quelques années après sa sortie – dans les jours lointains de 2008, lorsque Katy Perry et Kings of Leon étaient les nouveaux enfants de la ville, et que The Dark Knight et Indiana Jones étaient encore énormes au cinéma – il a été annoncé que Python 2 devait etre en fin de vie en 2015.

Avant d’y arriver, cependant, l’équipe Python s’est rendu compte que les gens tardaient à faire le changement et a décidé de prolonger cette date de fin de vie jusqu’au 1er janvier 2020.

Vous pouvez tout lire à ce sujet  ici .

Alors, conscients que le temps presse et que nous étions déjà en retard, nous avons annoncé en janvier 2018 que nous abandonnerions le support Python 2 de Kodi  dans la version 19 . Étant donné que nous étions sur 17.x “Krypton” à l’époque, et que nous n’avions apporté aucune modification majeure à Python depuis le passage à Python 2 en 2013, cela semblait juste. N’oubliez pas non plus que 18 “Leia” n’a vu le jour en tant que version finale qu’en janvier 2019, donc Kodi 19 n’allait pas vraiment sauter soudainement sur qui que ce soit – nous avons donc estimé que c’était un préavis suffisant pour développeurs et utilisateurs à se préparer au changement. 

  • Après tout, ce n’est pas seulement notre problème : toute l’industrie du logiciel a dû faire ce changement…

Les versions Python 3 de 18.x “Leia” étaient disponibles et le code se trouvait dans la branche de fonctionnalité Python 3 – mais celle-ci a été fusionnée en  octobre 2019 , donc toute version postérieure à cette date l’aurait incluse. 

  • Les versions de développeur de Kodi 19 sont devenues disponibles en  novembre 2019 
  • les versions Alpha ont suivi en août de l’année dernière. 

Cela signifie que près de deux ans après avoir annoncé que nous faisions le changement, les premières versions de test d’un pur Python 3 Kodi sont devenues disponibles – et nous avons finalement changé notre code de publication un peu plus d’un an plus tard. 

  • C’est trois ans après l’annonce initiale!!!

… À aujourd’hui

Et pourtant… et pourtant…

Le mouvement semble avoir pris les gens par surprise! 

Les systèmes d’exploitation ont abandonné la prise en charge de Python 2 ; c’est un énorme risque de sécurité, car il (et ses bibliothèques) ne sont pas maintenus ; vous ne devriez pas l’utiliser à moins que vous n’y soyez vraiment obligé. Et encore…

Pour vraiment mettre du sel dans la plaie, ce ne sont pas vraiment  nos  addons qui causent du chagrin. Certaines plaintes justifiables concernent les skins, et nous comprenons que : si vous avez un skin préféré qui n’est pas compatible avec la nouvelle version, ou qui est passé de mode, alors c’est un choc de devoir changer – mais les développeurs de skin ont le droit maintenir ou ne pas maintenir leur travail, cela ne dépend que d’eux. Ce ne sont pas seulement les skins, cependant : il y a de très nombreux addons tiers qui ont des problèmes, et c’est là que nous obtenons beaucoup de critiques.

On peut soutenir que vous ne devriez vraiment pas les utiliser s’ils vous obligent à utiliser une plate-forme non gérée, mais c’est votre choix. Nous avons vraiment fait de notre mieux, et nous n’avons tout simplement aucune influence ou contrôle sur ces addons, aussi utiles qu’ils puissent être, quelle que soit l’utilisation que vous en ferez. Il existe une réalité simple selon laquelle les modifications majeures des versions laissent presque toujours une plate-forme ou un composant derrière elles, et il existe une vérité selon laquelle les addons se fanent et meurent souvent – si l’auteur ne veut pas les maintenir, ils finissent par pourrir.

Options, Options, Options

Alors, pleurnicher. Que pouvez-vous faire si vous êtes pris au piège.

  • Eh bien, si vous le souhaitez vraiment, vous pouvez vous en tenir à Python 2 avec les addons de votre choix : restez sur 18.x “Leia” et ne mettez jamais à jour votre système d’exploitation, car un futur correctif ou une mise à niveau en gros est susceptible de supprimer Python 2.
  • Si vous êtes sur Android et que vous avez eu une mise à jour forcée, sachez que la « mise à jour automatique » est activée par défaut sur les applications du Play Store: Désactivez-le et vous vous en tiendrez à la version que vous avez installée. Vous  pouvez  également le faire application par application, mais cela varie selon la plate-forme Android.
    • Si vous utilisez Linux, faites attention à la  mise à jour apt  ou similaire, car les référentiels sont susceptibles de vous déplacer automatiquement vers la prochaine version (notre PPA le fera certainement). De même, une mise à jour du système d’exploitation est susceptible de récupérer différentes versions de toutes les applications préinstallées, y compris Kodi, si elle provient d’un référentiel géré par la distribution.
    • Si vous utilisez une plate-forme « bundle » JeOS, assurez-vous de désactiver la mise à jour automatique dans les  paramètres  – ou gardez un œil dessus, de toute façon. LibreELEC est probablement la plate-forme la plus courante ici, et de toute façon, il n’y a pas de mise à jour automatique entre les versions principales (“canaux”), mais d’autres plates-formes existent, ou vous avez peut-être mis à jour manuellement.
    • Windows, cela dépend de la façon dont vous l’avez installé. Si vous avez téléchargé à partir de notre site Web, ne le mettez tout simplement pas à niveau ; si vous utilisez la version UWP du Windows Store, vous devrez désactiver “Mettre à jour automatiquement les applications” pour toutes les applications.
    • Les appareils Apple sont généralement installés par l’utilisateur (par exemple, téléchargés sur le côté), donc n’installez pas quelque chose de nouveau. L’exception est si vous utilisez un dépôt sur un appareil jailbreaké (par exemple Cydia) – auquel cas, vous êtes dans le même bateau que les utilisateurs de dépôt Linux
  • Si vous avez déjà effectué la mise à jour, vous pouvez normalement revenir en arrière. Cela peut être délicat sur certaines plateformes (par exemple Android), où vous devrez faire attention à désinstaller l’application  mais pas les données , puis réinstaller l’application seule. De même, sur une distribution JeOS, vous devrez probablement exporter vos paramètres de bibliothèque et d’extension là où vous le pouvez, réinstaller, puis tout réimporter. Expliquer pour chaque plate-forme est en dehors de la portée de cet article de blog, alors peut-être vous tourner vers le forum pour obtenir de l’aide ici.
  • Sachez que  chaque  version majeure de Kodi met à niveau votre base de données. La rétrogradation devrait immédiatement revenir à la version précédente quel que soit son état lors de la mise à niveau, mais il y a des implications si vous utilisez une base de données partagée sur plusieurs versions client.
  • Vous pouvez faire pression sur vos auteurs d’addons pour qu’ils sortent leurs doigts collectifs et passent à Python 3 – comme indiqué ci-dessus, ce n’est guère une nouvelle pour personne. À part les addons que nous écrivons et fournissons, nous n’avons absolument aucun contrôle ni aucune influence sur leur portage sur Python 3 ou sur leur maintien sur 2 (et vous ne pouvez donc pas dépasser Kodi 18 “Leia”).

Nous ne prévoyons actuellement aucun changement futur de cette ampleur, donc les prochaines versions seront probablement beaucoup plus faciles. Cependant, avec ces versions à venir, tout comme celle-ci, vous avez le choix et vous contrôlez toujours vos propres appareils – alors, s’il vous plaît, ne nous lancez pas et ne nous laissez pas de mauvaises critiques lorsque nous avons vraiment fait de notre mieux ici, et pourtant quelque chose hors de notre contrôle (votre plate-forme, vos paramètres, des modules complémentaires tiers, peut-être même des référentiels tiers) a cassé quelque chose.

</grump>

Laisser un commentaire