azure-pipelines-task-lib 4.0.1-preview → 4.0.2

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.
@@ -1,41 +1,41 @@
1
- /// <reference types="node" />
2
- import Q = require('q');
3
- import events = require('events');
4
- import ma = require('./mock-answer');
5
- export declare function setAnswers(answers: ma.TaskLibAnswers): void;
6
- export interface IExecOptions extends IExecSyncOptions {
7
- failOnStdErr?: boolean;
8
- ignoreReturnCode?: boolean;
9
- }
10
- export interface IExecSyncOptions {
11
- cwd?: string;
12
- env?: {
13
- [key: string]: string | undefined;
14
- };
15
- silent?: boolean;
16
- outStream: NodeJS.WritableStream;
17
- errStream: NodeJS.WritableStream;
18
- windowsVerbatimArguments?: boolean;
19
- }
20
- export interface IExecSyncResult {
21
- stdout: string;
22
- stderr: string;
23
- code: number;
24
- error: Error;
25
- }
26
- export declare function debug(message: any): void;
27
- export declare class ToolRunner extends events.EventEmitter {
28
- constructor(toolPath: string);
29
- private toolPath;
30
- private args;
31
- private pipeOutputToTool;
32
- private _debug;
33
- private _argStringToArray;
34
- arg(val: any): ToolRunner;
35
- argIf(condition: any, val: any): ToolRunner;
36
- line(val: string): ToolRunner;
37
- pipeExecOutputToTool(tool: ToolRunner): ToolRunner;
38
- private ignoreTempPath;
39
- exec(options?: IExecOptions): Q.Promise<number>;
40
- execSync(options?: IExecSyncOptions): IExecSyncResult;
41
- }
1
+ /// <reference types="node" />
2
+ import Q = require('q');
3
+ import events = require('events');
4
+ import ma = require('./mock-answer');
5
+ export declare function setAnswers(answers: ma.TaskLibAnswers): void;
6
+ export interface IExecOptions extends IExecSyncOptions {
7
+ failOnStdErr?: boolean;
8
+ ignoreReturnCode?: boolean;
9
+ }
10
+ export interface IExecSyncOptions {
11
+ cwd?: string;
12
+ env?: {
13
+ [key: string]: string | undefined;
14
+ };
15
+ silent?: boolean;
16
+ outStream: NodeJS.WritableStream;
17
+ errStream: NodeJS.WritableStream;
18
+ windowsVerbatimArguments?: boolean;
19
+ }
20
+ export interface IExecSyncResult {
21
+ stdout: string;
22
+ stderr: string;
23
+ code: number;
24
+ error: Error;
25
+ }
26
+ export declare function debug(message: any): void;
27
+ export declare class ToolRunner extends events.EventEmitter {
28
+ constructor(toolPath: string);
29
+ private toolPath;
30
+ private args;
31
+ private pipeOutputToTool;
32
+ private _debug;
33
+ private _argStringToArray;
34
+ arg(val: any): ToolRunner;
35
+ argIf(condition: any, val: any): ToolRunner;
36
+ line(val: string): ToolRunner;
37
+ pipeExecOutputToTool(tool: ToolRunner): ToolRunner;
38
+ private ignoreTempPath;
39
+ exec(options?: IExecOptions): Q.Promise<number>;
40
+ execSync(options?: IExecSyncOptions): IExecSyncResult;
41
+ }
@@ -1,268 +1,268 @@
1
- "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- extendStatics(d, b);
11
- function __() { this.constructor = d; }
12
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
13
- };
14
- })();
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.ToolRunner = exports.debug = exports.setAnswers = void 0;
17
- var Q = require("q");
18
- var os = require("os");
19
- var events = require("events");
20
- var ma = require("./mock-answer");
21
- var mock = new ma.MockAnswers();
22
- function setAnswers(answers) {
23
- mock.initialize(answers);
24
- }
25
- exports.setAnswers = setAnswers;
26
- ;
27
- ;
28
- function debug(message) {
29
- // do nothing, overridden
30
- }
31
- exports.debug = debug;
32
- var ToolRunner = /** @class */ (function (_super) {
33
- __extends(ToolRunner, _super);
34
- function ToolRunner(toolPath) {
35
- var _this = this;
36
- debug('toolRunner toolPath: ' + toolPath);
37
- _this = _super.call(this) || this;
38
- _this.toolPath = toolPath;
39
- _this.args = [];
40
- return _this;
41
- }
42
- ToolRunner.prototype._debug = function (message) {
43
- debug(message);
44
- this.emit('debug', message);
45
- };
46
- ToolRunner.prototype._argStringToArray = function (argString) {
47
- var args = [];
48
- var inQuotes = false;
49
- var escaped = false;
50
- var arg = '';
51
- var append = function (c) {
52
- // we only escape double quotes.
53
- if (escaped && c !== '"') {
54
- arg += '\\';
55
- }
56
- arg += c;
57
- escaped = false;
58
- };
59
- for (var i = 0; i < argString.length; i++) {
60
- var c = argString.charAt(i);
61
- if (c === '"') {
62
- if (!escaped) {
63
- inQuotes = !inQuotes;
64
- }
65
- else {
66
- append(c);
67
- }
68
- continue;
69
- }
70
- if (c === "\\" && inQuotes) {
71
- escaped = true;
72
- continue;
73
- }
74
- if (c === ' ' && !inQuotes) {
75
- if (arg.length > 0) {
76
- args.push(arg);
77
- arg = '';
78
- }
79
- continue;
80
- }
81
- append(c);
82
- }
83
- if (arg.length > 0) {
84
- args.push(arg.trim());
85
- }
86
- return args;
87
- };
88
- ToolRunner.prototype.arg = function (val) {
89
- if (!val) {
90
- return this;
91
- }
92
- if (val instanceof Array) {
93
- this._debug(this.toolPath + ' arg: ' + JSON.stringify(val));
94
- this.args = this.args.concat(val);
95
- }
96
- else if (typeof (val) === 'string') {
97
- this._debug(this.toolPath + ' arg: ' + val);
98
- this.args = this.args.concat(val.trim());
99
- }
100
- return this;
101
- };
102
- ToolRunner.prototype.argIf = function (condition, val) {
103
- if (condition) {
104
- this.arg(val);
105
- }
106
- return this;
107
- };
108
- ToolRunner.prototype.line = function (val) {
109
- if (!val) {
110
- return this;
111
- }
112
- this._debug(this.toolPath + ' arg: ' + val);
113
- this.args = this.args.concat(this._argStringToArray(val));
114
- return this;
115
- };
116
- ToolRunner.prototype.pipeExecOutputToTool = function (tool) {
117
- this.pipeOutputToTool = tool;
118
- return this;
119
- };
120
- ToolRunner.prototype.ignoreTempPath = function (cmdString) {
121
- this._debug('ignoreTempPath=' + process.env['MOCK_IGNORE_TEMP_PATH']);
122
- this._debug('tempPath=' + process.env['MOCK_TEMP_PATH']);
123
- if (process.env['MOCK_IGNORE_TEMP_PATH'] === 'true') {
124
- // Using split/join to replace the temp path
125
- cmdString = cmdString.split(process.env['MOCK_TEMP_PATH'] || "").join('');
126
- }
127
- return cmdString;
128
- };
129
- //
130
- // Exec - use for long running tools where you need to stream live output as it runs
131
- // returns a promise with return code.
132
- //
133
- ToolRunner.prototype.exec = function (options) {
134
- var _this = this;
135
- var defer = Q.defer();
136
- this._debug('exec tool: ' + this.toolPath);
137
- this._debug('Arguments:');
138
- this.args.forEach(function (arg) {
139
- _this._debug(' ' + arg);
140
- });
141
- var success = true;
142
- options = options || {};
143
- var ops = {
144
- cwd: options.cwd || process.cwd(),
145
- env: options.env || process.env,
146
- silent: options.silent || false,
147
- outStream: options.outStream || process.stdout,
148
- errStream: options.errStream || process.stderr,
149
- failOnStdErr: options.failOnStdErr || false,
150
- ignoreReturnCode: options.ignoreReturnCode || false,
151
- windowsVerbatimArguments: options.windowsVerbatimArguments
152
- };
153
- var argString = this.args.join(' ') || '';
154
- var cmdString = this.toolPath;
155
- if (argString) {
156
- cmdString += (' ' + argString);
157
- }
158
- // Using split/join to replace the temp path
159
- cmdString = this.ignoreTempPath(cmdString);
160
- if (!ops.silent) {
161
- if (this.pipeOutputToTool) {
162
- var pipeToolArgString = this.pipeOutputToTool.args.join(' ') || '';
163
- var pipeToolCmdString = this.ignoreTempPath(this.pipeOutputToTool.toolPath);
164
- if (pipeToolArgString) {
165
- pipeToolCmdString += (' ' + pipeToolArgString);
166
- }
167
- cmdString += ' | ' + pipeToolCmdString;
168
- }
169
- ops.outStream.write('[command]' + cmdString + os.EOL);
170
- }
171
- // TODO: filter process.env
172
- var res = mock.getResponse('exec', cmdString, debug);
173
- if (res.stdout) {
174
- this.emit('stdout', res.stdout);
175
- if (!ops.silent) {
176
- ops.outStream.write(res.stdout + os.EOL);
177
- }
178
- var stdLineArray = res.stdout.split(os.EOL);
179
- for (var _i = 0, _a = stdLineArray.slice(0, -1); _i < _a.length; _i++) {
180
- var line = _a[_i];
181
- this.emit('stdline', line);
182
- }
183
- if (stdLineArray.length > 0 && stdLineArray[stdLineArray.length - 1].length > 0) {
184
- this.emit('stdline', stdLineArray[stdLineArray.length - 1]);
185
- }
186
- }
187
- if (res.stderr) {
188
- this.emit('stderr', res.stderr);
189
- success = !ops.failOnStdErr;
190
- if (!ops.silent) {
191
- var s = ops.failOnStdErr ? ops.errStream : ops.outStream;
192
- s.write(res.stderr + os.EOL);
193
- }
194
- var stdErrArray = res.stderr.split(os.EOL);
195
- for (var _b = 0, _c = stdErrArray.slice(0, -1); _b < _c.length; _b++) {
196
- var line = _c[_b];
197
- this.emit('errline', line);
198
- }
199
- if (stdErrArray.length > 0 && stdErrArray[stdErrArray.length - 1].length > 0) {
200
- this.emit('errline', stdErrArray[stdErrArray.length - 1]);
201
- }
202
- }
203
- var code = res.code;
204
- if (!ops.silent) {
205
- ops.outStream.write('rc:' + res.code + os.EOL);
206
- }
207
- if (code != 0 && !ops.ignoreReturnCode) {
208
- success = false;
209
- }
210
- if (!ops.silent) {
211
- ops.outStream.write('success:' + success + os.EOL);
212
- }
213
- if (success) {
214
- defer.resolve(code);
215
- }
216
- else {
217
- defer.reject(new Error(this.toolPath + ' failed with return code: ' + code));
218
- }
219
- return defer.promise;
220
- };
221
- //
222
- // ExecSync - use for short running simple commands. Simple and convenient (synchronous)
223
- // but also has limits. For example, no live output and limited to max buffer
224
- //
225
- ToolRunner.prototype.execSync = function (options) {
226
- var _this = this;
227
- var defer = Q.defer();
228
- this._debug('exec tool: ' + this.toolPath);
229
- this._debug('Arguments:');
230
- this.args.forEach(function (arg) {
231
- _this._debug(' ' + arg);
232
- });
233
- var success = true;
234
- options = options || {};
235
- var ops = {
236
- cwd: options.cwd || process.cwd(),
237
- env: options.env || process.env,
238
- silent: options.silent || false,
239
- outStream: options.outStream || process.stdout,
240
- errStream: options.errStream || process.stderr,
241
- windowsVerbatimArguments: options.windowsVerbatimArguments,
242
- };
243
- var argString = this.args.join(' ') || '';
244
- var cmdString = this.toolPath;
245
- // Using split/join to replace the temp path
246
- cmdString = this.ignoreTempPath(cmdString);
247
- if (argString) {
248
- cmdString += (' ' + argString);
249
- }
250
- if (!ops.silent) {
251
- ops.outStream.write('[command]' + cmdString + os.EOL);
252
- }
253
- var r = mock.getResponse('exec', cmdString, debug);
254
- if (!ops.silent && r.stdout && r.stdout.length > 0) {
255
- ops.outStream.write(r.stdout);
256
- }
257
- if (!ops.silent && r.stderr && r.stderr.length > 0) {
258
- ops.errStream.write(r.stderr);
259
- }
260
- return {
261
- code: r.code,
262
- stdout: (r.stdout) ? r.stdout.toString() : null,
263
- stderr: (r.stderr) ? r.stderr.toString() : null
264
- };
265
- };
266
- return ToolRunner;
267
- }(events.EventEmitter));
268
- exports.ToolRunner = ToolRunner;
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ extendStatics(d, b);
11
+ function __() { this.constructor = d; }
12
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
13
+ };
14
+ })();
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.ToolRunner = exports.debug = exports.setAnswers = void 0;
17
+ var Q = require("q");
18
+ var os = require("os");
19
+ var events = require("events");
20
+ var ma = require("./mock-answer");
21
+ var mock = new ma.MockAnswers();
22
+ function setAnswers(answers) {
23
+ mock.initialize(answers);
24
+ }
25
+ exports.setAnswers = setAnswers;
26
+ ;
27
+ ;
28
+ function debug(message) {
29
+ // do nothing, overridden
30
+ }
31
+ exports.debug = debug;
32
+ var ToolRunner = /** @class */ (function (_super) {
33
+ __extends(ToolRunner, _super);
34
+ function ToolRunner(toolPath) {
35
+ var _this = this;
36
+ debug('toolRunner toolPath: ' + toolPath);
37
+ _this = _super.call(this) || this;
38
+ _this.toolPath = toolPath;
39
+ _this.args = [];
40
+ return _this;
41
+ }
42
+ ToolRunner.prototype._debug = function (message) {
43
+ debug(message);
44
+ this.emit('debug', message);
45
+ };
46
+ ToolRunner.prototype._argStringToArray = function (argString) {
47
+ var args = [];
48
+ var inQuotes = false;
49
+ var escaped = false;
50
+ var arg = '';
51
+ var append = function (c) {
52
+ // we only escape double quotes.
53
+ if (escaped && c !== '"') {
54
+ arg += '\\';
55
+ }
56
+ arg += c;
57
+ escaped = false;
58
+ };
59
+ for (var i = 0; i < argString.length; i++) {
60
+ var c = argString.charAt(i);
61
+ if (c === '"') {
62
+ if (!escaped) {
63
+ inQuotes = !inQuotes;
64
+ }
65
+ else {
66
+ append(c);
67
+ }
68
+ continue;
69
+ }
70
+ if (c === "\\" && inQuotes) {
71
+ escaped = true;
72
+ continue;
73
+ }
74
+ if (c === ' ' && !inQuotes) {
75
+ if (arg.length > 0) {
76
+ args.push(arg);
77
+ arg = '';
78
+ }
79
+ continue;
80
+ }
81
+ append(c);
82
+ }
83
+ if (arg.length > 0) {
84
+ args.push(arg.trim());
85
+ }
86
+ return args;
87
+ };
88
+ ToolRunner.prototype.arg = function (val) {
89
+ if (!val) {
90
+ return this;
91
+ }
92
+ if (val instanceof Array) {
93
+ this._debug(this.toolPath + ' arg: ' + JSON.stringify(val));
94
+ this.args = this.args.concat(val);
95
+ }
96
+ else if (typeof (val) === 'string') {
97
+ this._debug(this.toolPath + ' arg: ' + val);
98
+ this.args = this.args.concat(val.trim());
99
+ }
100
+ return this;
101
+ };
102
+ ToolRunner.prototype.argIf = function (condition, val) {
103
+ if (condition) {
104
+ this.arg(val);
105
+ }
106
+ return this;
107
+ };
108
+ ToolRunner.prototype.line = function (val) {
109
+ if (!val) {
110
+ return this;
111
+ }
112
+ this._debug(this.toolPath + ' arg: ' + val);
113
+ this.args = this.args.concat(this._argStringToArray(val));
114
+ return this;
115
+ };
116
+ ToolRunner.prototype.pipeExecOutputToTool = function (tool) {
117
+ this.pipeOutputToTool = tool;
118
+ return this;
119
+ };
120
+ ToolRunner.prototype.ignoreTempPath = function (cmdString) {
121
+ this._debug('ignoreTempPath=' + process.env['MOCK_IGNORE_TEMP_PATH']);
122
+ this._debug('tempPath=' + process.env['MOCK_TEMP_PATH']);
123
+ if (process.env['MOCK_IGNORE_TEMP_PATH'] === 'true') {
124
+ // Using split/join to replace the temp path
125
+ cmdString = cmdString.split(process.env['MOCK_TEMP_PATH'] || "").join('');
126
+ }
127
+ return cmdString;
128
+ };
129
+ //
130
+ // Exec - use for long running tools where you need to stream live output as it runs
131
+ // returns a promise with return code.
132
+ //
133
+ ToolRunner.prototype.exec = function (options) {
134
+ var _this = this;
135
+ var defer = Q.defer();
136
+ this._debug('exec tool: ' + this.toolPath);
137
+ this._debug('Arguments:');
138
+ this.args.forEach(function (arg) {
139
+ _this._debug(' ' + arg);
140
+ });
141
+ var success = true;
142
+ options = options || {};
143
+ var ops = {
144
+ cwd: options.cwd || process.cwd(),
145
+ env: options.env || process.env,
146
+ silent: options.silent || false,
147
+ outStream: options.outStream || process.stdout,
148
+ errStream: options.errStream || process.stderr,
149
+ failOnStdErr: options.failOnStdErr || false,
150
+ ignoreReturnCode: options.ignoreReturnCode || false,
151
+ windowsVerbatimArguments: options.windowsVerbatimArguments
152
+ };
153
+ var argString = this.args.join(' ') || '';
154
+ var cmdString = this.toolPath;
155
+ if (argString) {
156
+ cmdString += (' ' + argString);
157
+ }
158
+ // Using split/join to replace the temp path
159
+ cmdString = this.ignoreTempPath(cmdString);
160
+ if (!ops.silent) {
161
+ if (this.pipeOutputToTool) {
162
+ var pipeToolArgString = this.pipeOutputToTool.args.join(' ') || '';
163
+ var pipeToolCmdString = this.ignoreTempPath(this.pipeOutputToTool.toolPath);
164
+ if (pipeToolArgString) {
165
+ pipeToolCmdString += (' ' + pipeToolArgString);
166
+ }
167
+ cmdString += ' | ' + pipeToolCmdString;
168
+ }
169
+ ops.outStream.write('[command]' + cmdString + os.EOL);
170
+ }
171
+ // TODO: filter process.env
172
+ var res = mock.getResponse('exec', cmdString, debug);
173
+ if (res.stdout) {
174
+ this.emit('stdout', res.stdout);
175
+ if (!ops.silent) {
176
+ ops.outStream.write(res.stdout + os.EOL);
177
+ }
178
+ var stdLineArray = res.stdout.split(os.EOL);
179
+ for (var _i = 0, _a = stdLineArray.slice(0, -1); _i < _a.length; _i++) {
180
+ var line = _a[_i];
181
+ this.emit('stdline', line);
182
+ }
183
+ if (stdLineArray.length > 0 && stdLineArray[stdLineArray.length - 1].length > 0) {
184
+ this.emit('stdline', stdLineArray[stdLineArray.length - 1]);
185
+ }
186
+ }
187
+ if (res.stderr) {
188
+ this.emit('stderr', res.stderr);
189
+ success = !ops.failOnStdErr;
190
+ if (!ops.silent) {
191
+ var s = ops.failOnStdErr ? ops.errStream : ops.outStream;
192
+ s.write(res.stderr + os.EOL);
193
+ }
194
+ var stdErrArray = res.stderr.split(os.EOL);
195
+ for (var _b = 0, _c = stdErrArray.slice(0, -1); _b < _c.length; _b++) {
196
+ var line = _c[_b];
197
+ this.emit('errline', line);
198
+ }
199
+ if (stdErrArray.length > 0 && stdErrArray[stdErrArray.length - 1].length > 0) {
200
+ this.emit('errline', stdErrArray[stdErrArray.length - 1]);
201
+ }
202
+ }
203
+ var code = res.code;
204
+ if (!ops.silent) {
205
+ ops.outStream.write('rc:' + res.code + os.EOL);
206
+ }
207
+ if (code != 0 && !ops.ignoreReturnCode) {
208
+ success = false;
209
+ }
210
+ if (!ops.silent) {
211
+ ops.outStream.write('success:' + success + os.EOL);
212
+ }
213
+ if (success) {
214
+ defer.resolve(code);
215
+ }
216
+ else {
217
+ defer.reject(new Error(this.toolPath + ' failed with return code: ' + code));
218
+ }
219
+ return defer.promise;
220
+ };
221
+ //
222
+ // ExecSync - use for short running simple commands. Simple and convenient (synchronous)
223
+ // but also has limits. For example, no live output and limited to max buffer
224
+ //
225
+ ToolRunner.prototype.execSync = function (options) {
226
+ var _this = this;
227
+ var defer = Q.defer();
228
+ this._debug('exec tool: ' + this.toolPath);
229
+ this._debug('Arguments:');
230
+ this.args.forEach(function (arg) {
231
+ _this._debug(' ' + arg);
232
+ });
233
+ var success = true;
234
+ options = options || {};
235
+ var ops = {
236
+ cwd: options.cwd || process.cwd(),
237
+ env: options.env || process.env,
238
+ silent: options.silent || false,
239
+ outStream: options.outStream || process.stdout,
240
+ errStream: options.errStream || process.stderr,
241
+ windowsVerbatimArguments: options.windowsVerbatimArguments,
242
+ };
243
+ var argString = this.args.join(' ') || '';
244
+ var cmdString = this.toolPath;
245
+ // Using split/join to replace the temp path
246
+ cmdString = this.ignoreTempPath(cmdString);
247
+ if (argString) {
248
+ cmdString += (' ' + argString);
249
+ }
250
+ if (!ops.silent) {
251
+ ops.outStream.write('[command]' + cmdString + os.EOL);
252
+ }
253
+ var r = mock.getResponse('exec', cmdString, debug);
254
+ if (!ops.silent && r.stdout && r.stdout.length > 0) {
255
+ ops.outStream.write(r.stdout);
256
+ }
257
+ if (!ops.silent && r.stderr && r.stderr.length > 0) {
258
+ ops.errStream.write(r.stderr);
259
+ }
260
+ return {
261
+ code: r.code,
262
+ stdout: (r.stdout) ? r.stdout.toString() : null,
263
+ stderr: (r.stderr) ? r.stderr.toString() : null
264
+ };
265
+ };
266
+ return ToolRunner;
267
+ }(events.EventEmitter));
268
+ exports.ToolRunner = ToolRunner;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "azure-pipelines-task-lib",
3
- "version": "4.0.1-preview",
3
+ "version": "4.0.2",
4
4
  "description": "Azure Pipelines Task SDK",
5
5
  "main": "./task.js",
6
6
  "typings": "./task.d.ts",
@@ -28,7 +28,7 @@
28
28
  "homepage": "https://github.com/Microsoft/azure-pipelines-task-lib",
29
29
  "dependencies": {
30
30
  "minimatch": "3.0.5",
31
- "mockery": "^1.7.0",
31
+ "mockery": "^2.1.0",
32
32
  "q": "^1.5.1",
33
33
  "semver": "^5.1.0",
34
34
  "shelljs": "^0.8.5",
@@ -37,8 +37,8 @@
37
37
  },
38
38
  "devDependencies": {
39
39
  "@types/minimatch": "3.0.3",
40
- "@types/mockery": "^1.4.29",
41
40
  "@types/mocha": "^9.1.1",
41
+ "@types/mockery": "^1.4.29",
42
42
  "@types/node": "^16.11.39",
43
43
  "@types/q": "^1.5.4",
44
44
  "@types/semver": "^7.3.4",