From 4c1f16d2c29a7a56c19b97f2820e6305a6075083 Mon Sep 17 00:00:00 2001 From: Ruy Adorno Date: Wed, 7 Apr 2021 11:03:41 -0400 Subject: feat: add init workspaces Add workspaces support to `npm init` - Fixes `npm exec` respecting `script-shell` option value - Refactored `lib/exec.js` into `libnpmexec` - Updates init-package-json@2.0.3 - Added ability to create a new workspace using the -w config PR-URL: https://github.com/npm/cli/pull/3095 Credit: @ruyadorno Close: #3095 Reviewed-by: @wraithgar --- package-lock.json | 80 +++++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 66 insertions(+), 14 deletions(-) (limited to 'package-lock.json') diff --git a/package-lock.json b/package-lock.json index d2e64cb48..704fd1571 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,6 +11,7 @@ "@npmcli/arborist", "@npmcli/ci-detect", "@npmcli/config", + "@npmcli/name-from-folder", "@npmcli/run-script", "abbrev", "ansicolors", @@ -33,6 +34,7 @@ "leven", "libnpmaccess", "libnpmdiff", + "libnpmexec", "libnpmfund", "libnpmhook", "libnpmorg", @@ -80,7 +82,6 @@ "@npmcli/map-workspaces", "@npmcli/metavuln-calculator", "@npmcli/move-file", - "@npmcli/name-from-folder", "@npmcli/node-gyp", "@npmcli/promise-spawn", "@tootallnate/once", @@ -202,6 +203,7 @@ "path-is-absolute", "path-parse", "performance-now", + "proc-log", "process-nextick-args", "promise-all-reject-late", "promise-call-limit", @@ -270,12 +272,13 @@ "graceful-fs": "^4.2.6", "hosted-git-info": "^4.0.2", "ini": "^2.0.0", - "init-package-json": "^2.0.2", + "init-package-json": "^2.0.3", "is-cidr": "^4.0.2", "json-parse-even-better-errors": "^2.3.1", "leven": "^3.1.0", "libnpmaccess": "^4.0.1", "libnpmdiff": "^2.0.4", + "libnpmexec": "^1.0.1", "libnpmfund": "^1.0.2", "libnpmhook": "^6.0.1", "libnpmorg": "^2.0.1", @@ -4018,17 +4021,17 @@ } }, "node_modules/init-package-json": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/init-package-json/-/init-package-json-2.0.2.tgz", - "integrity": "sha512-PO64kVeArePvhX7Ff0jVWkpnE1DfGRvaWcStYrPugcJz9twQGYibagKJuIMHCX7ENcp0M6LJlcjLBuLD5KeJMg==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/init-package-json/-/init-package-json-2.0.3.tgz", + "integrity": "sha512-tk/gAgbMMxR6fn1MgMaM1HpU1ryAmBWWitnxG5OhuNXeX0cbpbgV5jA4AIpQJVNoyOfOevTtO6WX+rPs+EFqaQ==", "inBundle": true, "dependencies": { "glob": "^7.1.1", - "npm-package-arg": "^8.1.0", + "npm-package-arg": "^8.1.2", "promzard": "^0.3.0", "read": "~1.0.1", - "read-package-json": "^3.0.0", - "semver": "^7.3.2", + "read-package-json": "^3.0.1", + "semver": "^7.3.5", "validate-npm-package-license": "^3.0.4", "validate-npm-package-name": "^3.0.0" }, @@ -4795,6 +4798,27 @@ "node": ">=10" } }, + "node_modules/libnpmexec": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/libnpmexec/-/libnpmexec-1.0.1.tgz", + "integrity": "sha512-YK2kEhZNCcaDEqOIUWjadhJl9MgS69YHgMmGD5P3yntF0UXNOQfEqABoMTZv9ngPOJTJQGlU4Dfp2xb3bpUKzw==", + "inBundle": true, + "dependencies": { + "@npmcli/arborist": "^2.3.0", + "@npmcli/ci-detect": "^1.3.0", + "@npmcli/run-script": "^1.8.4", + "chalk": "^4.1.0", + "mkdirp-infer-owner": "^2.0.0", + "npm-package-arg": "^8.1.2", + "pacote": "^11.3.1", + "proc-log": "^1.0.0", + "read": "^1.0.7", + "read-package-json-fast": "^2.0.2" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/libnpmfund": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/libnpmfund/-/libnpmfund-1.0.2.tgz", @@ -6225,6 +6249,12 @@ "node": ">= 0.8.0" } }, + "node_modules/proc-log": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-1.0.0.tgz", + "integrity": "sha512-aCk8AO51s+4JyuYGg3Q/a6gnrlDO09NpVWePtjp7xwphcoQ04x5WAfCyugcsbLooWcMJ87CLkD4+604IckEdhg==", + "inBundle": true + }, "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -13419,16 +13449,16 @@ "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==" }, "init-package-json": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/init-package-json/-/init-package-json-2.0.2.tgz", - "integrity": "sha512-PO64kVeArePvhX7Ff0jVWkpnE1DfGRvaWcStYrPugcJz9twQGYibagKJuIMHCX7ENcp0M6LJlcjLBuLD5KeJMg==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/init-package-json/-/init-package-json-2.0.3.tgz", + "integrity": "sha512-tk/gAgbMMxR6fn1MgMaM1HpU1ryAmBWWitnxG5OhuNXeX0cbpbgV5jA4AIpQJVNoyOfOevTtO6WX+rPs+EFqaQ==", "requires": { "glob": "^7.1.1", - "npm-package-arg": "^8.1.0", + "npm-package-arg": "^8.1.2", "promzard": "^0.3.0", "read": "~1.0.1", - "read-package-json": "^3.0.0", - "semver": "^7.3.2", + "read-package-json": "^3.0.1", + "semver": "^7.3.5", "validate-npm-package-license": "^3.0.4", "validate-npm-package-name": "^3.0.0" } @@ -13963,6 +13993,23 @@ "tar": "^6.1.0" } }, + "libnpmexec": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/libnpmexec/-/libnpmexec-1.0.1.tgz", + "integrity": "sha512-YK2kEhZNCcaDEqOIUWjadhJl9MgS69YHgMmGD5P3yntF0UXNOQfEqABoMTZv9ngPOJTJQGlU4Dfp2xb3bpUKzw==", + "requires": { + "@npmcli/arborist": "^2.3.0", + "@npmcli/ci-detect": "^1.3.0", + "@npmcli/run-script": "^1.8.4", + "chalk": "^4.1.0", + "mkdirp-infer-owner": "^2.0.0", + "npm-package-arg": "^8.1.2", + "pacote": "^11.3.1", + "proc-log": "^1.0.0", + "read": "^1.0.7", + "read-package-json-fast": "^2.0.2" + } + }, "libnpmfund": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/libnpmfund/-/libnpmfund-1.0.2.tgz", @@ -15032,6 +15079,11 @@ "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true }, + "proc-log": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-1.0.0.tgz", + "integrity": "sha512-aCk8AO51s+4JyuYGg3Q/a6gnrlDO09NpVWePtjp7xwphcoQ04x5WAfCyugcsbLooWcMJ87CLkD4+604IckEdhg==" + }, "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", -- cgit v1.2.3