Le moteur de recherche de Google dédié au code Open Source, Code Search, a été arrêté le 12 janvier dernier. Il existe un certain nombre d'alternatives, comme Koders, krugle ou encore Search[code], mais une nouvelle base de données commence à se faire connaître et n'a pas encore été abordée dans les colonnes de LinuxFr.org : Antepedia.
Antepedia se revendique comme la plus grande base de données de composants Open Source. Elle annonce actuellement plus de 221 millions de fichiers référencés provenant de 940 000 projets et être en constante augmentation. En comparaison, Ohloh, une autre base de projets (dont la finalité n'est pas similaire) rachetée récemment par Black Duck Software, un compétiteur, revendique plus de 500 000 projets « seulement ».
NdM : Un grand merci à olivierweb, Lebas Sébastien, Nÿco et Yves Bourguignon pour leur participation à la rédaction de cette dépêche.
Sommaire
Fonctionnement d'Antepedia
Antepedia permet d'uploader un fichier source, et l'analyse, essayant de retrouver le ou les projets dont il est issu. En revanche (contrairement à Ohloh, cité plus haut, par exemple), Antepedia ne permet pas d'explorer la liste des projets connus : seule la recherche d'un fichier existant est disponible sur le site. Son utilité est donc de retrouver l'origine et la licence d'un code particulier. La détection se fait pour le moment au niveau du fichier, mais il semble prévu de pouvoir descendre au niveau des extraits de code source au sein d'un fichier.
Pour avoir une idée des résultats retournés, vous pouvez tester avec un fichier source issu de JUnit par exemple.
Pour le moment, les sources d'alimentation de la base de projet d'Antepedia semblent principalement Google Code et Sourceforge. Aux dernières nouvelles, l'indexation de Github est prévue sous peu. Cette base représenterait 44 To de données, en augmentation de 1 000 projets par jour.
SourceSquare pour buzzer…
SourceSquare est un logiciel sous licence AGPLv3 permettant de scanner un répertoire de son disque dur pour identifier les composants Open Source présents. « Find out if you are an open source freak or not! » comme le dit leur site web. Il se présente sous la forme d'un fichier jar à exécuter en local et permet de choisir le répertoire à analyser. Le résultat s'affiche sous la forme d'une petite application web locale, offrant une « TreeMap », tout en y incluant un peu de gamification : une série de « badges » obtenus en fonction du contenu du répertoire analysé. À noter que l'analyse peut prendre un certain temps, pour ne pas dire un temps certain, l'application communiquant avec la base Antepedia. Vous devez donc être connecté à Internet.
Comme nous sommes curieux et joueurs, nous avons lancé l'outil sur les dernières sources de LinuxFr.org et voici le résultat :
Au final, seulement 7 % de code Open Source, ce qui nous vaut le badge « Open What? » et pas mal d'images à priori (plus de 25 % de nos fichiers, la plupart situés dans public/images
), ce que distingue le badge « Picasso wannabe ». On devine clairement que Github n'est pas encore (complètement ?) indexé.
…et la suite d'outil d'Antelink pour travailler
Antelink propose trois outils pour interagir tout au cours du processus de développement, depuis le poste du développeur jusqu'au packageur en passant par le juriste de votre entité.
- Antepedia Developer, plugin de l'IDE Eclipse qui permet de détecter au plus tôt la réutilisation (volontaire ou non) de code Open Source afin :
- d'anticiper les problématiques de conflits de licence et d'éviter de le découvrir trop tard ;
- de remonter au développeur les failles de sécurité connues reliées aux composants réutilisés ;
- Antepedia Notifier qui lui se branche sur le gestionnaire de source pour détecter à chaque commit si un fichier est composant Open Source connu ou non et éventuellement envoie un email et/ou remplit un outil de suivi de tâches (les cas d'usage restent les mêmes grosso-modo) ;
- Antepedia Reporter quant à lui, arrive plus en fin de course et comme son nom l'indique, permet de générer un rapport sur l'ensemble d'un projet, typiquement pour générer le fichier manifest ou Bill of material (BOM) pour s'assurer du respect de ses obligations.
Pour le projet LibreOffice, l'outil a par exemple tenté de fournir une répartition visuelle des sources provenant d'OpenOffice.org de celles qui étaient propres à Libre Office. Voici ce que cela donne :
Au final, ce sont des outils propriétaires et payants, mais tout comme Atlassian avec ses outils comme JIRA, Antelink propose des licences pour les projets Open Source qui veulent s'analyser.
FOSSology, la solution libre
Il ne semble pas y avoir d'alternative complètement libre à la solution d'Antelink. L'outil libre le plus connu est certainement FOSSology, initié par HP et distribué sous licence GPLv2 et une partie en LGPLv2.1. D'ailleurs Antelink se présente comme une solution complémentaire à FOSSology et non directement en concurrence. Ils font même des présentations communes avec Bruno Cornec (en charge du projet pour HP). FOSSology est plus un outil d'analyse et d'extraction d'informations et méta-données : recherche sur les signatures de licences, les développeurs, le packaging, droits d'auteurs, droit des marques, courriels, URLs, dépendances, description, version, etc. Là où Antelink se base sur un hash des fichiers et utilise sa base de données de composants Open Source qu'il connaît, FOSSology utilise sa connaissance des différentes licences pour les retrouver au sein des sources analysées. Les deux approches en parallèle permettent donc d'avoir une vue relativement exhaustive de son « patrimoine » de composants Open Source utilisés en interne.
Aller plus loin
- Antepedia (1108 clics)
- SourceSquare (111 clics)
- La suite d'outils pour Antepedia sur Antelink (71 clics)
- FOSSology (64 clics)
- L'arrêt de Google Code Search (85 clics)
- Comparaison entre FOSSology et les outils d'Antelink (52 clics)
- Ohloh, base de projets Open Source (60 clics)
# Faux amis
Posté par DerekSagan . Évalué à 1.
Le mot français pour "compétiteur" c'est "concurrent" (sauf si c'est un sport).
[^] # Re: Faux amis
Posté par Florent Zara (site web personnel, Mastodon) . Évalué à 3.
Ah ! Bon… pourtant il me semblait…
[^] # Re: Faux amis
Posté par jcr83 . Évalué à 5.
De même, "initiated by HP" ne se traduit pas par "initié par HP" …
# oh ce logo
Posté par Inigo Montoya . Évalué à 5.
Ça a l'air drôlement intéressant même si je n'en ai pas l'utilité, mais… je suis le seul à trouver que le logo ressemble furieusement à un vieux logo d'archlinux ?
[^] # Re: oh ce logo
Posté par Jiel (site web personnel) . Évalué à 3.
Non, d'ailleurs j'étais en train de me demander où j'avais déjà vu ce logo.
[^] # Re: oh ce logo
Posté par antelink (site web personnel) . Évalué à 1.
Pourquoi pas…
On nous parle aussi régulièrement du logo de Star Trek :-)
# SourceSquare ne marche pas
Posté par from_kobb . Évalué à 3.
Manifestement les résultats sont affichés dans un navigateur, mais quand on clique sur le bouton idoine, on a l'exception suivante :
En effet, cette API n'est disponible que sous windows ou gnome. Dommage.
[^] # Re: SourceSquare ne marche pas
Posté par antelink (site web personnel) . Évalué à 1.
Merci pour votre retour. J'ai rentré une issue sur GitHub:
https://github.com/antelink/SourceSquare/issues/41
Nous avons testé l'application avec succès sur Windows, Mac OS X et Gnome.
Pouvez-vous nous dire sur quel système vous êtes?
Au pire, il vous suffit d'ouvrir un browser sur http://localhost:9524/ - mais nous allons essayer de traiter l'exception de manière plus acceptable !
[^] # Re: SourceSquare ne marche pas
Posté par from_kobb . Évalué à 2.
Debian Wheezy (et j'utilise KDE)
# Antelink
Posté par ckyl . Évalué à 4.
J'espère que ca marche mieux que leurs précédant outils.
Pour avoir eu à faire avec eux il y a quelque temps; leurs outils sortaient des résultats bien douteux. Encore pire ils n'ont jamais pu nous expliquer le rationnel en dehors d'un discours "C'est une analyse qualitative blahblahblah" permettant d'éviter toute réponse précise même quand on leur donnait des exemples précis d'incohérences flagrantes.
[^] # Re: Antelink
Posté par Sylvestre Ledru (site web personnel) . Évalué à 2.
Autre son de cloche (et sans être anonyme ;) )
Nous, chez Scilab, on utilise leurs outils depuis un moment. On en est très content (d'autant qu'ils écoutent nos remarques et nos demandes).
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.