• [^] # Re: C'est moi ou c'est idiot ?

    Posté par (site web personnel, Mastodon) . En réponse au journal Google forke C++. Évalué à 5.

    Je suis curieux, alors j'ai creusé un peu.

    • Pour Protégé, le problème vient en fait d'Apache Felix, une dépendance qu'ils ont dans une vieille version et qui a besoin d'une version spécifique pour fonctionner avec Java 9+. Alors pourquoi cette bibliothèque a besoin d'une version spécifique Java 9+ et n'est pas rétrocompatible ? C'est pas très clair, mais je dirais que c'est à cause des changements de comportements dans le classloader. Je me permet aussi d'émettre un doute sur la qualité du code de Protégé : le fichier de démarrage force la taille de la pile à 16 Mo (!) par défaut, ce qui est gigantesque et extrêmement inhabituel.
    • Pour ImageJ, ils utilisent assez massivement le moteur JS intégré à Java... qui a changé et finalement été supprimé. Là effectivement, c'est dommage, ils ont parié sur une solution non pérenne pour leur outil.
    • OMERO je ne sais pas, le projet a l'air assez verrouillé.
    • Freeplane, je n'ai pas trouvé de vrais tickets sur une incompatibilité avec Java 17. Ceux que je trouve sont soit des gens qui ont essayé de faire tourner ce programme graphique avec un JRE headless, soit des vérifications préliminaires qui plantent, mais qui ne semblent avoir été qu'une vérification un peu trop stricte du numéro de version de Java (le fait qu'il ne validait que 8, 11 à 16 me fait penser que les développeurs forçaient un peu violemment une version « officiellement supportée » du JRE).

    Dans les deux premiers cas, on est un peu sur des cas aux limites : l'ABI est compatible, l'API est compatible, mais quelque chose dans les outils et/ou la configuration externe fait que ça ne fonctionne plus. C'est clairement une rupture de compatibilité, mais à quel point c'est imputable à une non rétrocompatibilité de l'ABI ou de l'API de Java ?

    La connaissance libre : https://zestedesavoir.com