Développer avec des packages locaux
Un lien de développement demande à Silex de lire directement les sources d'un package local. Les modifications du package sont alors visibles dès la prochaine compilation, sans nouvelle installation.
Depuis une racine de travail stable, liez le dossier du package :
silex link UserPackages/MonPackage
La commande lit et valide son Package.json, prépare les éventuels artefacts
de la cible actuelle puis enregistre un lien pour l'utilisateur. Le nom utilisé
ensuite par les manifestes et les imports reste celui déclaré par le package,
pas le chemin du dossier.
La forme complète du manifeste est détaillée dans
Définir un package avec Package.json.
Limiter le lien à un workspace
Un lien utilisateur influence tous les projets compatibles. Pour tester un checkout dans un seul espace de travail, indiquez sa racine :
silex link UserPackages/MonPackage --workspace Project
Silex conserve ce lien sous Project/.silex/links. Lorsqu'il résout une source,
il recherche le dossier .silex/links le plus proche parmi le projet et ses
parents.
Un lien de workspace l'emporte sur un lien utilisateur du même nom. Un lien utilisateur l'emporte à son tour sur les versions installées. Dans chaque cas, la version liée doit encore satisfaire la contrainte déclarée par le projet.
Retirer un lien
Retirez un lien utilisateur avec le nom du package :
silex unlink MonPackage
Pour retirer le lien propre au workspace, répétez exactement sa portée :
silex unlink MonPackage --workspace Project
La suppression du lien ne supprime ni le dossier source ni les versions installées. Au prochain calcul du graphe, Silex peut donc reprendre la version installée compatible.
Vérifier le package réellement choisi
Affichez les packages globaux connus avec :
silex packages
Puis inspectez la résolution d'un projet précis :
silex packages resolve Project/Main.sx
L'origine workspace-link, user-link ou installed indique immédiatement
pourquoi ce chemin a été sélectionné.
Préparer une cible différente
Un package qui contient une frontière native peut demander une préparation propre à la cible. Ajoutez alors son nom au moment de créer le lien :
silex link UserPackages/MonPackage --target linux-x64
Cette option ne rend pas le lien spécifique à une cible : elle sélectionne la cible utilisée pour valider et préparer le package au moment de la commande.
Avant une publication, utilisez silex check pour valider le contrat
installable sans modifier le dépôt. Le parcours complet est décrit dans
Publier un package dans le registre.
Revenir aux outils · Installer et choisir des packages · Consulter la référence de la CLI