Ergebnis 1 bis 19 von 19

Thema: Composer + github - die Grundlage

  1. #1
    Contao-Fan
    Registriert seit
    04.02.2010.
    Ort
    Suisse
    Beiträge
    319
    User beschenken
    Wunschliste

    Frage Composer + github - die Grundlage

    Hallo,

    Ich möchte meine Erweiterungen für Composer vorbereiten.

    Was ich gemacht habe :

    [ OK ] github + hook to packagist
    [ OK ] composer.json (Ich bin mir nicht sicher, ob es richtig ist : https://github.com/lionel-m/galerie/.../composer.json)
    [ OK ] packagist account

    Das Ergebnis : https://packagist.org/packages/lionel/galerie

    1. Es gibt den Link "Connect your github account" in den Einstellungen von packagist aber sie sagen nicht, für was diese Option nützlich ist... Sie wissen ?
    2. Ich habe die Erweiterung "composer" in Contao 3.2.1 installiert. Ich kann meine Erweiterung finden aber nicht installieren... (Es gibt : "Mark package to install" aber...)
    3. Muss ich diese Information (Code unten) hinzufügen oder nur, wenn der Name der Hauptordner nicht standard ist ? (system)

    Code:
    "autoload": {
            "classmap": ["src/"]
        },
    Vielen Dank im Voraus für Ihre Hilfe !
    Erweiterungen : galerie (Galleria) - Coin Slider - Superfish - iCheck - classjs - newsletter-export
    Amazon-Wunschliste (fr)

  2. #2
    Maintainer Avatar von xtra
    Registriert seit
    02.07.2009.
    Ort
    Tuebingen
    Beiträge
    2.007
    User beschenken
    Wunschliste

    Standard

    Code:
        "extra": {
            "contao": {
                "symlinks": {
                        ".": "system/modules/galerie"
                }
            }
        }
    Wyrde ich aendern in:
    Code:
        "extra": {
            "contao": {
                "sources": {
                        "": "system/modules/galerie"
                }
            }
        }
    Mit ersterem gab es lustige Probleme unter Windows.

    Deine Erweiterung kannst du jedoch nicht installieren, da du composer zwar sagst, dass es sich um ein contao-module handelt (siehe "type") jedoch nicht, wie dieser installiert wird.

    Dazu musst du in deinen require noch unseren installer angeben.
    Vgl. hierzu unsere demo composer.json:
    https://github.com/contao-community-.../composer.json

    Die autoload Informationen sind notwendig, wenn du nicht den Contao autoloader via autoload.php verwenden willst.
    Bedenke stets: Wenn Du ungenaue oder unzureichende Angaben machst, so koennte dies die Bearbeitung deiner Frage endlos verzoegern (oder sogar dazu fyhren, dass ich zu viel nachdenken muss und die Antwort vergesse!). Kein Support per PN.

  3. #3
    Contao-Fan
    Registriert seit
    04.02.2010.
    Ort
    Suisse
    Beiträge
    319
    User beschenken
    Wunschliste

    Standard

    Danke für die Hilfe. Ich habe die Datei aktualisiert : https://github.com/lionel-m/galerie/.../composer.json

    Jetzt das Problem ist, dass alle Dateien in "modules/galerie" kopiert sind (files/..., system/..., readme.md, usw) wie im Github-Repository dargestellt.

    Aber ich habe "userfiles" benützt und dass es funktioniert :

    Code:
    "extra": {
            "contao": {
                "sources": {
                    "": "system/modules/galerie"
                },
                "userfiles": {
                    "": "files/"
                }
            }
        }
    Was habe ich falsch gemacht ?

    Andere Frage :

    Gemäß den Parametern, die Erweiterung verwendet immer die letzten commit (service hooks von github)... Wäre es möglich, nur ein Update für jede Veröffentlichung des "Release" haben ?

    Vielen Dank
    Erweiterungen : galerie (Galleria) - Coin Slider - Superfish - iCheck - classjs - newsletter-export
    Amazon-Wunschliste (fr)

  4. #4
    Contao-Urgestein
    Registriert seit
    29.10.2009.
    Ort
    Magdeburg
    Beiträge
    2.020
    Partner-ID
    626
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von lionel Beitrag anzeigen
    Danke für die Hilfe. Ich habe die Datei aktualisiert : https://github.com/lionel-m/galerie/.../composer.json

    Jetzt das Problem ist, dass alle Dateien in "modules/galerie" kopiert sind (files/..., system/..., readme.md, usw) wie im Github-Repository dargestellt.

    Aber ich habe "userfiles" benützt und dass es funktioniert :

    Code:
    "extra": {
            "contao": {
                "sources": {
                    "": "system/modules/galerie"
                },
                "userfiles": {
                    "": "files/"
                }
            }
        }
    Was habe ich falsch gemacht ?
    Als erster Parameter wird der Ordner angegeben, der kopiert werden. soll. Man kann dann auch mehrere Pfade definieren, falls benötigt. Also je nach Aufbau der Erweiterung:

    Code:
    "extra": {
            "contao": {
                "sources": {
                    "system/modules/galerie": "system/modules/galerie"
                },
                "userfiles": {
                    "files/galerie": "files/galerie"
                }
            }
        }

  5. #5
    Contao-Fan
    Registriert seit
    04.02.2010.
    Ort
    Suisse
    Beiträge
    319
    User beschenken
    Wunschliste

    Standard

    Danke. Es funktioniert jetzt !

    PS: Wenn wir eine Erweiterung löschen, werden die Dateien in den Ordner files nicht gelöscht. Ist es gewünscht ?
    Erweiterungen : galerie (Galleria) - Coin Slider - Superfish - iCheck - classjs - newsletter-export
    Amazon-Wunschliste (fr)

  6. #6
    Contao-Fan
    Registriert seit
    04.02.2010.
    Ort
    Suisse
    Beiträge
    319
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von lionel
    Gemäß den Parametern, die Erweiterung verwendet immer die letzten commit (service hooks von github)... Wäre es möglich, nur ein Update für jede Veröffentlichung des "Release" haben ?
    Ich habe nichts gefunden... Es wäre schön, ein Update möglich für jede "release" und nicht für jede "commit" zu haben.
    Erweiterungen : galerie (Galleria) - Coin Slider - Superfish - iCheck - classjs - newsletter-export
    Amazon-Wunschliste (fr)

  7. #7
    Wandelndes Contao-Lexikon Avatar von BugBuster
    Registriert seit
    15.06.2009.
    Ort
    Berlin
    Beiträge
    10.513
    User beschenken
    Wunschliste

    Standard

    dafür setzt du dann per "git tag -a 1.2.7 -m "Version 1.2.7" vor dem git push und markierst die Version damit. Die kann man dann später auswählen.
    das alle commits auch ankommen bleibt aber so.

    Wie man das per dev branch trennen könnte und auch verständlich machen kann, das fehlt mir auch noch an Wissen.
    Grüße, BugBuster
    "view source" is your guide.
    Danke an alle Amazon Wunschlisten Erfüller

  8. #8
    Contao-Fan
    Registriert seit
    04.02.2010.
    Ort
    Suisse
    Beiträge
    319
    User beschenken
    Wunschliste

    Standard

    The package uses the dev-master branch. In this case we can use a develop branch for working and then pushed the code when we want to make the changes available...

    But yes, it would be nice to use only commits that are tagged.
    Erweiterungen : galerie (Galleria) - Coin Slider - Superfish - iCheck - classjs - newsletter-export
    Amazon-Wunschliste (fr)

  9. #9
    Contao-Fan
    Registriert seit
    10.03.2011.
    Beiträge
    340

    Standard

    Hallo zusammen,

    also ich bekomms auch nicht hin. Hier meine composer.json (https://github.com/gerritlo/glo_immo.../composer.json).

    Immer wenn ich das Paket installiere, werden meine Dateien unter Vendor abgelegt, auch die require-Anweisungen werden geladen, mein Modul wird aber nicht von Contao geladen. Woran kann das liegen?

    Danke und Grüße

  10. #10
    Contao-Urgestein Avatar von cliffparnitzky
    Registriert seit
    08.10.2010.
    Ort
    Lüneburg
    Beiträge
    2.451
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Also,
    also Typ sollte das "contao-modul" stehen:

    Code:
    "type":"contao-module",
    und das unter 'extra ... contao ... sources' wird auch nicht gut sein so.

    Dort eher einen Ordner im Github Repo anlegen und den dort verlinken ... das Ziel dann auch nicht absolut wählen ... also den führen "/" weg.

    Gruß, Cliff

  11. #11
    Contao-Fan
    Registriert seit
    10.03.2011.
    Beiträge
    340

    Standard

    Wie meinst du das mit Ordner anlegen? Wo ich den kompletten Code reinlege?

  12. #12
    Maintainer Avatar von xtra
    Registriert seit
    02.07.2009.
    Ort
    Tuebingen
    Beiträge
    2.007
    User beschenken
    Wunschliste

    Standard

    Bitte auch das composer-plugin und nicht den composer-installer requiren.
    Bedenke stets: Wenn Du ungenaue oder unzureichende Angaben machst, so koennte dies die Bearbeitung deiner Frage endlos verzoegern (oder sogar dazu fyhren, dass ich zu viel nachdenken muss und die Antwort vergesse!). Kein Support per PN.

  13. #13
    Contao-Fan
    Registriert seit
    10.03.2011.
    Beiträge
    340

    Standard

    Sorry, aber es geht auch mit geänderter composer.json nicht.

    Hier ist mein Paketname: gerritlo/glo_immoconnector
    und mein Repo: https://github.com/gerritlo/glo_immoConnector/

    Danke
    Geändert von gerritlo (20.06.2014 um 18:27 Uhr)

  14. #14
    Wandelndes Contao-Lexikon Avatar von BugBuster
    Registriert seit
    15.06.2009.
    Ort
    Berlin
    Beiträge
    10.513
    User beschenken
    Wunschliste

    Standard

    Du hast auf GitHub keine Version (Tag) definiert, somit ist keine Versionsnummer bei Packagist bekannt.
    Eine Lizenz solltest du auch angeben (das meckert Packagist übrigens auch rot an!)
    z.b.
    Code:
    "license":"LGPL-3.0+",
    Und, was passiert denn beim Installationsversuch? Wird die überhaupt gefunden?
    Grüße, BugBuster
    "view source" is your guide.
    Danke an alle Amazon Wunschlisten Erfüller

  15. #15
    Contao-Fan
    Registriert seit
    10.03.2011.
    Beiträge
    340

    Standard

    Klar, wird gefunden, in das vendor Verzeichnis geladen und laut composer ein Symlink angelegt, den finde ich aber nicht, bzw. Wird das Modul auch nicht geladen. Tag und Lizenz kommt noch.

  16. #16
    Contao-Urgestein
    Registriert seit
    10.07.2010.
    Beiträge
    4.403
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von BugBuster Beitrag anzeigen
    dafür setzt du dann per "git tag -a 1.2.7 -m "Version 1.2.7" vor dem git push und markierst die Version damit. Die kann man dann später auswählen.
    das alle commits auch ankommen bleibt aber so.

    Wie man das per dev branch trennen könnte und auch verständlich machen kann, das fehlt mir auch noch an Wissen.
    Ich habe gesehen das Du mittlerweile die Repos auch aufteilst nach dev und master. Hast vielleicht noch ein Hinweis hier (oder Link)?
    Danke schon mal für die bestehenden Infos.


  17. #17
    Wandelndes Contao-Lexikon Avatar von BugBuster
    Registriert seit
    15.06.2009.
    Ort
    Berlin
    Beiträge
    10.513
    User beschenken
    Wunschliste

    Standard

    Das sind meist alte dev Branches.
    Da wo ein dev oder develop Branch mit composer.json existiert, liegen RC Versionen, die sind dann so getaggt: 3.2.0-RC1
    Das versteht wiederum Packagist.org und macht auch ein RC Versionen draus und gibt das als solche weiter ins Backend.

    In der composer.json kann man selbst wohl auch angeben, bei welcher Version es sich um eine dev handelt bzw. welche Version eine dev ist.
    Also die 1.0.0 stable hat dann z.B. einen Eintrag, das die 1.1.0 eine dev ist.
    Das habe ich aber noch nicht richtig kapiert glaube ich. Muss ich mal mit meinem Projekt Spielwiese ein wenig testen.
    Grüße, BugBuster
    "view source" is your guide.
    Danke an alle Amazon Wunschlisten Erfüller

  18. #18
    Wandelndes Contao-Lexikon Avatar von BugBuster
    Registriert seit
    15.06.2009.
    Ort
    Berlin
    Beiträge
    10.513
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von gerritlo Beitrag anzeigen
    Klar, wird gefunden, in das vendor Verzeichnis geladen und laut composer ein Symlink angelegt, den finde ich aber nicht, bzw. Wird das Modul auch nicht geladen. Tag und Lizenz kommt noch.
    Der Symlink sollte in system/modules angelegt werden, damit Contao das findet.
    Fehlt der Link, kann also Contao nichts finden.
    Grüße, BugBuster
    "view source" is your guide.
    Danke an alle Amazon Wunschlisten Erfüller

  19. #19
    Contao-Fan
    Registriert seit
    10.03.2011.
    Beiträge
    340

    Standard

    Den Eintrag habe ich doch aber erzeugt, oder ist meine composer.json falsch?

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •