freeCodeCamp/curriculum/challenges/espanol/05-back-end-development-and.../managing-packages-with-npm/use-the-tilde-character-to-...

2.4 KiB

id title challengeType forumTopicId dashedName
587d7fb5367417b2b2512c02 Usa el carácter tilde para usar la última versión del parche de una dependencia 2 301532 use-the-tilde-character-to-always-use-the-latest-patch-version-of-a-dependency

--description--

En el último desafío, le dijiste a npm que sólo incluyera una versión específica de un paquete. Es una forma útil de congelar tus dependencias si necesitas asegurarte de que las diferentes partes de tu proyecto permanezcan compatibles entre sí. Pero en la mayoría de los casos, no querrás perderte las correcciones de errores, ya que a menudo incluyen importantes parches de seguridad y (con suerte) no rompen cosas al hacerlo.

Para permitir que una dependencia de npm se actualice a la última versión de PATCH, puedes prefijar la versión de la dependencia con el carácter tilde (~). Aquí hay un ejemplo de cómo permitir actualizaciones a cualquier versión 1.3.x.

"package": "~1.3.8"

--instructions--

En el archivo package.json, su regla actual para que npm pueda actualizar la dependencia "moment" es usar una versión específica (2.10.2). Pero ahora, quieres permitir la última versión 2.10.x.

Usa el tilde (~) para anteponer la versión de moment en tus dependencias y permitir a npm actualizarlo a cualquier nueva versión PATCH.

Nota: Los números de versión no deben ser cambiados.

--hints--

"dependencies" debe incluir "moment"

(getUserInput) =>
  $.get(getUserInput('url') + '/_api/package.json').then(
    (data) => {
      var packJson = JSON.parse(data);
      assert.property(
        packJson.dependencies,
        'moment',
        '"dependencies" does not include "moment"'
      );
    },
    (xhr) => {
      throw new Error(xhr.responseText);
    }
  );

la versión de "moment" debe coincidir con "~2.10.2"

(getUserInput) =>
  $.get(getUserInput('url') + '/_api/package.json').then(
    (data) => {
      var packJson = JSON.parse(data);
      assert.match(
        packJson.dependencies.moment,
        /^\~2\.10\.2/,
        'Wrong version of "moment". It should be ~2.10.2'
      );
    },
    (xhr) => {
      throw new Error(xhr.responseText);
    }
  );

--solutions--

/**
  Backend challenges don't need solutions, 
  because they would need to be tested against a full working project. 
  Please check our contributing guidelines to learn more.
*/