Panoramica
Per cominciare, questa non è tanto una guida per lo sviluppo quanto una descrizione di questa funzione, in modo che come sviluppatori possiate capire meglio come il pacchetto e il plug-in devono essere impostati.
Può essere frustrante aprire una definizione di Grasshopper e scoprire che i plug-in necessari non sono installati nel sistema. Il Gestore pacchetti può aiutare a semplificare il processo su come soddisfare i requisiti delle dipendenze.
Da Rhino 6 in poi, la finestra di dialogo “Unrecognized Objects” presenta all’utente un’opzione per scaricare e installare i plug-in mancanti. Questa funzione è chiamata Package Restore.
Package Restore utilizza il nome, l’ID e la versione dei plug-in mancanti per cercare il server dei pacchetti. Se un pacchetto corrisponde alla richiesta di ricerca, viene installato e, se possibile, caricato prima dell’apertura della definizione1.
Corrispondenza
Assegnazione del nome
Idealmente, il nome del plug-in di Grasshopper e del pacchetto devono coincidere. Nel caso in cui non sia possibile, a causa dei vincoli dello schema di denominazione dei pacchetti2 o del fatto che ci sono più plug-in in un pacchetto, ciascuno con un nome diverso, il pacchetto corretto può essere identificato anche dall’ID del plug-in.
Per ogni file .gha, l’ID del plug-in viene estratto e aggiunto al file manifest.yml
quando si esegue yak build
.
Numeri di versione
I numeri di versione dei pacchetti possono seguire le specifiche Semantic Versioning 2.0.0 (SemVer) o possono essere di quattro cifre3, come da System.Version
. Consultare la guida Il server dei pacchetti per maggiori dettagli sui formati dei numeri di versione consentiti.
Il server consente sia SemVer che quattro cifre perché alcuni plug-in di Grasshopper specificano il loro numero di versione come string
in una classe derivata da GH_AssemblyInfo
mentre altri si affidano all’attributo AssemblyVersionAttribute
.
Durante il ripristino dei pacchetti, se sul server esiste un pacchetto che corrisponde al nome o all’ID del plug-in mancante, ma la versione esatta non esiste, verrà installata l’ultima versione stabile.
-
Added to Grasshopper in December 2019. On-the-fly loading is only possible if another version of the Grasshopper library is not already installed and loaded. Otherwise, Rhino will need to be restarted to load the new version of the library. ↩︎
-
Package names are pretty strict. They only allow letters, numbers, hyphens and underscores. ↩︎
-
Support for four-digit (
System.Version
) version numbers was added in Yak 0.8. ↩︎