Verwalten von Composer-Abhängigkeiten von Contrib-Modulen zu Drupal 8

7

Angenommen, ich habe ein Modul, das eine composer.json-Datei verfügbar macht. Mit dem Composer-Manager kann ich sie mit anderen Modulen zusammensetzen. Composer.json.

In Drupal 8 werden composer.json vom Kern aus verwendet. Ist es also möglich, Abhängigkeiten zu vermeiden, die mit Contrib-Modulen dupliziert werden? Wird dafür noch Composer-Manager verwendet?

B2F
quelle
Es gibt einen Start-Patch, um den Composer-Manager auf D8 zu portieren. Drupal.org/node/2054947
B2F
Dies kann Ihnen eine Richtung geben. crossfunctional.net/blog/2013/may/…
Gokul NK

Antworten:

1

Im Moment ist dies nicht möglich und es sieht nicht so aus, als würde es in Drupal 8 kommen, da Drupal im Code-Freeze ist.

Versuchen Sie stattdessen, Ihre Abhängigkeiten mithilfe der * .info.yml-Datei Ihres Moduls (dies hängt von anderen Modulen ab) oder mit http://drupal.org/project/libraries zu verwalten , das für Bibliotheken von Drittanbietern bestimmt ist.

Es ist derzeit keine gute Idee, herauszufinden, warum die Verwendung von Composer für Drupal 8-Modulen keine gute Idee ist:

  1. Sie können nicht erwarten, dass Site Builder Composer kennen und eine "Composer-Installation" durchführen, nachdem Sie Drupal auf ihren Computer heruntergeladen haben, da Drupal nicht nur für Personen gedacht ist, die mit der Befehlszeile vertraut sind.
  2. Aus diesem Grund müssten Sie den Composer selbst installieren und den gesamten Code in Ihr Repository übertragen. Dies ist zwar für Code von Drittanbietern, der der GPLv2 entspricht, rechtlich möglich, erschwert jedoch die Wartung. Wenn jemand zwei Module herunterlädt, die beide dieselbe Bibliothek über Composer verwenden, wird doppelter Code angezeigt. Dies wiederum macht das Laden und Debuggen von Klassen viel weniger Spaß.
Xano
quelle