Pour gérer vos consentements :
Categories: LogicielsOpen Source

Le legacy s’installe aussi dans l’open source

À quand une convention de nommage standardisée et surtout mise en pratique ? La Fondation Linux déplorait déjà ce manque en 2015, au moment de publier son premier recensement des composants open source les plus utilisés. Une deuxième vague vient de paraître… et le constat n’a pas changé. Avec, à la clé, la même perte de temps pour mettre les données en forme et ls analyser.

Ce n’est pas là le seul obstacle pointé du doigt. La gestion des versions pose aussi problème : les organisations qui ont tendance à adopter leurs propres numérotations une fois les composants intégrés à leurs projets.

La Fondation Linux déplore également l’importante proportion de paquets populaires hébergés sur des comptes individuels, moins sécurisables que les comptes d’organisations. Elle souligne par ailleurs l’existence d’une forme de legacy. Avec plusieurs exemples :

– minimist qui reste plus répandu que yargs, plus récent et plus fonctionnel
– L’usage encore important de FindBugs, que ses mainteneurs ont pourtant délaissé en 2017 au profit de SpotBugs
– La présence plus fréquente, sur l’échantillon pris en considération, de versions obsolètes de Log4j (1.x) que de versions 2.x

Debug, Lodash, SLF4J et le SDK Go d’AWS en tête des charts open source

De quel échantillon parle-t-on ? D’environ 600 000 observations effectuées en 2020 sur des bibliothèques exploitées en production. Les données, anonymes, proviennent de scans manuels et automatisés réalisés par des fournisseurs d’outils d’analyse de composition logicielle.

La Fondation Linux le reconnaît : sa méthodologie n’est pas exhaustive. Et pour cause : elle n’englobe que les paquets présents au moins sur GitHub ou Libraries.io. Elle exclut en outre certains éléments. Entre autres, les dépendances signalées comme optionnelles et celles non utilisées à l’exécution.

Au bout du compte, il en ressort plusieurs top 500 des composants les plus populaires. En l’occurrence, huit. Avec trois segmentations principales. Premièrement, en tenant ou pas compte des versions. Deuxièmement, en se limitant à npm ou au contraire en l’excluant (conséquence d’une surreprésentation de JavaScript dans l’échantillon). Troisièmement, en incluant ou non les dépendances indirectes.

Dépendances indirectes incluses, le paquet npm le plus utilisé est debug (utilitaire de débogage). Hors npm, il s’agit du SDK Go d’AWS (aws-sdk-go). Si on s’en tient aux appels direct, lodash (bibliothèque de programmation fonctionnelle) arrive en tête dans la catégorie npm. Hors npm, c’est slf4j-api (API de journalisation).

(Cliquer pour agrandir.)

Lorsqu’on tient compte des versions et des dépendances indirectes, Log4j ressort dans le top 10 hors npm. Mais dans une mouture plus prise en charge (1.2.17).

(Cliquer pour agrandir.)

Illustration principale © monsitj – Adobe Stock

Recent Posts

ChatGPT : le Financial Times signe avec OpenAI

FT Group, éditeur du Financal Times, a signé un accord avec OpenAI afin d'utiliser ses…

2 jours ago

Les hyperscalers renforcent leurs recherches et datacenters pour l’IA

Au premier trimestre, Microsoft, Meta/Facebook et Alphabet/Google ont déjà investi plus de 32 milliards $…

2 jours ago

Cybersécurité : Darktrace dans l’escarcelle de Thoma Bravo

La société britannique de cybersécurité Darktrace a accepté une offre de rachat de 5,32 milliards…

2 jours ago

Étude Trends of IT 2024 : comment les managers IT développent leurs projets

Silicon et KPMG lancent la deuxième édition de l'étude Trends of IT. Cette édition 2024…

3 jours ago

Atos : l’Etat veut acquérir les activités souveraines

Le ministère de l'économie a adressé une lettre d'intention à la direction d'Atos pour racheter…

3 jours ago

Arnaud Monier – SNCF Connect & Tech : « Notre moteur, c’est l’innovation et nous procédons par incrémentation »

Directeur Technologie de SNCF Connect & Tech, Arnaud Monier lance une campagne de recrutement pour…

3 jours ago