Ich komme aus dem Perl-Bereich, wo das CPAN so geniale Module anbietet wie
Algorithm::Dependency. Besonders das Untermodul A::D::Ordered hat mir schon echt viel Entwicklungsarbeit erspart. Wichtig ist mir, dass das Modul nicht zu fest mit dem Nutzungskontext "Software installieren" vertäut ist. Er muss auf jede Art von Objekten, eigentlich reichen auch nackte IDs als Zahl oder String, anwendbar sein, zu denen ich im Vorfeld die Abhängigkeiten ermittelt habe. Konkret soll mir das Modul diesen etwa als Dictionary of Lists spezifizierten Graph von Abhängigkeiten prüfen - Sind alle Abhängigkeiten erfüllt? Ist das Gestrüpp frei von Zirkelschlüssen? - und mir im Erfolgsfall etwa die beteiligten Referenzen in einer Reihenfolge zurückgeben, die diese Abhängigkeiten berücksichtigt.
Gibt es so etwas auch für Python?
Klar könnte ich das selbst schreiben (hier gäbe es ein
How-to), auf den ersten Blick ist der Aufwand ja recht überschaubar. Die Auflösung von Abhängigkeiten ist allerdings nicht das Kerngeschäft der Projekte, in denen ich involviert bin, so dass ich hier bewährten Code von Dritten eigenem vorziehen würde. (OT: Kerngeschäftscode schreibe ich dagegen jedenfalls lieber selbst, aber so macht halt jeder seine Erfahrungen und lernt daraus, gell?

)
Suche ich im PIP-Repository, finde ich zwei Module, die vom Namen her diesem Zweck entsprechen.
- dependency-graph 1.0.0 (Hompage -> 404)
- DependencyGraph 1.0.0 (Homepage -> 404)
In beiden Python-Projekten, die ich zur Zeit betreue, brauche ich wahrscheinlich einen solchen Algorithmus. Ist das Problem für den geneigten Programmierer so trivial, dass es noch kein Modul gibt, das via PIP installiert werden kann? Hoffentlich werde ich zumindest jetzt mit besseren Begriffen beworfen, mittels denen ich besser suchen sollte.
Danke und viele Grüße
Gotridofmyphone