Open-Source-Projekt
nextgenusfs/funannotate avatar
nextgenusfs/funannotate

Funannotate: eine auf Pilze ausgerichtete eukaryotische Genom-Annotations-Pipeline

Dieses Projekt rundet „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).“ zu einer praxistauglichen Open-Source-Lösung zusammen, mit wiederverwendbarer Tooling- und Integrationsunterstützung für reale Anwendungsfälle.

400 Sterne95 ForksPythonBSD-2-Clause

Auf einen Blick

Was ist das?
Das README beschreibt Installationswege über Docker, Bioconda und GeneMark und verweist für Details auf readthedocs.
Für wen ist es gedacht?
Das README nennt Installationswege und eine Zitierreferenz, überlässt die Details der Annotation jedoch der readthedocs-Dokumentation.
Darf ich es kommerziell nutzen?
Ja. BSD-2-Clause ist eine freizügige Lizenz: Sie dürfen darauf aufbauende Software nutzen, verändern und verkaufen, solange Sie die Urheberrechts- und Lizenzhinweise beibehalten.
Wird es noch gepflegt?
Ja. Die letzten Commits kamen vor 6 Tagen.
In welcher Sprache ist es geschrieben?
Hauptsächlich Python, laut der Sprachstatistik von GitHub.

Die Antworten beruhen auf den GitHub-Daten des Projekts (zuletzt abgeglichen am 14. September 2026) und auf unserer Analyse. Sie sind keine Rechtsberatung.

TIEFGEHENDE OPEN-SOURCE-ANALYSE

Anmerkungsumfang und Ort der Details

Der erste inhaltliche Satz des README besagt, dass funannotate eine Pipeline zur Genomannotation ist, die speziell für Pilze gebaut wurde, aber auch mit höheren Eukaryoten funktioniert. Die Repository-Metadaten beschreiben das Projekt als `Eukaryotic Genome Annotation Pipeline`, was zur Aussage des README passt. Das README erklärt weder den Ablauf der Annotation noch Eingabedateien, Ausgabeformate oder Konfigurationsoptionen; es verweist für Installation, Nutzung und weitere Informationen auf http://funannotate.readthedocs.io. Die Schnellstart-Befehle decken also nur die Einrichtung der Umgebung ab, nicht die Parameter der Annotation selbst. Wer Genvorhersage, funktionale Annotation oder Ergebnisberichte verstehen möchte, muss die readthedocs-Dokumentation heranziehen. Auch Mindestsystemanforderungen oder unterstützte Betriebssysteme sind im README nicht genannt.

Docker-Image und enthaltene Datenbanken

Das README bezeichnet Docker als den schnellsten Start. `docker pull nextgenusfs/funannotate` lädt ein Image, das aus dem neuesten Stand des master-Zweigs erstellt wurde und daher vor getaggten Releases liegt. Dieses Image enthält die benötigten Datenbanken; ein separates Image, `nextgenusfs/funannotate-slim`, enthält funannotate ohne Datenbanken. Ein optionales Bash-Wrapper-Skript namens `funannotate-docker` kann heruntergeladen, ausführbar gemacht und wie das funannotate-Programm verwendet werden. Das README zeigt als Beispiel `funannotate-docker test -t predict --cpus 12`. Im selben Absatz wird gewarnt, dass GeneMark aus Lizenzgründen nicht im Docker-Image enthalten ist, und die Nutzer werden aufgefordert, sich bei den Entwicklern zu beschweren. Da das Image auf master basiert, ist es nicht unbedingt eine stabile Version.

Bioconda-, mamba- und pip-Installation

Für conda weist das README an, die Kanäle defaults, bioconda und conda-forge hinzuzufügen und dann eine Umgebung mit `conda create -n funannotate "python>=3.6,<3.9" funannotate` zu erstellen. Falls conda zu lange braucht, wird empfohlen, mamba in der base-Umgebung zu installieren und `mamba create -n funannotate funannotate` als Ersatz zu verwenden. Das README listet nicht auf, welche Abhängigkeiten das conda-Paket mitbringt oder ob GeneMark automatisch installiert wird. Es gibt zwei pip-Wege: `python -m pip install funannotate` installiert das veröffentlichte Paket, und `python -m pip install git+https://github.com/nextgenusfs/funannotate.git` installiert den aktuellen master-Code. Außer der Einschränkung im conda-Befehl nennt das README keinen allgemeinen Python-Versionsbereich.

GeneMark-ES/ET erfordert manuelle Einrichtung

GeneMark ist die einzige Abhängigkeit, für die das README eine manuelle Einrichtung verlangt. Wer GeneMark-ES/ET nutzen möchte, muss es gemäß den Entwickleranweisungen unter topaz.gatech.edu/GeneMark/license_download.cgi installieren. Das README bindet das Werkzeug in keinen Installationspfad ein. Danach sind zwei Anpassungen nötig: Die Shebang-Zeile aller Perl-Skripte in GeneMark muss auf `/usr/bin/env perl` geändert werden, und `gmes_petap.pl` muss in `$PATH` aufgenommen oder die Umgebungsvariable `$GENEMARK_PATH` auf das gmes_petap-Verzeichnis gesetzt werden. Das README erklärt nicht, welche Funktionen ohne GeneMark fehlen oder wie genau die GeneMark-Lizenz die Verteilung einschränkt.

Zitat und Versionierung über master

Am Ende des README steht ein Zitat: Jonathan M. Palmer und Jason E. Stajich, `Funannotate v1.8.1: Eukaryotic genome annotation` (v1.8), Zenodo, https://doi.org/10.5281/zenodo.1134477. Das Zitat nennt die Version v1.8.1 und eine Zenodo-Aufnahmenummer. Der Docker-Absatz sagt, dass das Image aus dem aktuellen master-Code erstellt wird und damit vor getaggten Releases liegt; die per Docker bezogene Version kann sich also von der im Zitat unterscheiden. Das README nennt weder die aktuelle stabile Versionsnummer noch einen Ort für Änderungsprotokolle oder eine Release-Tagging-Politik. Die Metadaten zeigen master als Standardzweig, aber das README selbst geht nicht auf die Zweigstrategie ein.

Repository-Metadaten und Projektstatus

Die Repository-Metadaten verzeichnen 397 Sterne, 94 Forks und 304 offene Issues, mit Python als angegebener Sprache und master als Standardzweig. Diese Zahlen kommen im README nicht vor; es gibt dort keinen Statusabschnitt, keine Roadmap und keine Wartungsaussage. Die Zahl 304 ist konkret, aber das README unterscheidet nicht, wie viele davon Fehlerberichte, Feature-Wünsche oder Fragen sind. Die Homepage verweist auf funannotate.readthedocs.io. Wer die Aktivität des Projekts beurteilen will, sollte den Issue-Tracker ansehen und nicht das README. Aus einer hohen offenen Issue-Zahl allein lässt sich kein Wartungszustand ableiten; man muss die Aktualität der Issues und Antworten der Betreuer prüfen.

Lizenzbedingungen und nicht zugesagte Eigenschaften

Das Repository steht unter der BSD-2-Clause-Lizenz, Copyright (c) 2016 Jonathan M. Palmer. Die Lizenz erlaubt die Weiterverbreitung in Quell- und Binärform, sofern der Copyright-Hinweis, die Bedingungsliste und der Haftungsausschluss beibehalten werden. Sie lehnt ausdrückliche und stillschweigende Garantien ab, einschließlich der Marktgängigkeit und der Eignung für einen bestimmten Zweck, und schließt Schadensersatzansprüche aus. Diese Klauseln betreffen nur den Code selbst; sie sind kein Versprechen von Support, Sicherheitsupdates oder Wartung. Das README enthält auch keine Leistungsbenchmarks, keine unterstützten Betriebssysteme und keine Erwartungen an den Produktionsbetrieb. Diese Punkte bleiben offene Fragen und sind keine dokumentierten Tatsachen.

Redaktionelles Fazit

Das README nennt Installationswege und eine Zitierreferenz, überlässt die Details der Annotation jedoch der readthedocs-Dokumentation.

Offizielle Quellen

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Community-Notizen

Community-Notizen