Projet open source
nextgenusfs/funannotate avatar
nextgenusfs/funannotate

Funannotate : un pipeline d'annotation de génomes eucaryotes orienté champignons

Ce projet transforme « Eukaryotic Genome Annotation Pipeline. Caveats are that GeneMark is not included in the docker image (see licensing below and you can complain to the developers for making it difficult to distribute/use). » en une solution open source exploitable, avec une chaîne d’outils réutilisable et des moyens d’intégration pour des cas d’usage concrets.

400 étoiles95 forksPythonBSD-2-Clause

En bref

De quoi s’agit-il ?
Le README décrit les installations via Docker, Bioconda et GeneMark et renvoie à readthedocs pour les détails.
À qui s’adresse-t-il ?
Le Le README fournit les commandes funannotate et les variables GeneMark à contrôler ; la documentation readthedocs reste nécessaire pour les entrées, sorties et paramètres d’annotation.
Puis-je l’utiliser commercialement ?
Oui. BSD-2-Clause est une licence permissive : vous pouvez utiliser, modifier et vendre un logiciel qui en dépend, à condition de conserver les mentions de droit d’auteur et de licence.
Est-il encore maintenu ?
Oui. Les derniers commits datent d’il y a 6 jours.
En quel langage est-il écrit ?
Principalement Python, d’après les statistiques de langage de GitHub.

Ces réponses reposent sur les données GitHub du projet (dernière synchronisation le 14 septembre 2026) et sur notre analyse. Elles ne constituent pas un avis juridique.

ANALYSE OPEN SOURCE APPROFONDIE

Périmètre de l'annotation et emplacement des détails

La première phrase de fond du README dit que funannotate est un pipeline d'annotation de génomes, construit spécifiquement pour les champignons mais pouvant aussi fonctionner avec des eucaryotes supérieurs. Les métadonnées du dépôt décrivent le projet comme `Eukaryotic Genome Annotation Pipeline`, ce qui correspond à cette présentation. Le README n'explique pas le déroulement de l'annotation, les fichiers d'entrée, les formats de sortie ou les options de configuration; il renvoie à http://funannotate.readthedocs.io pour l'installation, l'utilisation et plus d'informations. Les commandes de démarrage rapide ne couvrent donc que la mise en place de l'environnement, pas les paramètres de l'annotation elle-même. Pour la prédiction de gènes, l'annotation fonctionnelle ou les rapports, il faut consulter la documentation readthedocs. Le README ne mentionne pas non plus de configuration minimale requise ni de systèmes d'exploitation pris en charge.

Image Docker et bases de données incluses

Le README qualifie Docker de démarrage le plus rapide. `docker pull nextgenusfs/funannotate` récupère une image construite à partir du dernier code de master, donc en avance sur les versions taguées. Cette image contient les bases de données requises; une autre image, `nextgenusfs/funannotate-slim`, fournit funannotate sans les bases de données. Un script d'encapsulation bash optionnel, `funannotate-docker`, peut être téléchargé, rendu exécutable et utilisé comme l'exécutable funannotate. Le README montre `funannotate-docker test -t predict --cpus 12` comme exemple. Le même paragraphe prévient que GeneMark n'est pas inclus dans l'image Docker pour des raisons de licence et invite les utilisateurs à se plaindre aux développeurs. L'image étant basée sur master, elle ne correspond pas nécessairement à une version stable.

Installation via Bioconda, mamba et pip

Pour conda, le README demande d'ajouter les canaux defaults, bioconda et conda-forge, puis de créer un environnement avec `conda create -n funannotate "python>=3.6,<3.9" funannotate`. Il ajoute que si conda est lent, on peut installer mamba dans l'environnement de base et utiliser `mamba create -n funannotate funannotate` en remplacement. Le README ne précise pas quelles dépendances le paquet conda installe ni si GeneMark est installé automatiquement. Deux voies pip sont données : `python -m pip install funannotate` pour le paquet publié, et `python -m pip install git+https://github.com/nextgenusfs/funannotate.git` pour le code le plus récent de master. En dehors de la contrainte dans la commande conda, le README ne précise pas la plage des versions Python prises en charge.

GeneMark-ES/ET nécessite une installation manuelle

GeneMark est la seule dépendance que le README isole pour une installation manuelle. Ceux qui veulent GeneMark-ES/ET doivent l'installer selon les instructions des développeurs sur topaz.gatech.edu/GeneMark/license_download.cgi. Le README n'intègre cet outil dans aucun chemin d'installation. Ensuite, deux ajustements sont nécessaires : changer la ligne shebang de tous les scripts Perl de GeneMark pour utiliser `/usr/bin/env perl`, et ajouter `gmes_petap.pl` au `$PATH` ou définir la variable d'environnement `$GENEMARK_PATH` vers le répertoire gmes_petap. Le README n'explique pas quelles fonctions manquent sans GeneMark ni comment la licence de GeneMark restreint sa distribution.

Citation et versionnage sur la branche master

Le README se termine par une citation : Jonathan M. Palmer et Jason E. Stajich, `Funannotate v1.8.1: Eukaryotic genome annotation` (v1.8), Zenodo, https://doi.org/10.5281/zenodo.1134477. Cette citation donne le numéro de version v1.8.1 et un identifiant Zenodo. Le paragraphe Docker indique que l'image est construite à partir du dernier code de master, donc en avance sur les versions taguées; la version obtenue via Docker peut donc différer de celle de la citation. Le README ne précise pas le numéro de version stable actuel, l'emplacement du journal des modifications ou la politique de création des tags. Les métadonnées montrent que la branche par défaut est master, mais le README ne discute pas de la gestion des branches.

Métadonnées du dépôt et état du projet

Les métadonnées du dépôt enregistrent 397 étoiles, 94 forks et 304 problèmes ouverts, avec Python comme langage déclaré et master comme branche par défaut. Ces chiffres n'apparaissent pas dans le README, qui ne contient aucune section sur l'état du projet, aucune feuille de route et aucune déclaration de maintenance. Le nombre de 304 problèmes est concret, mais le README ne distingue pas les rapports de bogues, les demandes de fonctionnalités et les questions. Le lien de la page d'accueil pointe vers funannotate.readthedocs.io. Pour juger de l'activité du projet, il faut consulter le suivi des problèmes, pas le README. Un nombre élevé de problèmes ouverts ne suffit pas à conclure sur l'état de la maintenance; il faut vérifier la fraîcheur des problèmes et les réponses des mainteneurs.

Conditions de licence et éléments non promis

Le dépôt est sous licence BSD 2-Clause, avec copyright (c) 2016 Jonathan M. Palmer. La licence autorise la redistribution sous forme source et binaire à condition de conserver l'avis de copyright, la liste des conditions et l'exclusion de garantie. Elle rejette les garanties expresses et implicites, notamment la qualité marchande et l'adaptation à un usage particulier, et exclut la responsabilité en cas de dommages. Ces clauses ne concernent que le code lui-même; elles ne constituent pas une promesse de support, de mises à jour de sécurité ou de maintenance. Le README ne fournit pas non plus de repères de performance, de systèmes d'exploitation pris en charge ou d'attentes de déploiement en production. Ces points restent des questions à vérifier, pas des faits documentés.

Conclusion éditoriale

Le Le README fournit les commandes funannotate et les variables GeneMark à contrôler ; la documentation readthedocs reste nécessaire pour les entrées, sorties et paramètres d’annotation.

Sources officielles

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Notes de la communauté

Notes de la communauté