Skip to content

Packages

Jens Schwidder edited this page Jan 10, 2022 · 2 revisions

Der Code von OPUS 4 ist über mehrere Pakete/Komponenten verteilt.

  • opus4-common
  • framework (wird zu opus4-db werden)
  • opus4-search
  • application (OPUS 4)
  • opus4-bibtex
  • opus4-doi

Die Zahl der Pakete wird zunehmen, um den Code besser strukturieren und warten zu können. Generell ist es denkbar, bei kleinen lokalen Änderungen nur eine neue Version des entsprechende Pakets zu veröffentlichen. Mit dem Umstieg auf Laminas besteht auch das Ziel verstärkt unabhängige Module als Pakete implementieren zu können, die dann zu einer OPUS 4 Installation hinzugefügt werden können, ohne eine neue Version von OPUS 4 veröffentlichen zu müssen. Das wäre z.B. für Export/Import-Format und Klassifikationen nützlich.

Was gehört in welches Paket?

Die meisten Pakete sind von opus4-common abhängig. Das heißt auch, dass bei Änderungen in diesem während der Entwicklung die meisten anderen Pakete mit angefasst werden müssen, um die Abhängigkeiten in composer.json anzupassen.

TODO Wie kann das vereinfacht werden? Zum Beispiel, als das DocumentFinderInterface in Common, Framework und Application eingeführt wurde, musste während der Entwicklung auch Branches für BibTex und Search angelegt werden, damit die Abhängigkeiten durch Composer aufgelöst werden konnten. Gibt es eine Möglichkeit "alle neueren Entwicklungsversionen" in composer.json anzugeben?

opus4-common

Dieses Paket sollte möglichst stabil bleiben, da die meisten anderen Pakete davon abhängig sind. Bei Änderungen muss man dadurch unter Umständen für fast alle anderen Pakete die composer.json Datei anpassen und Branches anlegen.

Clone this wiki locally