Socket
Socket
Sign inDemoInstall

lerna-update-wizard

Package Overview
Dependencies
Maintainers
1
Versions
49
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

lerna-update-wizard - npm Package Compare versions

Comparing version 0.3.0 to 0.4.0

2

package.json

@@ -6,3 +6,3 @@ {

},
"version": "0.3.0",
"version": "0.4.0",
"main": "index.js",

@@ -9,0 +9,0 @@ "license": "MIT",

@@ -22,3 +22,3 @@ const path = require("path");

if (!await fileExists(projectPackagePath)) {
if (!(await fileExists(projectPackagePath))) {
ui.log.write(

@@ -30,3 +30,3 @@ chalk.red.bold("No 'package.json' found in specified directory")

if (!await fileExists(packagesDir)) {
if (!(await fileExists(packagesDir))) {
ui.log.write(

@@ -41,2 +41,14 @@ chalk.red.bold("No 'packages/' directory found. Is this a lerna project?")

const setSourceForDeps = (deps = [], source = "dependencies") =>
Object.keys(deps).reduce(
(prev, name) => ({
...prev,
[name]: {
version: deps[name],
source
}
}),
{}
);
const dependencies = packages.reduce((prev, pack) => {

@@ -51,3 +63,6 @@ const { dependencies, devDependencies } = require(resolve(

...prev,
[pack]: { ...dependencies, ...devDependencies }
[pack]: {
...setSourceForDeps(dependencies),
...setSourceForDeps(devDependencies, "devDependencies")
}
};

@@ -61,3 +76,3 @@ }, {});

...Object.keys(packDeps).reduce((prev, dep) => {
const version = packDeps[dep];
const { version, source } = packDeps[dep];
const prevDep = prev[dep] || { packs: {}, versions: [] };

@@ -77,3 +92,3 @@ const versions = uniq([...prevDep.versions, version]);

name: dep,
packs: { ...prevDep.packs, [pack]: version },
packs: { ...prevDep.packs, [pack]: { version, source } },
versions,

@@ -80,0 +95,0 @@ color

@@ -67,8 +67,14 @@ const inquirer = require("inquirer");

pageSize: 15,
choices: packages.map(pack => {
const installedVersion = dependencyMap[targetDependency].packs[pack];
choices: packages.map(depName => {
const { version, source } =
dependencyMap[targetDependency].packs[depName] || {};
const versionBit = version ? ` (${version})` : "";
const sourceBit =
source === "devDependencies" ? chalk.white(" (dev)") : "";
return {
name: `${pack} ${installedVersion ? `(${installedVersion})` : ""}`,
value: pack,
checked: !!installedVersion
name: `${depName}${versionBit}${sourceBit}`,
value: depName,
checked: !!version
};

@@ -123,7 +129,10 @@ })

for (let pack of targetPackages) {
if (dependencyMap[targetDependency].packs[pack] === targetVersion) {
for (let depName of targetPackages) {
const { version, source } =
dependencyMap[targetDependency].packs[depName] || {};
if (version === targetVersion) {
ui.log.write("");
ui.log.write(`Already installed (${targetVersion})`);
ui.log.write(chalk.green(`${pack} ✓`));
ui.log.write(chalk.green(`${depName} ✓`));
ui.log.write("");

@@ -133,11 +142,29 @@ continue;

const packDir = resolve(packagesDir, pack);
const packDir = resolve(packagesDir, depName);
const installCmd = (await fileExists(resolve(projectDir, "yarn.lock")))
? `yarn add ${targetDependency}@${targetVersion}`
: `npm install --save ${targetDependency}@${targetVersion}`;
const dependencyManager = (await fileExists(
resolve(projectDir, "yarn.lock")
))
? "yarn"
: "npm";
const sourceParam = {
yarn: {
dependencies: "",
devDependencies: "--dev"
},
npm: {
dependencies: "--save",
devDependencies: "--save-dev"
}
}[dependencyManager][source || "dependencies"];
const installCmd =
dependencyManager === "yarn"
? `yarn add ${sourceParam} ${targetDependency}@${targetVersion}`
: `npm install ${sourceParam} ${targetDependency}@${targetVersion}`;
await runCommand(`cd ${packDir} && ${installCmd}`, {
startMessage: `${chalk.white.bold(pack)}: ${installCmd}`,
endMessage: chalk.green(`${pack} ✓`)
startMessage: `${chalk.white.bold(depName)}: ${installCmd}`,
endMessage: chalk.green(`${depName} ✓`)
});

@@ -196,4 +223,6 @@ }

const subMessage = targetPackages
.reduce((prev, pack) => {
const fromVersion = dependencyMap[targetDependency].packs[pack];
.reduce((prev, depName) => {
const { version: fromVersion } = dependencyMap[targetDependency].packs[
depName
];

@@ -203,4 +232,4 @@ if (fromVersion === targetVersion) return prev;

return fromVersion
? [...prev, `* ${pack}: ${fromVersion} → ${targetVersion}`]
: [...prev, `* ${pack}: ${targetVersion}`];
? [...prev, `* ${depName}: ${fromVersion} → ${targetVersion}`]
: [...prev, `* ${depName}: ${targetVersion}`];
}, [])

@@ -207,0 +236,0 @@ .join("\n");

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