Preguntas de Repaso de npm

  1. ¿Con que comando creo el fichero package.json?

  2. Explique en consiste el versionado semántico/semantic versioning. ¿Cual es el nombre en inglés de los tres números de version? ¿Como cambian?

  3. ¿Que se guarda en el campo "dependencies": {} de package.json?

  4. ¿Que opción debo añadir al comando npm install para que la librería instalada se añada como dependencia en el fichero package.json?

  5. ¿Que se guarda en el campo "devDependencies": {} de package.json?

  6. ¿Que opción debo añadir al comando npm install para que la librería instalada se añada como "devDependencies" en el fichero package.json?

  7. Explique que significan en los objetos que describen las dependencias dentro package.json las siguientes notaciones:

    1. *

    2. latest

  8. ¿Cual es la salida? ¿Como actúa el operador ~?

    > var semver = require('semver')
    undefined
    > semver.toComparators('~1.2.3')
    [ [ '_______', '______' ] ]
    
  9. ¿Cual es la salida? ¿Como actúa el operador ^?

        > var semver = require('semver')
        undefined
        > semver.toComparators('^1.2.3')
        [ [ '_______', '______' ] ]

Preguntas de Como crear y publicar un paquete npm

  1. ¿Cuales son los pasos para escribir y publicar un paquete npm?
  2. ¿Cómo instalo una versión anterior de un package npm?
  3. ¿Cómo encuentro la versión de un paquete NodeJs instalado?
  4. ¿Que se entiende por scope de un paquete npm?

    1. ¿Cual es la notación para referenciar un paquete somepackage que se aloja en el ámbito somescope?
    2. ¿Como se hace un requirede un paquete somepackage que se aloja en el ámbito somescope?
    3. Cualquier usario npm puede publicar sus módulos en cualquier ámbito: ¿Verdadero o falso?
    4. ¿Cómo puedes hacer para tener varios ámbitos npm?
    5. ¿Cual es el tipo de acceso por defecto de mi paquete con ámbito: público o privado?
    6. ¿Cómo indico a la hora de publicar mi paquete con ámbito que quiero que sea de acceso público?
    7. ¿Que hace este comando?

        npm login --registry=http://reg.example.com --scope=@myco
      
    8. ¿Que hace este comando?

        npm init --scope=username
      
    9. ¿Que hace este comando?

        npm config set scope username
      
  5. ¿Que hace este comando?

     npm version patch -m "Upgrade to %s for reasons"
    
    1. Cuando el comando anterior se ejecuta en un git repo, ¿Crea un commit? ¿Crea un tag?
    2. If preversion, version, or postversion are in the scripts property of the package.json, they will be executed as part of running npm version. Take the following example:

       "scripts": {
         "preversion": "npm test",
         "version": "npm run build && git add -A dist",
         "postversion": "git push && git push --tags && rm -rf build/temp"
       }
      

      Describe the set of actions that will happen when running npm version