Ankündigung

Einklappen
Keine Ankündigung bisher.

Einzelne files für Composer als "DEV" festlegen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Einzelne files für Composer als "DEV" festlegen

    Hallo,

    ich hoffe ich bin in der richtigen Rubrik - ansonsten bitte verschieben.

    Ich habe seit längerem eine Bibliotthek auf Packagist veröffentlicht und die Einbindung via Composer klappt. Nun habe ich einen "Appendix" überarbeitet, welcher für den normalen User nicht erforderlich ist, aber für einen Developer interessant sein könnte. Der Appendix besteht ledigleich aus zwei Dateien. Beide sind bisher durch .gitignore auch nicht veröffentlicht worden.

    Meine Idee wäre nun, dass ein User mit (dem expliziten Hinweis in README.md auf) --NO-DEV den Umfang bekommt wie bisher. Ohne explizite Angabe von --NO-DEV bekäme man auch die beiden weiteren Dateien zusätzlich.
    Wenn ich die englische Anleitung zur composer.json richtig interpretiere müsste das doch im Abschnitt
    Code:
    "autoload-dev"
    bzw. mit der Angabe von
    Code:
    "files": ["xyz.php", "abc.php"]
    da drin realisierbar sein - oder?

    Nun bin ich leider kein Composer-Fuchs und unsicher wie das zu deklarieren ist. Ich möchte aber auch kein Halbzeug hochladen, um es dann live testen zu können*.
    Eine der beiden Dateien steht im Wurzelverzeichnis der Bibliothek, die zweite im folgenden /scr-Verzeichnis.

    Wie müsste das in der composer.json deklariert werden?

    Black Senator


    P.S.
    * gibt es eine Möglichkeit on premise eine composer.json zu testen (was-wäre-wenn) ohne erst alles wie GitHub/Packagist zu posten, um dann mit einem Testprogramm zu überprüfen, ob die Einbindung so klappt wie gedacht?



  • #2
    require-dev (root-only)#
    Map of packages required for developing this package, or running tests, etc. The dev requirements of the root package are installed by default. Both install or update support the --no-dev option that prevents dev dependencies from being installed.
    autoload-dev (root-only)#
    This section allows to define autoload rules for development purposes.
    Classes needed to run the test suite should not be included in the main autoload rules to avoid polluting the autoloader in production and when other people use your package as a dependency.
    Therefore, it is a good idea to rely on a dedicated path for your unit tests and to add it within the autoload-dev section.
    https://getcomposer.org/doc/04-schema.md#json-schema

    MIr ist nicht klar was eine APPENDIX mit dem autoloader zu tun hat und auch nicht wieso dem User eine evraltete Appendix ausliefern willst.

    und zur ersten Frage:
    https://www.php.de/forum/webentwickl...rf-hier-posten

    Kommentar


    • #3
      Du kannst die sachen in einen eigenen Branche pushen und dann in deiner composer.json das folgende Probieren:

      Code:
      "meine-lib": "dev-anderer-branche"
      Versions and constraints - Composer (getcomposer.org)

      Kommentar

      Lädt...
      X