Cómo publicar un paquete Node-API
Cómo publicar una versión Node-API de un paquete junto con una versión no Node-API
Los siguientes pasos se ilustran usando el paquete iotivity-node
:
Primero, publique la versión no Node-API:
- Actualice la versión en
package.json
. Paraiotivity-node
, la versión se convierte en 1.2.0-2. - Revise la lista de verificación de lanzamiento (asegúrese de que las pruebas/demos/documentos estén bien).
npm publish
.
- Actualice la versión en
Luego, publique la versión Node-API:
- Actualice la versión en
package.json
. En el caso deiotivity-node
, la versión se convierte en 1.2.0-3. Para el versionado, recomendamos seguir el esquema de versión preliminar como se describe en semver.org por ejemplo, 1.2.0-napi. - Revise la lista de verificación de lanzamiento (asegúrese de que las pruebas/demos/documentos estén bien).
npm publish --tag n-api
.
- Actualice la versión en
En este ejemplo, etiquetar el lanzamiento con n-api
ha asegurado que, aunque la versión 1.2.0-3 sea posterior a la versión publicada no Node-APl (1.2.0-2), no se instalará si alguien elige instalar iotivity-node
simplemente ejecutando npm install iotivity-node
. Esto instalará la versión no Node-APl por defecto. El usuario tendrá que ejecutar npm install iotivity-node@n api
para recibir la versión Node-APlI. Para obtener más información sobre el uso de etiquetas con npm, consulte "Using dist-tags".
Cómo introducir una dependencia en una versión Node-API de un paquete
Para agregar la versión Node-API de iotivity-node
como dependencia, el package.json
se verá así:
"dependencies": {
"iotivity-node": "n-api"
}
Como se explica en "Using dist-tags", a diferencia de las versiones regulares, las versiones etiquetadas no se pueden abordar mediante rangos de versiones como "^2.0.0"
dentro de package.json
. La razón de esto es que la etiqueta se refiere exactamente a una versión. Por lo tanto, si el mantenedor del paquete elige etiquetar una versión posterior del paquete usando la misma etiqueta, npm update
recibirá la versión posterior. Esto debería ser aceptable. Si se necesita otra versión que no sea la última publicada, la dependencia package.json
tendrá que referirse a la versión exacta como la siguiente:
"dependencies": {
"iotivity-node": "1.2.0-3"
}