Comment publier un package Node-API
Comment publier une version Node-API d'un package en plus d'une version non Node-API
Les étapes suivantes sont illustrées à l'aide du package iotivity-node
:
Tout d'abord, publiez la version non Node-API :
- Mettez à jour la version dans
package.json
. Pouriotivity-node
, la version devient 1.2.0-2. - Passez en revue la checklist de publication (assurez-vous que les tests/démos/docs sont OK).
npm publish
.
- Mettez à jour la version dans
Ensuite, publiez la version Node-API :
- Mettez à jour la version dans
package.json
. Dans le cas deiotivity-node
, la version devient 1.2.0-3. Pour la gestion des versions, nous recommandons de suivre le schéma de version préliminaire décrit par semver.org, par exemple : 1.2.0-napi. - Passez en revue la checklist de publication (assurez-vous que les tests/démos/docs sont OK).
npm publish --tag n-api
.
- Mettez à jour la version dans
Dans cet exemple, l'étiquetage de la version avec n-api
garantit que, bien que la version 1.2.0-3 soit postérieure à la version non Node-API publiée (1.2.0-2), elle ne sera pas installée si quelqu'un choisit d'installer iotivity-node
en exécutant simplement npm install iotivity-node
. Cela installera la version non Node-API par défaut. L'utilisateur devra exécuter npm install iotivity-node@n-api
pour recevoir la version Node-API. Pour plus d'informations sur l'utilisation des tags avec npm, consultez « Utilisation des dist-tags ».
Comment introduire une dépendance sur une version Node-API d'un package
Pour ajouter la version Node-API de iotivity-node
comme dépendance, le fichier package.json
ressemblera à ceci :
"dependencies": {
"iotivity-node": "n-api"
}
Comme expliqué dans « Utilisation des dist-tags », contrairement aux versions régulières, les versions étiquetées ne peuvent pas être adressées par des plages de versions telles que "^2.0.0"
dans package.json
. La raison en est que le tag fait référence à une seule version. Ainsi, si le mainteneur du package choisit d'étiqueter une version ultérieure du package en utilisant le même tag, npm update
recevra la version ultérieure. Ceci étant acceptable pour toute version autre que la dernière publiée, la dépendance package.json
devra faire référence à la version exacte, comme suit :
"dependencies": {
"iotivity-node": "1.2.0-3"
}