Installer et choisir des packages
Installez un package public avec son nom enregistré :
silex install STD
Depuis la bascule du domaine public, Silex 0.45.0 reconnaît la capacité /v2
du registre Cloudflare et lit les versions conservées dans D1/R2. Une panne de
cette vérification n'entraîne pas de retour silencieux vers l'ancien index
/v1.
Le client compatible lit les sources et artefacts conservés par le registre
Cloudflare, sans connexion GitHub ni accès au dépôt de l'auteur. Silex
sélectionne la version publiée la plus récente qui reste compatible avec
la version du compilateur. Pour imposer une version précise, ajoutez-la après
@ :
silex install STD@0.19.0
Les dépendances déclarées par cette version sont résolues et installées
automatiquement. L'installation ne modifie jamais le Package.json de votre
application.
Déclarer le package utilisé par un projet
Une application qui possède un manifeste doit déclarer directement chaque package qu'elle importe :
{
"dependencies": {
"STD": "^0.19.0"
}
}
^0.19.0 accepte une version publiée égale ou supérieure à 0.19.0, sans
franchir la prochaine version majeure. Utilisez =0.19.0 lorsque le projet
demande exactement cette version.
Une dépendance transitive n'est pas visible automatiquement dans votre code.
La page Définir un package avec Package.json explique
le manifeste et les contraintes de version. Les effets sur la visibilité et
l'identité des modules sont décrits dans
les frontières de package.
Installer une copie locale
Une commande peut aussi installer l'état actuel d'un dossier de package :
silex install UserPackages/MonPackage
Cette opération copie une version dans le magasin utilisateur. Les modifications ultérieures du dossier source ne sont donc pas prises en compte. Pour travailler directement sur ses fichiers, utilisez plutôt un lien de développement.
Préparer les dépendances de développement
--dev ajoute les devDependencies du package explicitement demandé :
silex install MonPackage --dev
Leurs dépendances ordinaires sont installées, mais leurs propres
devDependencies ne sont pas installées récursivement. Sans --dev, ces
outils de test, d'exemple ou de benchmark restent absents du graphe consommé
par les utilisateurs du package.
Installer une suite officielle
Certains packages déclarent des extensions publiées séparément comme membres de leur suite. Installez le package et les membres compatibles avec :
silex install GFX --suite
L'installation est étendue à la suite uniquement pour un nom provenant du registre. Cette option n'est pas disponible lorsque l'opérande est un dossier local, et une dépendance transitive ne la déclenche jamais implicitement.
--suite et --dev répondent à deux intentions indépendantes et peuvent être
combinés.
Préparer une autre cible
L'installation sélectionne la cible de la machine actuelle par défaut. Lorsqu'un package fournit des artefacts propres à une autre cible, précisez-la :
silex install MonPackage --target windows-x64
Les cibles reconnues sont affichées par silex targets.
Voir les packages disponibles et sélectionnés
Affichez les versions installées et les liens valables pour tout l'utilisateur :
silex packages
Chaque ligne donne le nom, la version, l'origine et le chemin. Les origines
possibles sont notamment installed et user-link.
Pour observer le graphe réellement sélectionné pour une source ou un projet, utilisez :
silex packages resolve Project/Main.sx
silex packages resolve Project
Cette seconde commande tient compte du manifeste le plus proche, des versions, des liens de développement et des dépendances de développement du projet.
Retirer une version installée
Silex 0.44 ne possède pas de commande de désinstallation de package. La sortie
de silex packages donne le chemin exact de chaque version. Supprimez seulement
le dossier Name@MAJOR.MINOR.PATCH concerné sous ~/.silex/packages, ou sous
%USERPROFILE%\.silex\packages avec Windows.
Cette suppression ne modifie aucun manifeste. Un projet qui demande cette version devra donc installer une autre version compatible avant de pouvoir être résolu à nouveau.
Revenir aux outils · Développer avec des packages locaux · Publier un package