Socket
Socket
Sign inDemoInstall

npm-check-updates

Package Overview
Dependencies
Maintainers
2
Versions
470
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

npm-check-updates - npm Package Compare versions

Comparing version 16.7.4 to 16.7.5

build/src/lib/parseTarget.d.ts

18

build/package.json
{
"name": "npm-check-updates",
"version": "16.7.4",
"version": "16.7.5",
"author": "Tomas Junnonen <tomas1@gmail.com>",

@@ -70,5 +70,5 @@ "license": "Apache-2.0",

"lodash": "^4.17.21",
"minimatch": "^6.1.6",
"minimatch": "^6.2.0",
"p-map": "^4.0.0",
"pacote": "15.0.8",
"pacote": "15.1.0",
"parse-github-url": "^1.0.2",

@@ -113,5 +113,5 @@ "progress": "^2.0.3",

"@types/update-notifier": "^6.0.2",
"@typescript-eslint/eslint-plugin": "^5.51.0",
"@typescript-eslint/parser": "^5.51.0",
"c8": "^7.12.0",
"@typescript-eslint/eslint-plugin": "^5.52.0",
"@typescript-eslint/parser": "^5.52.0",
"c8": "^7.13.0",
"chai": "^4.3.7",

@@ -121,3 +121,3 @@ "chai-as-promised": "^7.1.1",

"cross-env": "^7.0.3",
"eslint": "^8.33.0",
"eslint": "^8.34.0",
"eslint-config-prettier": "^8.6.0",

@@ -128,7 +128,7 @@ "eslint-config-raine": "^0.3.0",

"eslint-plugin-import": "^2.27.5",
"eslint-plugin-jsdoc": "^39.8.0",
"eslint-plugin-jsdoc": "^40.0.0",
"eslint-plugin-n": "^15.6.1",
"eslint-plugin-promise": "^6.1.1",
"husky": "^8.0.3",
"lockfile-lint": "^4.10.0",
"lockfile-lint": "^4.10.1",
"markdownlint-cli": "^0.33.0",

@@ -135,0 +135,0 @@ "mocha": "^10.2.0",

@@ -8,5 +8,8 @@ import { Version } from '../types/Version';

* @param latest
* @param downgrade Allow downgrading
* @returns
*/
declare function isUpgradeable(current: VersionSpec, latest: Version): boolean;
declare function isUpgradeable(current: VersionSpec, latest: Version, { downgrade }?: {
downgrade?: boolean;
}): boolean;
export default isUpgradeable;

@@ -37,5 +37,6 @@ "use strict";

* @param latest
* @param downgrade Allow downgrading
* @returns
*/
function isUpgradeable(current, latest) {
function isUpgradeable(current, latest, { downgrade } = {}) {
// do not upgrade non-npm version declarations (such as git tags)

@@ -65,5 +66,5 @@ // do not upgrade wildcards

(!semver.satisfies(latestNormalized, range.operator === '<' ? current : version) &&
!semver.ltr(latestNormalized, version))));
(downgrade || !semver.ltr(latestNormalized, version)))));
}
exports.default = isUpgradeable;
//# sourceMappingURL=isUpgradeable.js.map

@@ -44,9 +44,7 @@ "use strict";

const [name, version] = npmAlias || [dep, packageMap[dep]];
let distTag = 'latest';
const targetOption = options.target || 'latest';
let target = typeof targetOption === 'string' ? targetOption : targetOption(name, (0, semver_utils_1.parseRange)(version));
if (target[0] === '@') {
distTag = target.slice(1);
target = 'distTag';
}
const targetString = typeof targetOption === 'string' ? targetOption : targetOption(name, (0, semver_utils_1.parseRange)(version));
const [target, distTag] = targetString.startsWith('@')
? ['distTag', targetString.slice(1)]
: [targetString, 'latest'];
const cached = (_a = options.cacher) === null || _a === void 0 ? void 0 : _a.get(name, target);

@@ -77,3 +75,4 @@ if (cached) {

// upgrade prereleases to newer prereleases by default
pre: options.pre != null ? options.pre : distTag !== 'latest' || (0, version_util_1.isPre)(version),
// allow downgrading when explicit tag is used
pre: options.pre != null ? options.pre : targetString.startsWith('@') || (0, version_util_1.isPre)(version),
retry: (_b = options.retry) !== null && _b !== void 0 ? _b : 2,

@@ -80,0 +79,0 @@ });

@@ -46,2 +46,3 @@ "use strict";

function upgradeDependencies(currentDependencies, latestVersions, options = {}) {
const targetOption = options.target || 'latest';
// filter out dependencies with empty values

@@ -58,5 +59,5 @@ currentDependencies = (0, filterObject_1.default)(currentDependencies, (key, value) => !!value);

// only include packages for which a latest version was fetched
deps => (0, pickBy_1.default)(deps, (current, packageName) => packageName in latestVersions),
(deps) => (0, pickBy_1.default)(deps, (current, packageName) => packageName in latestVersions),
// unpack npm alias and git urls
deps => (0, mapValues_1.default)(deps, (current, packageName) => {
(deps) => (0, mapValues_1.default)(deps, (current, packageName) => {
const latest = latestVersions[packageName];

@@ -82,5 +83,10 @@ let currentParsed = null;

// pick the packages that are upgradeable
deps => (0, pickBy_1.default)(deps, ({ current, currentParsed, latest, latestParsed }) => (0, isUpgradeable_1.default)(currentParsed || current, latestParsed || latest)),
(deps) => (0, pickBy_1.default)(deps, ({ current, currentParsed, latest, latestParsed }, name) => {
// allow downgrades from prereleases when explicit tag is given
const downgrade = versionUtil.isPre(current) &&
(typeof targetOption === 'string' ? targetOption : targetOption(name, (0, semver_utils_1.parseRange)(current))).startsWith('@');
return (0, isUpgradeable_1.default)(currentParsed || current, latestParsed || latest, { downgrade });
}),
// pack embedded versions: npm aliases and git urls
deps => (0, mapValues_1.default)(deps, ({ current, currentParsed, latest, latestParsed }) => {
(deps) => (0, mapValues_1.default)(deps, ({ current, currentParsed, latest, latestParsed }) => {
const upgraded = upgradeDep(currentParsed || current, latestParsed || latest);

@@ -87,0 +93,0 @@ return versionUtil.isNpmAlias(current)

@@ -29,5 +29,3 @@ "use strict";

: null);
const upgradedDependencies = (0, upgradeDependencies_1.default)(currentDependencies, latestVersions, {
removeRange: options.removeRange,
});
const upgradedDependencies = (0, upgradeDependencies_1.default)(currentDependencies, latestVersions, options);
const filteredUpgradedDependencies = (0, pickBy_1.default)(upgradedDependencies, (v, dep) => {

@@ -34,0 +32,0 @@ return !options.jsonUpgraded || !options.minimal || !(0, semver_1.satisfies)(latestVersions[dep], currentDependencies[dep]);

{
"name": "npm-check-updates",
"version": "16.7.4",
"version": "16.7.5",
"author": "Tomas Junnonen <tomas1@gmail.com>",

@@ -70,5 +70,5 @@ "license": "Apache-2.0",

"lodash": "^4.17.21",
"minimatch": "^6.1.6",
"minimatch": "^6.2.0",
"p-map": "^4.0.0",
"pacote": "15.0.8",
"pacote": "15.1.0",
"parse-github-url": "^1.0.2",

@@ -113,5 +113,5 @@ "progress": "^2.0.3",

"@types/update-notifier": "^6.0.2",
"@typescript-eslint/eslint-plugin": "^5.51.0",
"@typescript-eslint/parser": "^5.51.0",
"c8": "^7.12.0",
"@typescript-eslint/eslint-plugin": "^5.52.0",
"@typescript-eslint/parser": "^5.52.0",
"c8": "^7.13.0",
"chai": "^4.3.7",

@@ -121,3 +121,3 @@ "chai-as-promised": "^7.1.1",

"cross-env": "^7.0.3",
"eslint": "^8.33.0",
"eslint": "^8.34.0",
"eslint-config-prettier": "^8.6.0",

@@ -128,7 +128,7 @@ "eslint-config-raine": "^0.3.0",

"eslint-plugin-import": "^2.27.5",
"eslint-plugin-jsdoc": "^39.8.0",
"eslint-plugin-jsdoc": "^40.0.0",
"eslint-plugin-n": "^15.6.1",
"eslint-plugin-promise": "^6.1.1",
"husky": "^8.0.3",
"lockfile-lint": "^4.10.0",
"lockfile-lint": "^4.10.1",
"markdownlint-cli": "^0.33.0",

@@ -135,0 +135,0 @@ "mocha": "^10.2.0",

# npm-check-updates
[![npm version](https://img.shields.io/npm/v/npm-check-updates)](https://www.npmjs.com/package/npm-check-updates)
[![Build Status](https://img.shields.io/github/workflow/status/raineorshine/npm-check-updates/Tests/main?label=tests&logo=github)](https://github.com/raineorshine/npm-check-updates/actions?query=workflow%3ATests+branch%3Amain)
[![Build Status](https://img.shields.io/github/actions/workflow/status/raineorshine/npm-check-updates/test.yml?branch=main&label=tests&logo=github)](https://github.com/raineorshine/npm-check-updates/actions?query=workflow%3ATests+branch%3Amain)
[![Coverage Status](https://img.shields.io/coveralls/github/raineorshine/npm-check-updates/main)](https://coveralls.io/github/raineorshine/npm-check-updates?branch=main)

@@ -6,0 +6,0 @@

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc