codul are nevoie de ceva build pentru a fi utilizabil. Build-ul ăsta se realizează cu github actions, partea asta e ok
vreau ca packagist.org să ia artefactul ăla pentru deploy, nu un anumit commit.
Ce știu că se poate, dar NU vreau:
să fac utilizatorii să adauge URL-ul în composer.json. Vreau ca pentru cel care instalează pachetul, tot procesul ăsta să fie complet transparent. I.e. instalarea să se facă doar cu composer require iamntz/pachet
toate fisierele alea comprezate (zip, tar.gz) de pe GitHub, nu sunt altceva decat rezultatul comenzii git archive dupa cum se poate vedea si in url-ul fisierului
long story, short Rundown of the Git Archive Command
Si composer si npm se folosesc de arhivele alea ca sa nu mai faca git clone etc
Un common practice, e sa te folosesti de fisierul .gitattributes si sa pui “export-ignore” la fisierele care nu le vrei in pachet. In genul la .gitignore dar pt “dist”
Sincer nu prea vad un motiv pentru care sa nu faci un commit cu fisierele alea js compilate (in afara de frumusete)
Eu ma gandesc la cazul asta:
Ca developer, fac un git clone la repo-ul tau, ca vreau sa vad/testez chestii, diferite versiuni.
Ti-as multumi enorm, daca as putea sa checkout diferite versiuni si sa nu mai pierd timp compiland js-urile
Si nu doar “lenea” de a mai compila, dar poate vreau sa testez build-ul tau cu build-ul meu, ca poate o versiune ciudata de node sau mai stiu eu ce, produce rezultate diferite
Fix la acel repo mai primesc câte un PR din an în paște. Și îmi este mai simplu să aprob un PR (din web) când văd ce s-a schimbat vs un JS compilat care poate conține și chestii malițioase, deci trebuie să-i dau pull local → compilez → commit → push.
composer: A Composer repository is a packages.json file served via the network (HTTP, FTP, SSH), that contains a list of composer.json objects with additional dist and/or source information.