Molti sviluppatori di 4D sfruttano la potenza dei componenti di terze parti presenti su GitHub, in particolare quelli elencati nell’argomento 4d-component. 4D 20 R6 introduce una nuova fantastica funzionalità: l’integrazione diretta di questi componenti nel Component Manager.
Questo post del blog approfondisce i dettagli, rendendo il processo di sviluppo più semplice ed efficiente.
Molti componenti 4D sono disponibili su GitHub, sia sviluppati da terzi che creati da voi stessi.
Questa piattaforma offre un modo semplice di distribuire i componenti: le release.
Prima di continuare, vi consigliamo di leggere il post su Component Manager per familiarizzare con i concetti descritti di seguito.
Scaricare automaticamente i rilasci dei repository
Il Component Manager non solo integra i componenti locali, ma recupera automaticamente anche i componenti memorizzati nelle release dei repository.
Nella finestra di dialogo Dipendenze del progetto, i componenti GitHub sono facilmente distinguibili da quelli locali grazie a una piccola icona accanto all’indicazione della posizione del componente.
Ecco come funziona:
- Comprimere il componente in un formato ZIP.
- Nominare l’archivio con lo stesso nome del repository.
- Integrarlo in un rilascio del repository.
Ad esempio, questo processo può essere automatizzato usando il codice 4D o le azioni GitHub. Una volta fatto, dichiarare il componente nel file dependencies.json del progetto:
{ "dependencies": { "myComponent": { "github": "anyAccount/myComponent" } } }
Riavviate il progetto e il componente verrà caricato automaticamente. È così semplice!
Tag e versioni semantiche
Quando si crea una release nel repository, si specificano un tag e una versione.
I tag sono testi che fanno riferimento in modo univoco a un rilascio. Nei file dependencies.json, si può indicare il tag della release che si vuole usare nel progetto. Ad esempio :
{ "dependencies": { "myComponent": { "github": "anyAccount/myComponent", "tag": "textTag" } } }
Allo stesso modo, una release è identificata da una versione. Il sistema di versioning si basa sul concetto di Semantic Versioning, che è il più comunemente utilizzato. Ogni numero di versione è determinato come segue: majorNumber.minorNumber.patchNumber. Come per i tag, è possibile indicare la versione del componente che si desidera utilizzare nel progetto, come in questo esempio:
{ "dipendenze": { "myComponent": { "github": "anyAccount/myComponent", "version": "2.1.3" } } }
La versione viene utilizzata per definire quali versioni possono essere utilizzate. Ecco alcuni esempi:
- “latest”: la versione con il badge “latest” nei rilasci dei repository.
- “*”: l’ultima versione rilasciata.
- “1.*”: tutte le versioni della versione principale 1.
- “1.2.*”: tutte le patch della versione minore 1.2.
- “^1.2.3” o “>=1.2.3”: l’ultima versione 1, a partire dalla versione 1.2.3.
- “~1.2.3” o “>1.2.3”: l’ultima versione maggiore 1, a partire dalla versione immediatamente successiva alla 1.2.3.
- “<=1.2.3”: l’ultima versione fino alla 1.2.3.
- “1.0.0 – 1.2.3” o “>=1.0.0 <=1.2.3”: versione compresa tra 1.0.0 e 1.2.3.
-
“<1.2.3 || >=2”: versione non compresa tra 1.2.3 e 2.0.0.
Se non si specifica un tag o una versione, 4D recupera automaticamente la versione più recente.
Repository privati
Se si vuole integrare un componente che si trova in un repository privato, bisogna dire a 4D di usare un token di connessione per accedervi. Per farlo, creare un token “classico” con diritti di accesso a “repo” nel proprio account GitHub. Quindi, inserire la chiave generata nel file environment4d.json.
Ecco un esempio di file environment4d.json:
{ "github": { "token": "ghp_a0B1cDEf2gHi3JKl4mNo5P6qRST7UvW8x9yZ" } }
Questa nuova funzione semplifica il lavoro con i componenti 4D. Siamo certi che troverete questa integrazione preziosa. Promuove un processo di sviluppo più efficiente e sfrutta un enorme potere collaborativo per gli sviluppatori 4D. Sentitevi liberi di condividere i vostri componenti 4D nei repository GitHub e di contrassegnarli con l’argomento 4d-component. Entrerete a far parte della grande comunità di sviluppatori di componenti 4D e sarete citati nell’elenco dei componenti 4D.
Sentitevi liberi di condividere il vostro feedback!