On 2019-03-18 15:15, Christopher Arndt wrote:
ich suche eine Library, mit der ich Abhängigkeiten zwischen Dateien und den von ihnen "include"-ten Dateien modellieren kann und mit der ich herausfinden kann, welche Dateien aktualisiert werden müssen, wenn sich eine von ihnen ändert. [...]
Ich kenne zwar keine Library für genau diesen Anwendungsfall, aber das klingt für mich nach einem gerichteten Graphen, in dem die Knoten die Dateien und die Kanten die Relation "hängt ab von" sind. Du könntest mit einer Graphen-Bibliothek deinen Graphen anlegen und dann traversieren. Ich kann mir auch gut vorstellen, dass es schon Funktionen gibt, die näher an dem dran sind, was du haben willst (à la "gib mir alle Abhängigkeiten ausgehend von Knoten X"). Gegebenenfalls musst du dir überlegen, wie du mit zyklischen Abhängigkeiten umgehst, auch wenn die in deinem Fall natürlich nicht vorkommen "sollten", aber je nach den Dateien könnte sich sowas ergeben. An Graphen-Bibliotheken habe ich folgende Treffer gefunden: https://networkx.github.io/ (hatte ich auch schon oft gehört) https://igraph.org/ https://graph-tool.skewed.de/ Und hier noch eine Übersicht im Python-Wiki: https://wiki.python.org/moin/PythonGraphLibraries
Kennt da jemand was, dass sich leicht in vorhandenen Code integrieren lässt und sich auch nicht zu viel anderen Ballast mitbringt (also nicht in sich geschlossene Frameworks wie z.B. Scons)?
Ob dir die obigen Bibliotheken zu viel Ballast sind, musst du letztlich selbst beurteilen. :-) Viele Grüße Stefan