@modernpoacher/deps 1.6.23 → 1.6.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -35,6 +35,7 @@ const {
35
35
 
36
36
  const {
37
37
  REGISTRY,
38
+ getIgnore,
38
39
  getAuthor
39
40
  } = require('@modernpoacher/deps/common')
40
41
 
@@ -77,6 +78,18 @@ function handleCommandError (e) {
77
78
  }
78
79
  }
79
80
 
81
+ async function getIgnoreFromConfiguration (path) {
82
+ log('getIgnoreFromConfiguration')
83
+
84
+ const CONFIGURATION = await hasConfiguration(path)
85
+ ? await getConfiguration(path)
86
+ : {}
87
+
88
+ return (
89
+ getIgnore(CONFIGURATION)
90
+ )
91
+ }
92
+
80
93
  async function getAuthorFromConfiguration (path) {
81
94
  log('getAuthorFromConfiguration')
82
95
 
@@ -139,8 +152,13 @@ async function iterate ([directory, ...directories] = [], registry, force, messa
139
152
  const path = resolve(directory)
140
153
 
141
154
  try {
155
+ log({ path })
156
+
142
157
  if (path === await gitRevParse(path)) {
143
- await execute(path, registry, force, message, author || await getAuthorFromConfiguration(path))
158
+ const ignore = await getIgnoreFromConfiguration(path)
159
+ if (!ignore) {
160
+ await execute(path, registry, force, message, author || await getAuthorFromConfiguration(path))
161
+ }
144
162
  }
145
163
  } catch (e) {
146
164
  handleCommandError(e)
@@ -178,10 +196,15 @@ async function executeFrom (directory, registry, force, message, author) {
178
196
  const path = resolve(directory)
179
197
 
180
198
  try {
199
+ log({ path })
200
+
181
201
  if (path === await gitRevParse(path)) {
182
- return (
183
- await execute(path, registry, force, message, author || await getAuthorFromConfiguration(path))
184
- )
202
+ const ignore = await getIgnoreFromConfiguration(path)
203
+ if (!ignore) {
204
+ return (
205
+ await execute(path, registry, force, message, author || await getAuthorFromConfiguration(path))
206
+ )
207
+ }
185
208
  }
186
209
  } catch (e) {
187
210
  handleCommandError(e)
@@ -194,10 +217,15 @@ async function executeOnly (directory, registry, force, message, author) {
194
217
  const path = resolve(directory)
195
218
 
196
219
  try {
220
+ log({ path })
221
+
197
222
  if (path === await gitRevParse(path)) {
198
- return (
199
- await execute(path, registry, force, message, author || await getAuthorFromConfiguration(path))
200
- )
223
+ const ignore = await getIgnoreFromConfiguration(path)
224
+ if (!ignore) {
225
+ return (
226
+ await execute(path, registry, force, message, author || await getAuthorFromConfiguration(path))
227
+ )
228
+ }
201
229
  }
202
230
  } catch (e) {
203
231
  handleCommandError(e)
@@ -210,10 +238,15 @@ async function executePath (directory, registry, force, message, author) {
210
238
  const path = resolve(directory)
211
239
 
212
240
  try {
241
+ log({ path })
242
+
213
243
  if (path === await gitRevParse(path)) {
214
- return (
215
- await execute(path, registry, force, message, author || await getAuthorFromConfiguration(path))
216
- )
244
+ const ignore = await getIgnoreFromConfiguration(path)
245
+ if (!ignore) {
246
+ return (
247
+ await execute(path, registry, force, message, author || await getAuthorFromConfiguration(path))
248
+ )
249
+ }
217
250
  }
218
251
  } catch (e) {
219
252
  handleCommandError(e)
@@ -1,5 +1,5 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.getCommands=exports.getBundleDependencies=exports.getAuthor=exports.REGISTRY=exports.NVM=exports.DIRECTORY=exports.AUTHOR=void 0;exports.getDeps=getDeps;exports.getDepsExact=getDepsExact;exports.isPreRelease=exports.isExact=exports.getSaveProdParameter=exports.getSaveOptionalParameter=exports.getSaveExactParameter=exports.getSaveDevParameter=exports.getSaveBundleParameter=exports.getRegistryParameter=exports.getProdDependencies=exports.getPeerDependencies=exports.getOptionalDependencies=exports.getNoSaveParameter=exports.getForceParameter=exports.getDevDependencies=void 0;exports.normalizeCommands=normalizeCommands;exports.transform=transform;exports.transformDependency=void 0;var _debug=_interopRequireDefault(require("debug"));var _path=require("path");var _env=require("./env");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj};}const{path:MODULE_PATH}=module;const DIRECTORY='.';exports.DIRECTORY=DIRECTORY;const REGISTRY='https://registry.npmjs.org';exports.REGISTRY=REGISTRY;const AUTHOR='Modern Poacher Limited <modernpoacher@modernpoacher.com>';exports.AUTHOR=AUTHOR;const NVM=(0,_path.resolve)(MODULE_PATH,'../../nvm.sh');exports.NVM=NVM;const log=(0,_debug.default)('@modernpoacher/deps');log(`\`common\` (${_env.PLATFORM}) is awake`);const tidy=v=>v.replace(/\n\n/gm,String.fromCharCode(10)).trim();const getSaveProdParameter=commands=>commands.concat(' --save-prod');exports.getSaveProdParameter=getSaveProdParameter;const getSaveDevParameter=commands=>commands.concat(' --save-dev');exports.getSaveDevParameter=getSaveDevParameter;const getSaveBundleParameter=commands=>commands.concat(' --save-bundle');exports.getSaveBundleParameter=getSaveBundleParameter;const getSaveOptionalParameter=commands=>commands.concat(' --save-optional');exports.getSaveOptionalParameter=getSaveOptionalParameter;const getRegistryParameter=(r,commands)=>r?commands.concat(` --registry ${r}`):commands;exports.getRegistryParameter=getRegistryParameter;const getForceParameter=(f,commands)=>f?commands.concat(' --force'):commands;exports.getForceParameter=getForceParameter;const getNoSaveParameter=(s,commands)=>s?commands:commands.concat(' --no-save');exports.getNoSaveParameter=getNoSaveParameter;const getSaveExactParameter=commands=>commands.concat(' --save-exact');exports.getSaveExactParameter=getSaveExactParameter;const getCommands=_env.PLATFORM==='win32'?(directory=DIRECTORY,commands='npm i')=>tidy(commands):(directory=DIRECTORY,commands='npm i')=>tidy(`
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.getCommands=exports.getBundleDependencies=exports.getAuthor=exports.REGISTRY=exports.NVM=exports.DIRECTORY=exports.AUTHOR=void 0;exports.getDeps=getDeps;exports.getDepsExact=getDepsExact;exports.isPreRelease=exports.isExact=exports.getSaveProdParameter=exports.getSaveOptionalParameter=exports.getSaveExactParameter=exports.getSaveDevParameter=exports.getSaveBundleParameter=exports.getRegistryParameter=exports.getProdDependencies=exports.getPeerDependencies=exports.getOptionalDependencies=exports.getNoSaveParameter=exports.getIgnore=exports.getForceParameter=exports.getDevDependencies=void 0;exports.normalizeCommands=normalizeCommands;exports.transform=transform;exports.transformDependency=void 0;var _debug=_interopRequireDefault(require("debug"));var _path=require("path");var _env=require("./env");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj};}const{path:MODULE_PATH}=module;const DIRECTORY='.';exports.DIRECTORY=DIRECTORY;const REGISTRY='https://registry.npmjs.org';exports.REGISTRY=REGISTRY;const AUTHOR='Modern Poacher Limited <modernpoacher@modernpoacher.com>';exports.AUTHOR=AUTHOR;const NVM=(0,_path.resolve)(MODULE_PATH,'../../nvm.sh');exports.NVM=NVM;const log=(0,_debug.default)('@modernpoacher/deps');log(`\`common\` (${_env.PLATFORM}) is awake`);const tidy=v=>v.replace(/\n\n/gm,String.fromCharCode(10)).trim();const getSaveProdParameter=commands=>commands.concat(' --save-prod');exports.getSaveProdParameter=getSaveProdParameter;const getSaveDevParameter=commands=>commands.concat(' --save-dev');exports.getSaveDevParameter=getSaveDevParameter;const getSaveBundleParameter=commands=>commands.concat(' --save-bundle');exports.getSaveBundleParameter=getSaveBundleParameter;const getSaveOptionalParameter=commands=>commands.concat(' --save-optional');exports.getSaveOptionalParameter=getSaveOptionalParameter;const getRegistryParameter=(r,commands)=>r?commands.concat(` --registry ${r}`):commands;exports.getRegistryParameter=getRegistryParameter;const getForceParameter=(f,commands)=>f?commands.concat(' --force'):commands;exports.getForceParameter=getForceParameter;const getNoSaveParameter=(s,commands)=>s?commands:commands.concat(' --no-save');exports.getNoSaveParameter=getNoSaveParameter;const getSaveExactParameter=commands=>commands.concat(' --save-exact');exports.getSaveExactParameter=getSaveExactParameter;const getCommands=_env.PLATFORM==='win32'?(directory=DIRECTORY,commands='npm i')=>tidy(commands):(directory=DIRECTORY,commands='npm i')=>tidy(`
2
2
  export PATH=/usr/local/bin:$PATH &> /dev/null
3
3
  . "${NVM}" 2> /dev/null
4
4
  ${commands}
5
- `);exports.getCommands=getCommands;const getProdDependencies=({dependencies={}}={})=>dependencies;exports.getProdDependencies=getProdDependencies;const getDevDependencies=({devDependencies={}}={})=>devDependencies;exports.getDevDependencies=getDevDependencies;const getOptionalDependencies=({optionalDependencies={}}={})=>optionalDependencies;exports.getOptionalDependencies=getOptionalDependencies;const getBundleDependencies=({bundleDependencies=[]}={})=>bundleDependencies;exports.getBundleDependencies=getBundleDependencies;const getPeerDependencies=({peerDependencies}={})=>peerDependencies;exports.getPeerDependencies=getPeerDependencies;const getAuthor=({author}={})=>author;exports.getAuthor=getAuthor;const isPreRelease=v=>/-/.test(v);exports.isPreRelease=isPreRelease;const isExact=v=>/^\d/.test(v);exports.isExact=isExact;function getDepsExact(values,configuration){log('getDepsExact');return Object.entries(values).reduce((accumulator,[name,version])=>isExact(version)?accumulator.concat({name,version:Reflect.has(configuration,name)?Reflect.get(configuration,name):version}):accumulator,[]);}function getDeps(values){log('getDeps');return Object.entries(values).reduce((accumulator,[name,version])=>isExact(version)?accumulator:isPreRelease(version)?accumulator.concat({name,version}):accumulator.concat({name,version:'latest'}),[]);}function normalizeCommands(value){while(/\s\s|\n/.test(value)){value=value.replace(/\s\s/gm,String.fromCharCode(32)).replace(/\n/gm,String.fromCharCode(32));}return value.trim();}const transformDependency=({name='@modernpoacher/deps',version='latest'}={})=>`${name}@${version}`;exports.transformDependency=transformDependency;function transform(value){log('transform');return Array.isArray(value)?value.map(transformDependency).join(String.fromCharCode(32)).trim():transformDependency(value);}
5
+ `);exports.getCommands=getCommands;const getProdDependencies=({dependencies={}}={})=>dependencies;exports.getProdDependencies=getProdDependencies;const getDevDependencies=({devDependencies={}}={})=>devDependencies;exports.getDevDependencies=getDevDependencies;const getOptionalDependencies=({optionalDependencies={}}={})=>optionalDependencies;exports.getOptionalDependencies=getOptionalDependencies;const getBundleDependencies=({bundleDependencies=[]}={})=>bundleDependencies;exports.getBundleDependencies=getBundleDependencies;const getPeerDependencies=({peerDependencies}={})=>peerDependencies;exports.getPeerDependencies=getPeerDependencies;const getIgnore=({ignore=false}={})=>ignore===true;exports.getIgnore=getIgnore;const getAuthor=({author}={})=>String(author);exports.getAuthor=getAuthor;const isPreRelease=v=>/-/.test(v);exports.isPreRelease=isPreRelease;const isExact=v=>/^\d/.test(v);exports.isExact=isExact;function getDepsExact(values,configuration){log('getDepsExact');return Object.entries(values).reduce((accumulator,[name,version])=>isExact(version)?accumulator.concat({name,version:Reflect.has(configuration,name)?Reflect.get(configuration,name):version}):accumulator,[]);}function getDeps(values){log('getDeps');return Object.entries(values).reduce((accumulator,[name,version])=>isExact(version)?accumulator:isPreRelease(version)?accumulator.concat({name,version}):accumulator.concat({name,version:'latest'}),[]);}function normalizeCommands(value){while(/\s\s|\n/.test(value)){value=value.replace(/\s\s/gm,String.fromCharCode(32)).replace(/\n/gm,String.fromCharCode(32));}return value.trim();}const transformDependency=({name='@modernpoacher/deps',version='latest'}={})=>`${name}@${version}`;exports.transformDependency=transformDependency;function transform(value){log('transform');return Array.isArray(value)?value.map(transformDependency).join(String.fromCharCode(32)).trim():transformDependency(value);}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@modernpoacher/deps",
3
- "version": "1.6.23",
3
+ "version": "1.6.25",
4
4
  "description": "Update NPM package dependencies from the command line",
5
5
  "keywords": [
6
6
  "deps",
@@ -50,30 +50,30 @@
50
50
  "deps-head": "bin/head.sh"
51
51
  },
52
52
  "dependencies": {
53
- "commander": "^9.2.0",
53
+ "commander": "^9.4.1",
54
54
  "debug": "^4.3.4",
55
- "glob-all": "^3.3.0",
55
+ "glob-all": "^3.3.1",
56
56
  "module-alias": "^2.2.2",
57
57
  "supports-color": "8.1.1"
58
58
  },
59
59
  "devDependencies": {
60
- "@babel/cli": "^7.17.10",
61
- "@babel/core": "^7.18.0",
62
- "@babel/eslint-parser": "^7.17.0",
63
- "@babel/preset-env": "^7.18.0",
64
- "@babel/register": "^7.17.7",
60
+ "@babel/cli": "^7.19.3",
61
+ "@babel/core": "^7.20.2",
62
+ "@babel/eslint-parser": "^7.19.1",
63
+ "@babel/preset-env": "^7.20.2",
64
+ "@babel/register": "^7.18.9",
65
65
  "babel-plugin-module-resolver": "^4.1.0",
66
- "chai": "^4.3.6",
67
- "core-js": "^3.22.5",
66
+ "chai": "^4.3.7",
67
+ "core-js": "^3.26.0",
68
68
  "cross-env": "^7.0.3",
69
- "eslint": "^8.16.0",
69
+ "eslint": "^8.27.0",
70
70
  "eslint-config-standard": "^17.0.0",
71
71
  "eslint-import-resolver-babel-module": "^5.3.1",
72
72
  "eslint-plugin-import": "^2.26.0",
73
73
  "eslint-plugin-node": "^11.1.0",
74
- "eslint-plugin-promise": "^6.0.0",
75
- "husky": "^8.0.1",
76
- "mocha": "^10.0.0",
74
+ "eslint-plugin-promise": "^6.1.1",
75
+ "husky": "^8.0.2",
76
+ "mocha": "^10.1.0",
77
77
  "rimraf": "^3.0.2"
78
78
  },
79
79
  "_moduleAliases": {
@@ -192,6 +192,17 @@ export const getBundleDependencies = ({ bundleDependencies = [] } = {}) => bundl
192
192
  */
193
193
  export const getPeerDependencies = ({ peerDependencies } = {}) => peerDependencies
194
194
 
195
+ /**
196
+ * @function getIgnore
197
+ *
198
+ * Get the ignore flag by destructuring the package or configuration
199
+ *
200
+ * @param {Object} package
201
+ *
202
+ * @return {Boolean}
203
+ */
204
+ export const getIgnore = ({ ignore = false } = {}) => ignore === true
205
+
195
206
  /**
196
207
  * @function getAuthor
197
208
  *
@@ -199,9 +210,9 @@ export const getPeerDependencies = ({ peerDependencies } = {}) => peerDependenci
199
210
  *
200
211
  * @param {Object} package
201
212
  *
202
- * @return {Object}
213
+ * @return {String}
203
214
  */
204
- export const getAuthor = ({ author } = {}) => author
215
+ export const getAuthor = ({ author } = {}) => String(author)
205
216
 
206
217
  /**
207
218
  * @function isPreRelease