@modernpoacher/deps 1.4.16 → 1.4.17

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.
package/babel.config.js CHANGED
@@ -22,10 +22,10 @@ const presets = [
22
22
  [
23
23
  '@babel/env',
24
24
  {
25
- useBuiltIns: 'usage',
26
25
  targets: {
27
- node: '12.19.0'
26
+ node: 'current'
28
27
  },
28
+ useBuiltIns: 'usage',
29
29
  corejs: 3
30
30
  }
31
31
  ]
@@ -26,6 +26,7 @@ const {
26
26
  gitCheckout,
27
27
  gitPull,
28
28
  gitPush,
29
+ gitPushTags,
29
30
  gitAdd,
30
31
  gitCommit
31
32
  } = require('@modernpoacher/deps/common/git')
@@ -134,6 +135,7 @@ async function execute (directory = DIRECTORY, registry = REGISTRY, force = fals
134
135
  await gitAdd(directory)
135
136
  await gitCommit(directory)
136
137
  await gitPush(directory)
138
+ await gitPushTags(directory)
137
139
  } catch (e) {
138
140
  handleError(e)
139
141
  }
@@ -1,5 +1,5 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.catGitRefsRemotesOriginHead=catGitRefsRemotesOriginHead;exports.gitAdd=gitAdd;exports.gitCheckout=gitCheckout;exports.gitCommit=gitCommit;exports.gitPull=gitPull;exports.gitPush=gitPush;exports.gitRevParse=gitRevParse;var _debug=_interopRequireDefault(require("debug"));var _os=require("os");var _child_process=require("child_process");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj};}const DIRECTORY='.';const BRANCH='master';const ADD='package.json package-lock.json';const COMMIT=(0,_os.platform)()==='win32'?'Updated `package.json` &/ `package-lock.json`':'Updated \\`package.json\\` &/ \\`package-lock.json\\`';const OPTIONS={maxBuffer:1024*2000};const log=(0,_debug.default)('@modernpoacher/deps');log(`\`git\` (${_os.platform}) is awake`);const trim=v=>v.split('\n').map(v=>v.trimEnd()).join('\n').trim();function use(key){const log=(0,_debug.default)(`@modernpoacher/deps:${key}`);return function use(v){log(trim(v));};}function out(key,directory){const log=(0,_debug.default)(`@modernpoacher/deps:${key}`);return function out(v){const s=v.trim();if(directory===s)return;return log(trim(s));};}function err(key,directory){const log=(0,_debug.default)(`@modernpoacher/deps:${key}`);return function err(v){const s=v.trim();if(directory===s||s.toLowerCase().startsWith('fatal: not a git repository'))return;return log(trim(s));};}const getErrorCode=({code=0}={})=>code;const getErrorMessage=({message=''}={})=>message;function getCatGitRefsRemotesOriginHeadCommand(directory=DIRECTORY){log('getCatGitRefsRemotesOriginHeadCommand');return`
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.catGitRefsRemotesOriginHead=catGitRefsRemotesOriginHead;exports.gitAdd=gitAdd;exports.gitCheckout=gitCheckout;exports.gitCommit=gitCommit;exports.gitPull=gitPull;exports.gitPush=gitPush;exports.gitPushTags=gitPushTags;exports.gitRevParse=gitRevParse;var _debug=_interopRequireDefault(require("debug"));var _os=require("os");var _child_process=require("child_process");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj};}const DIRECTORY='.';const BRANCH='master';const ADD='package.json package-lock.json';const COMMIT=(0,_os.platform)()==='win32'?'Updated `package.json` &/ `package-lock.json`':'Updated \\`package.json\\` &/ \\`package-lock.json\\`';const OPTIONS={maxBuffer:1024*2000};const log=(0,_debug.default)('@modernpoacher/deps');log(`\`git\` (${_os.platform}) is awake`);const trim=v=>v.split('\n').map(v=>v.trimEnd()).join('\n').trim();function use(key){const log=(0,_debug.default)(`@modernpoacher/deps:${key}`);return function use(v){log(trim(v));};}function out(key,directory){const log=(0,_debug.default)(`@modernpoacher/deps:${key}`);return function out(v){const s=v.trim();if(directory===s)return;return log(trim(s));};}function err(key,directory){const log=(0,_debug.default)(`@modernpoacher/deps:${key}`);return function err(v){const s=v.trim();if(directory===s||s.toLowerCase().startsWith('fatal: not a git repository'))return;return log(trim(s));};}const getErrorCode=({code=0}={})=>code;const getErrorMessage=({message=''}={})=>message;function getCatGitRefsRemotesOriginHeadCommand(directory=DIRECTORY){log('getCatGitRefsRemotesOriginHeadCommand');return`
2
2
  DIR=$(echo "${directory}/.git/refs/remotes/origin/HEAD" | sed -e "s/\\//\\\\\\/g" -e "s/://" | cat 2> /dev/null)
3
3
  [[ $DIR =~ "[-0-9a-zA-Z]*$" ]]
4
4
  echo "$\{BASH_REMATCH[0]}"
5
- `;}function isCommandError(e){log('isCommandError');return getErrorCode(e)===1&&getErrorMessage(e).toLowerCase().startsWith('command failed:');}function catGitRefsRemotesOriginHead(directory=DIRECTORY){log('catGitRefsRemotesOriginHead');return new Promise((resolve,reject)=>{const command=getCatGitRefsRemotesOriginHeadCommand(directory);const{stdout,stderr}=(0,_child_process.exec)(command,{...OPTIONS,cwd:directory},(e,v='')=>!e?resolve(trim(v)):reject(e));stdout.on('data',out('cat-git-refs-remotes-origin-head',directory));stderr.on('data',err('cat-git-refs-remotes-origin-head',directory));});}function gitRevParse(directory=DIRECTORY){log('gitRevParse');return new Promise((resolve,reject)=>{const command='git rev-parse --show-toplevel';const{stdout,stderr}=(0,_child_process.exec)(command,{...OPTIONS,cwd:directory},(e,v='')=>!e?resolve(trim(v)):reject(e));stdout.on('data',out('git-rev-parse',directory));stderr.on('data',err('git-rev-parse',directory));});}function gitCheckout(directory=DIRECTORY,branch=BRANCH){log('gitCheckout');return new Promise((resolve,reject)=>{const command=`cd "${directory}" && git checkout ${branch}`;const{stdout,stderr}=(0,_child_process.exec)(command,{...OPTIONS,cwd:directory},(e,v)=>e?isCommandError(e)?resolve(v):reject(e):resolve(v));stdout.on('data',use('git-checkout'));stderr.on('data',use('git-checkout'));});}function gitPull(directory=DIRECTORY){log('gitPull');return new Promise((resolve,reject)=>{const command=`cd "${directory}" && git pull`;const{stdout,stderr}=(0,_child_process.exec)(command,{...OPTIONS,cwd:directory},(e,v)=>e?isCommandError(e)?resolve(v):reject(e):resolve(v));stdout.on('data',use('git-pull'));stderr.on('data',use('git-pull'));});}function gitPush(directory=DIRECTORY){log('gitPush');return new Promise((resolve,reject)=>{const command=`cd "${directory}" && git push`;const{stdout,stderr}=(0,_child_process.exec)(command,{...OPTIONS,cwd:directory},(e,v)=>e?isCommandError(e)?resolve(v):reject(e):resolve(v));stdout.on('data',use('git-push'));stderr.on('data',use('git-push'));});}function gitAdd(directory=DIRECTORY,add=ADD){log('gitAdd');return new Promise((resolve,reject)=>{const command=`cd "${directory}" && git add ${add}`;const{stdout,stderr}=(0,_child_process.exec)(command,{...OPTIONS,cwd:directory},(e,v)=>e?isCommandError(e)?resolve(v):reject(e):resolve(v));stdout.on('data',use('git-add'));stderr.on('data',use('git-add'));});}function gitCommit(directory=DIRECTORY,commit=COMMIT){log('gitCommit');return new Promise((resolve,reject)=>{const command=`cd "${directory}" && git commit -m "${commit}"`;const{stdout,stderr}=(0,_child_process.exec)(command,{...OPTIONS,cwd:directory},(e,v)=>e?isCommandError(e)?resolve(v):reject(e):resolve(v));stdout.on('data',use('git-commit'));stderr.on('data',use('git-commit'));});}
5
+ `;}function isCommandError(e){log('isCommandError');return getErrorCode(e)===1&&getErrorMessage(e).toLowerCase().startsWith('command failed:');}function catGitRefsRemotesOriginHead(directory=DIRECTORY){log('catGitRefsRemotesOriginHead');return new Promise((resolve,reject)=>{const command=getCatGitRefsRemotesOriginHeadCommand(directory);const{stdout,stderr}=(0,_child_process.exec)(command,{...OPTIONS,cwd:directory},(e,v='')=>!e?resolve(trim(v)):reject(e));stdout.on('data',out('cat-git-refs-remotes-origin-head',directory));stderr.on('data',err('cat-git-refs-remotes-origin-head',directory));});}function gitRevParse(directory=DIRECTORY){log('gitRevParse');return new Promise((resolve,reject)=>{const command='git rev-parse --show-toplevel';const{stdout,stderr}=(0,_child_process.exec)(command,{...OPTIONS,cwd:directory},(e,v='')=>!e?resolve(trim(v)):reject(e));stdout.on('data',out('git-rev-parse',directory));stderr.on('data',err('git-rev-parse',directory));});}function gitCheckout(directory=DIRECTORY,branch=BRANCH){log('gitCheckout');return new Promise((resolve,reject)=>{const command=`cd "${directory}" && git checkout ${branch}`;const{stdout,stderr}=(0,_child_process.exec)(command,{...OPTIONS,cwd:directory},(e,v)=>e?isCommandError(e)?resolve(v):reject(e):resolve(v));stdout.on('data',use('git-checkout'));stderr.on('data',use('git-checkout'));});}function gitPull(directory=DIRECTORY){log('gitPull');return new Promise((resolve,reject)=>{const command=`cd "${directory}" && git pull`;const{stdout,stderr}=(0,_child_process.exec)(command,{...OPTIONS,cwd:directory},(e,v)=>e?isCommandError(e)?resolve(v):reject(e):resolve(v));stdout.on('data',use('git-pull'));stderr.on('data',use('git-pull'));});}function gitPush(directory=DIRECTORY){log('gitPush');return new Promise((resolve,reject)=>{const command=`cd "${directory}" && git push`;const{stdout,stderr}=(0,_child_process.exec)(command,{...OPTIONS,cwd:directory},(e,v)=>e?isCommandError(e)?resolve(v):reject(e):resolve(v));stdout.on('data',use('git-push'));stderr.on('data',use('git-push'));});}function gitPushTags(directory=DIRECTORY){log('gitPushTags');return new Promise((resolve,reject)=>{const command=`cd "${directory}" && git push --tags`;const{stdout,stderr}=(0,_child_process.exec)(command,{...OPTIONS,cwd:directory},(e,v)=>e?isCommandError(e)?resolve(v):reject(e):resolve(v));stdout.on('data',use('git-push-tags'));stderr.on('data',use('git-push-tags'));});}function gitAdd(directory=DIRECTORY,add=ADD){log('gitAdd');return new Promise((resolve,reject)=>{const command=`cd "${directory}" && git add ${add}`;const{stdout,stderr}=(0,_child_process.exec)(command,{...OPTIONS,cwd:directory},(e,v)=>e?isCommandError(e)?resolve(v):reject(e):resolve(v));stdout.on('data',use('git-add'));stderr.on('data',use('git-add'));});}function gitCommit(directory=DIRECTORY,commit=COMMIT){log('gitCommit');return new Promise((resolve,reject)=>{const command=`cd "${directory}" && git commit -m "${commit}"`;const{stdout,stderr}=(0,_child_process.exec)(command,{...OPTIONS,cwd:directory},(e,v)=>e?isCommandError(e)?resolve(v):reject(e):resolve(v));stdout.on('data',use('git-commit'));stderr.on('data',use('git-commit'));});}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@modernpoacher/deps",
3
- "version": "1.4.16",
3
+ "version": "1.4.17",
4
4
  "description": "Update NPM package dependencies from the command line",
5
5
  "keywords": [
6
6
  "deps",
@@ -51,27 +51,27 @@
51
51
  },
52
52
  "dependencies": {
53
53
  "commander": "^8.3.0",
54
- "debug": "^4.3.2",
54
+ "debug": "^4.3.3",
55
55
  "glob-all": "^3.2.1",
56
56
  "module-alias": "^2.2.2",
57
- "supports-color": "^9.1.0"
57
+ "supports-color": "^9.2.1"
58
58
  },
59
59
  "devDependencies": {
60
- "@babel/cli": "^7.16.0",
61
- "@babel/core": "^7.16.0",
62
- "@babel/eslint-parser": "^7.16.3",
63
- "@babel/preset-env": "^7.16.4",
64
- "@babel/register": "^7.16.0",
60
+ "@babel/cli": "^7.16.7",
61
+ "@babel/core": "^7.16.7",
62
+ "@babel/eslint-parser": "^7.16.5",
63
+ "@babel/preset-env": "^7.16.7",
64
+ "@babel/register": "^7.16.7",
65
65
  "babel-plugin-module-resolver": "^4.1.0",
66
66
  "chai": "^4.3.4",
67
- "core-js": "^3.19.1",
67
+ "core-js": "^3.20.1",
68
68
  "cross-env": "^7.0.3",
69
69
  "eslint": "7.32.0",
70
70
  "eslint-config-standard": "^16.0.3",
71
71
  "eslint-import-resolver-babel-module": "^5.3.1",
72
72
  "eslint-plugin-import": "^2.25.3",
73
73
  "eslint-plugin-node": "^11.1.0",
74
- "eslint-plugin-promise": "^5.1.1",
74
+ "eslint-plugin-promise": "^6.0.0",
75
75
  "husky": "^7.0.4",
76
76
  "mocha": "^9.1.3",
77
77
  "rimraf": "^3.0.2"
@@ -191,6 +191,7 @@ export function gitRevParse (directory = DIRECTORY) {
191
191
  * Switch to the default value if none is supplied
192
192
  *
193
193
  * @param {String} directory - A directory configured for Git
194
+ * @param {String} branch - The Git branch
194
195
  *
195
196
  * @return {Promise}
196
197
  */
@@ -278,6 +279,37 @@ export function gitPush (directory = DIRECTORY) {
278
279
  )
279
280
  }
280
281
 
282
+ /**
283
+ * @function gitPushTags
284
+ *
285
+ * Push tags changes to the Git remote
286
+ *
287
+ * @param {String} directory - A directory configured for Git
288
+ *
289
+ * @return {Promise}
290
+ */
291
+ export function gitPushTags (directory = DIRECTORY) {
292
+ log('gitPushTags')
293
+
294
+ return (
295
+ new Promise((resolve, reject) => {
296
+ const command = `cd "${directory}" && git push --tags`
297
+
298
+ /**
299
+ * log(command)
300
+ */
301
+
302
+ const {
303
+ stdout,
304
+ stderr
305
+ } = exec(command, { ...OPTIONS, cwd: directory }, (e, v) => (e) ? isCommandError(e) ? resolve(v) : reject(e) : resolve(v))
306
+
307
+ stdout.on('data', use('git-push-tags'))
308
+ stderr.on('data', use('git-push-tags'))
309
+ })
310
+ )
311
+ }
312
+
281
313
  /**
282
314
  * @function gitAdd
283
315
  *
@@ -7,6 +7,7 @@ import {
7
7
  gitCheckout,
8
8
  gitPull,
9
9
  gitPush,
10
+ gitPushTags,
10
11
  gitAdd,
11
12
  gitCommit
12
13
  } from '@modernpoacher/deps/common/git'
@@ -50,6 +51,13 @@ describe('@modernpoacher/deps/common/git', () => {
50
51
  })
51
52
  })
52
53
 
54
+ describe('`gitPushTags`', () => {
55
+ it('is a function', () => {
56
+ return expect(gitPushTags)
57
+ .to.be.a('function')
58
+ })
59
+ })
60
+
53
61
  describe('`gitAdd`', () => {
54
62
  it('is a function', () => {
55
63
  return expect(gitAdd)