@appium/support 7.1.0 → 7.1.1
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/build/lib/console.d.ts +2 -2
- package/build/lib/console.d.ts.map +1 -1
- package/build/lib/console.js +3 -3
- package/build/lib/console.js.map +1 -1
- package/build/lib/doctor.d.ts +6 -6
- package/build/lib/doctor.d.ts.map +1 -1
- package/build/lib/doctor.js +7 -7
- package/build/lib/doctor.js.map +1 -1
- package/build/lib/fs.d.ts.map +1 -1
- package/build/lib/fs.js +9 -11
- package/build/lib/fs.js.map +1 -1
- package/build/lib/index.d.ts.map +1 -1
- package/build/lib/net.d.ts.map +1 -1
- package/build/lib/net.js +1 -0
- package/build/lib/net.js.map +1 -1
- package/build/lib/util.d.ts +23 -23
- package/build/lib/util.d.ts.map +1 -1
- package/build/lib/util.js.map +1 -1
- package/build/lib/zip.d.ts +42 -42
- package/build/lib/zip.d.ts.map +1 -1
- package/build/lib/zip.js +139 -138
- package/build/lib/zip.js.map +1 -1
- package/lib/console.ts +7 -7
- package/lib/doctor.ts +6 -6
- package/lib/fs.ts +8 -10
- package/lib/net.ts +4 -4
- package/lib/util.ts +26 -26
- package/lib/zip.ts +219 -216
- package/package.json +7 -7
- package/tsconfig.json +1 -0
package/build/lib/zip.js
CHANGED
|
@@ -63,6 +63,132 @@ const ZIP_MAGIC = 'PK';
|
|
|
63
63
|
const IFMT = 0b1111000000000000;
|
|
64
64
|
const IFDIR = 0b0100000000000000;
|
|
65
65
|
const IFLNK = 0b1010000000000000;
|
|
66
|
+
// This class is mostly copied from https://github.com/maxogden/extract-zip/blob/master/index.js
|
|
67
|
+
class ZipExtractor {
|
|
68
|
+
zipfile;
|
|
69
|
+
zipPath;
|
|
70
|
+
opts;
|
|
71
|
+
canceled = false;
|
|
72
|
+
constructor(sourcePath, opts) {
|
|
73
|
+
this.zipPath = sourcePath;
|
|
74
|
+
this.opts = opts;
|
|
75
|
+
}
|
|
76
|
+
async extract() {
|
|
77
|
+
const { dir, fileNamesEncoding } = this.opts;
|
|
78
|
+
this.zipfile = await openZip(this.zipPath, {
|
|
79
|
+
lazyEntries: true,
|
|
80
|
+
// https://github.com/thejoshwolfe/yauzl/commit/cc7455ac789ba84973184e5ebde0581cdc4c3b39#diff-04c6e90faac2675aa89e2176d2eec7d8R95
|
|
81
|
+
decodeStrings: !fileNamesEncoding,
|
|
82
|
+
});
|
|
83
|
+
this.canceled = false;
|
|
84
|
+
return new Promise((resolve, reject) => {
|
|
85
|
+
this.zipfile.on('error', (err) => {
|
|
86
|
+
this.canceled = true;
|
|
87
|
+
reject(err);
|
|
88
|
+
});
|
|
89
|
+
this.zipfile.readEntry();
|
|
90
|
+
this.zipfile.on('close', () => {
|
|
91
|
+
if (!this.canceled) {
|
|
92
|
+
resolve();
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
this.zipfile.on('entry', async (entry) => {
|
|
96
|
+
if (this.canceled) {
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
const fileName = this.extractFileName(entry);
|
|
100
|
+
if (fileName.startsWith('__MACOSX/')) {
|
|
101
|
+
this.zipfile.readEntry();
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
const destDir = node_path_1.default.dirname(node_path_1.default.join(dir, fileName));
|
|
105
|
+
try {
|
|
106
|
+
await fs_1.fs.mkdir(destDir, { recursive: true });
|
|
107
|
+
const canonicalDestDir = await fs_1.fs.realpath(destDir);
|
|
108
|
+
const relativeDestDir = node_path_1.default.relative(dir, canonicalDestDir);
|
|
109
|
+
if (relativeDestDir.split(node_path_1.default.sep).includes('..')) {
|
|
110
|
+
throw new Error(`Out of bound path "${canonicalDestDir}" found while processing file ${fileName}`);
|
|
111
|
+
}
|
|
112
|
+
await this.extractEntry(entry);
|
|
113
|
+
this.zipfile.readEntry();
|
|
114
|
+
}
|
|
115
|
+
catch (err) {
|
|
116
|
+
this.canceled = true;
|
|
117
|
+
this.zipfile.close();
|
|
118
|
+
reject(err);
|
|
119
|
+
}
|
|
120
|
+
});
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
extractFileName(entry) {
|
|
124
|
+
if (Buffer.isBuffer(entry.fileName)) {
|
|
125
|
+
return entry.fileName.toString(this.opts.fileNamesEncoding);
|
|
126
|
+
}
|
|
127
|
+
return entry.fileName;
|
|
128
|
+
}
|
|
129
|
+
async extractEntry(entry) {
|
|
130
|
+
if (this.canceled) {
|
|
131
|
+
return;
|
|
132
|
+
}
|
|
133
|
+
const { dir } = this.opts;
|
|
134
|
+
const fileName = this.extractFileName(entry);
|
|
135
|
+
const dest = node_path_1.default.join(dir, fileName);
|
|
136
|
+
// convert external file attr int into a fs stat mode int
|
|
137
|
+
const mode = (entry.externalFileAttributes >> 16) & 0xffff;
|
|
138
|
+
// check if it's a symlink or dir (using stat mode constants)
|
|
139
|
+
const isSymlink = (mode & IFMT) === IFLNK;
|
|
140
|
+
const isDir = (mode & IFMT) === IFDIR ||
|
|
141
|
+
// Failsafe, borrowed from jsZip
|
|
142
|
+
fileName.endsWith('/') ||
|
|
143
|
+
// check for windows weird way of specifying a directory
|
|
144
|
+
// https://github.com/maxogden/extract-zip/issues/13#issuecomment-154494566
|
|
145
|
+
(entry.versionMadeBy >> 8 === 0 && entry.externalFileAttributes === 16);
|
|
146
|
+
const procMode = this.getExtractedMode(mode, isDir) & 0o777;
|
|
147
|
+
// always ensure folders are created
|
|
148
|
+
const destDir = isDir ? dest : node_path_1.default.dirname(dest);
|
|
149
|
+
const mkdirOptions = { recursive: true };
|
|
150
|
+
if (isDir) {
|
|
151
|
+
mkdirOptions.mode = procMode;
|
|
152
|
+
}
|
|
153
|
+
await fs_1.fs.mkdir(destDir, mkdirOptions);
|
|
154
|
+
if (isDir) {
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
const openReadStream = (0, node_util_1.promisify)(this.zipfile.openReadStream.bind(this.zipfile));
|
|
158
|
+
const readStream = await openReadStream(entry);
|
|
159
|
+
if (isSymlink) {
|
|
160
|
+
const link = await (0, get_stream_1.default)(readStream);
|
|
161
|
+
await fs_1.fs.symlink(link, dest);
|
|
162
|
+
}
|
|
163
|
+
else {
|
|
164
|
+
await (0, promises_1.pipeline)(readStream, fs_1.fs.createWriteStream(dest, { mode: procMode }));
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
getExtractedMode(entryMode, isDir) {
|
|
168
|
+
const { defaultDirMode, defaultFileMode } = this.opts;
|
|
169
|
+
let mode = entryMode;
|
|
170
|
+
// Set defaults, if necessary
|
|
171
|
+
if (mode === 0) {
|
|
172
|
+
if (isDir) {
|
|
173
|
+
if (defaultDirMode) {
|
|
174
|
+
mode = parseInt(defaultDirMode, 10);
|
|
175
|
+
}
|
|
176
|
+
if (!mode) {
|
|
177
|
+
mode = 0o755;
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
else {
|
|
181
|
+
if (defaultFileMode) {
|
|
182
|
+
mode = parseInt(defaultFileMode, 10);
|
|
183
|
+
}
|
|
184
|
+
if (!mode) {
|
|
185
|
+
mode = 0o644;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
return mode;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
66
192
|
/**
|
|
67
193
|
* Extract zipfile to a directory
|
|
68
194
|
*
|
|
@@ -234,9 +360,7 @@ async function toInMemoryZip(srcPath, opts = {}) {
|
|
|
234
360
|
else {
|
|
235
361
|
archive.pipe(resultWriteStream);
|
|
236
362
|
}
|
|
237
|
-
archive.finalize();
|
|
238
|
-
// Wait for the streams to finish
|
|
239
|
-
await Promise.all([archiveStreamPromise, resultWriteStreamPromise]);
|
|
363
|
+
await Promise.all([archive.finalize(), archiveStreamPromise, resultWriteStreamPromise]);
|
|
240
364
|
if (timer) {
|
|
241
365
|
logger_1.default.debug(`Zipped ${encodeToBase64 ? 'and base64-encoded ' : ''}` +
|
|
242
366
|
`'${node_path_1.default.basename(srcPath)}' ` +
|
|
@@ -290,6 +414,15 @@ async function toArchive(dstPath, src = {}, opts = {}) {
|
|
|
290
414
|
const archive = (0, archiver_1.default)('zip', { zlib: { level } });
|
|
291
415
|
const outStream = fs_1.fs.createWriteStream(dstPath);
|
|
292
416
|
await new Promise((resolve, reject) => {
|
|
417
|
+
const outFinished = new Promise((_resolve, _reject) => {
|
|
418
|
+
outStream.once('error', (e) => {
|
|
419
|
+
archive.unpipe(outStream);
|
|
420
|
+
archive.abort();
|
|
421
|
+
archive.destroy();
|
|
422
|
+
_reject(e);
|
|
423
|
+
});
|
|
424
|
+
outStream.once('finish', () => _resolve());
|
|
425
|
+
});
|
|
293
426
|
archive
|
|
294
427
|
.glob(pattern, {
|
|
295
428
|
cwd,
|
|
@@ -297,143 +430,11 @@ async function toArchive(dstPath, src = {}, opts = {}) {
|
|
|
297
430
|
})
|
|
298
431
|
.on('error', reject)
|
|
299
432
|
.pipe(outStream);
|
|
300
|
-
|
|
301
|
-
.
|
|
302
|
-
|
|
303
|
-
archive.abort();
|
|
304
|
-
archive.destroy();
|
|
305
|
-
reject(e);
|
|
306
|
-
})
|
|
307
|
-
.on('finish', resolve);
|
|
308
|
-
archive.finalize();
|
|
433
|
+
void Promise.all([archive.finalize(), outFinished])
|
|
434
|
+
.then(() => resolve())
|
|
435
|
+
.catch(reject);
|
|
309
436
|
});
|
|
310
437
|
}
|
|
311
|
-
// This class is mostly copied from https://github.com/maxogden/extract-zip/blob/master/index.js
|
|
312
|
-
class ZipExtractor {
|
|
313
|
-
zipfile;
|
|
314
|
-
zipPath;
|
|
315
|
-
opts;
|
|
316
|
-
canceled = false;
|
|
317
|
-
constructor(sourcePath, opts) {
|
|
318
|
-
this.zipPath = sourcePath;
|
|
319
|
-
this.opts = opts;
|
|
320
|
-
}
|
|
321
|
-
extractFileName(entry) {
|
|
322
|
-
if (Buffer.isBuffer(entry.fileName)) {
|
|
323
|
-
return entry.fileName.toString(this.opts.fileNamesEncoding);
|
|
324
|
-
}
|
|
325
|
-
return entry.fileName;
|
|
326
|
-
}
|
|
327
|
-
async extract() {
|
|
328
|
-
const { dir, fileNamesEncoding } = this.opts;
|
|
329
|
-
this.zipfile = await openZip(this.zipPath, {
|
|
330
|
-
lazyEntries: true,
|
|
331
|
-
// https://github.com/thejoshwolfe/yauzl/commit/cc7455ac789ba84973184e5ebde0581cdc4c3b39#diff-04c6e90faac2675aa89e2176d2eec7d8R95
|
|
332
|
-
decodeStrings: !fileNamesEncoding,
|
|
333
|
-
});
|
|
334
|
-
this.canceled = false;
|
|
335
|
-
return new Promise((resolve, reject) => {
|
|
336
|
-
this.zipfile.on('error', (err) => {
|
|
337
|
-
this.canceled = true;
|
|
338
|
-
reject(err);
|
|
339
|
-
});
|
|
340
|
-
this.zipfile.readEntry();
|
|
341
|
-
this.zipfile.on('close', () => {
|
|
342
|
-
if (!this.canceled) {
|
|
343
|
-
resolve();
|
|
344
|
-
}
|
|
345
|
-
});
|
|
346
|
-
this.zipfile.on('entry', async (entry) => {
|
|
347
|
-
if (this.canceled) {
|
|
348
|
-
return;
|
|
349
|
-
}
|
|
350
|
-
const fileName = this.extractFileName(entry);
|
|
351
|
-
if (fileName.startsWith('__MACOSX/')) {
|
|
352
|
-
this.zipfile.readEntry();
|
|
353
|
-
return;
|
|
354
|
-
}
|
|
355
|
-
const destDir = node_path_1.default.dirname(node_path_1.default.join(dir, fileName));
|
|
356
|
-
try {
|
|
357
|
-
await fs_1.fs.mkdir(destDir, { recursive: true });
|
|
358
|
-
const canonicalDestDir = await fs_1.fs.realpath(destDir);
|
|
359
|
-
const relativeDestDir = node_path_1.default.relative(dir, canonicalDestDir);
|
|
360
|
-
if (relativeDestDir.split(node_path_1.default.sep).includes('..')) {
|
|
361
|
-
throw new Error(`Out of bound path "${canonicalDestDir}" found while processing file ${fileName}`);
|
|
362
|
-
}
|
|
363
|
-
await this.extractEntry(entry);
|
|
364
|
-
this.zipfile.readEntry();
|
|
365
|
-
}
|
|
366
|
-
catch (err) {
|
|
367
|
-
this.canceled = true;
|
|
368
|
-
this.zipfile.close();
|
|
369
|
-
reject(err);
|
|
370
|
-
}
|
|
371
|
-
});
|
|
372
|
-
});
|
|
373
|
-
}
|
|
374
|
-
async extractEntry(entry) {
|
|
375
|
-
if (this.canceled) {
|
|
376
|
-
return;
|
|
377
|
-
}
|
|
378
|
-
const { dir } = this.opts;
|
|
379
|
-
const fileName = this.extractFileName(entry);
|
|
380
|
-
const dest = node_path_1.default.join(dir, fileName);
|
|
381
|
-
// convert external file attr int into a fs stat mode int
|
|
382
|
-
const mode = (entry.externalFileAttributes >> 16) & 0xffff;
|
|
383
|
-
// check if it's a symlink or dir (using stat mode constants)
|
|
384
|
-
const isSymlink = (mode & IFMT) === IFLNK;
|
|
385
|
-
const isDir = (mode & IFMT) === IFDIR ||
|
|
386
|
-
// Failsafe, borrowed from jsZip
|
|
387
|
-
fileName.endsWith('/') ||
|
|
388
|
-
// check for windows weird way of specifying a directory
|
|
389
|
-
// https://github.com/maxogden/extract-zip/issues/13#issuecomment-154494566
|
|
390
|
-
(entry.versionMadeBy >> 8 === 0 && entry.externalFileAttributes === 16);
|
|
391
|
-
const procMode = this.getExtractedMode(mode, isDir) & 0o777;
|
|
392
|
-
// always ensure folders are created
|
|
393
|
-
const destDir = isDir ? dest : node_path_1.default.dirname(dest);
|
|
394
|
-
const mkdirOptions = { recursive: true };
|
|
395
|
-
if (isDir) {
|
|
396
|
-
mkdirOptions.mode = procMode;
|
|
397
|
-
}
|
|
398
|
-
await fs_1.fs.mkdir(destDir, mkdirOptions);
|
|
399
|
-
if (isDir) {
|
|
400
|
-
return;
|
|
401
|
-
}
|
|
402
|
-
const openReadStream = (0, node_util_1.promisify)(this.zipfile.openReadStream.bind(this.zipfile));
|
|
403
|
-
const readStream = await openReadStream(entry);
|
|
404
|
-
if (isSymlink) {
|
|
405
|
-
const link = await (0, get_stream_1.default)(readStream);
|
|
406
|
-
await fs_1.fs.symlink(link, dest);
|
|
407
|
-
}
|
|
408
|
-
else {
|
|
409
|
-
await (0, promises_1.pipeline)(readStream, fs_1.fs.createWriteStream(dest, { mode: procMode }));
|
|
410
|
-
}
|
|
411
|
-
}
|
|
412
|
-
getExtractedMode(entryMode, isDir) {
|
|
413
|
-
const { defaultDirMode, defaultFileMode } = this.opts;
|
|
414
|
-
let mode = entryMode;
|
|
415
|
-
// Set defaults, if necessary
|
|
416
|
-
if (mode === 0) {
|
|
417
|
-
if (isDir) {
|
|
418
|
-
if (defaultDirMode) {
|
|
419
|
-
mode = parseInt(defaultDirMode, 10);
|
|
420
|
-
}
|
|
421
|
-
if (!mode) {
|
|
422
|
-
mode = 0o755;
|
|
423
|
-
}
|
|
424
|
-
}
|
|
425
|
-
else {
|
|
426
|
-
if (defaultFileMode) {
|
|
427
|
-
mode = parseInt(defaultFileMode, 10);
|
|
428
|
-
}
|
|
429
|
-
if (!mode) {
|
|
430
|
-
mode = 0o644;
|
|
431
|
-
}
|
|
432
|
-
}
|
|
433
|
-
}
|
|
434
|
-
return mode;
|
|
435
|
-
}
|
|
436
|
-
}
|
|
437
438
|
/**
|
|
438
439
|
* Executes system unzip (e.g., `/usr/bin/unzip`). If available, it is
|
|
439
440
|
* significantly faster than the JS implementation.
|
package/build/lib/zip.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zip.js","sourceRoot":"","sources":["../../lib/zip.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"zip.js","sourceRoot":"","sources":["../../lib/zip.ts"],"names":[],"mappings":"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"}
|
package/lib/console.ts
CHANGED
|
@@ -8,9 +8,6 @@ import {Writable} from 'node:stream';
|
|
|
8
8
|
import type {InspectOptions} from 'node:util';
|
|
9
9
|
import type {JsonValue} from 'type-fest';
|
|
10
10
|
|
|
11
|
-
/** Symbol keys from log-symbols used for decoration */
|
|
12
|
-
type SymbolKey = keyof typeof symbols;
|
|
13
|
-
|
|
14
11
|
/**
|
|
15
12
|
* Options for {@linkcode CliConsole}.
|
|
16
13
|
*
|
|
@@ -25,6 +22,9 @@ export interface ConsoleOpts {
|
|
|
25
22
|
useColor?: boolean;
|
|
26
23
|
}
|
|
27
24
|
|
|
25
|
+
/** Symbol keys from log-symbols used for decoration */
|
|
26
|
+
type SymbolKey = keyof typeof symbols;
|
|
27
|
+
|
|
28
28
|
/**
|
|
29
29
|
* Stream to nowhere. Used when we want to disable any output other than JSON output.
|
|
30
30
|
*/
|
|
@@ -50,10 +50,6 @@ class NullWritable extends Writable {
|
|
|
50
50
|
* DO NOT extend this to do anything other than what it already does. Download a library or something.
|
|
51
51
|
*/
|
|
52
52
|
export class CliConsole {
|
|
53
|
-
readonly #console: InstanceType<typeof NodeConsole>;
|
|
54
|
-
readonly #useSymbols: boolean;
|
|
55
|
-
readonly #useColor: boolean;
|
|
56
|
-
|
|
57
53
|
static readonly symbolToColor: Record<SymbolKey, keyof Color> = {
|
|
58
54
|
success: 'green',
|
|
59
55
|
info: 'cyan',
|
|
@@ -61,6 +57,10 @@ export class CliConsole {
|
|
|
61
57
|
error: 'red',
|
|
62
58
|
};
|
|
63
59
|
|
|
60
|
+
readonly #console: InstanceType<typeof NodeConsole>;
|
|
61
|
+
readonly #useSymbols: boolean;
|
|
62
|
+
readonly #useColor: boolean;
|
|
63
|
+
|
|
64
64
|
constructor(opts: ConsoleOpts = {}) {
|
|
65
65
|
const {jsonMode = false, useSymbols = true, useColor} = opts;
|
|
66
66
|
this.#console = new NodeConsole(
|
package/lib/doctor.ts
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import type {DoctorCheckResult} from '@appium/types';
|
|
2
2
|
|
|
3
|
+
/**
|
|
4
|
+
* Throw this exception in the fix() method
|
|
5
|
+
* of your doctor check to skip the actual fix if hasAutofix() is true
|
|
6
|
+
*/
|
|
7
|
+
export class FixSkippedError extends Error {}
|
|
8
|
+
|
|
3
9
|
/**
|
|
4
10
|
* A shortcut for a successful required doctor check
|
|
5
11
|
*/
|
|
@@ -27,9 +33,3 @@ export function okOptional(message: string): DoctorCheckResult {
|
|
|
27
33
|
export function nokOptional(message: string): DoctorCheckResult {
|
|
28
34
|
return {ok: false, optional: true, message};
|
|
29
35
|
}
|
|
30
|
-
|
|
31
|
-
/**
|
|
32
|
-
* Throw this exception in the fix() method
|
|
33
|
-
* of your doctor check to skip the actual fix if hasAutofix() is true
|
|
34
|
-
*/
|
|
35
|
-
export class FixSkippedError extends Error {}
|
package/lib/fs.ts
CHANGED
|
@@ -355,16 +355,14 @@ export const fs = {
|
|
|
355
355
|
reject(err);
|
|
356
356
|
}
|
|
357
357
|
})
|
|
358
|
-
.on('end', function () {
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
}
|
|
367
|
-
})();
|
|
358
|
+
.on('end', async function () {
|
|
359
|
+
try {
|
|
360
|
+
const file = await lastFileProcessed;
|
|
361
|
+
resolve(file ?? null);
|
|
362
|
+
} catch (err) {
|
|
363
|
+
log.warn(`Unexpected error: ${err instanceof Error ? err.message : err}`);
|
|
364
|
+
reject(err);
|
|
365
|
+
}
|
|
368
366
|
});
|
|
369
367
|
}).finally(function () {
|
|
370
368
|
log.debug(
|
package/lib/net.ts
CHANGED
|
@@ -63,6 +63,8 @@ export interface FtpUploadOptions extends NetOptions {}
|
|
|
63
63
|
/** @deprecated Use {@linkcode FtpUploadOptions} instead. */
|
|
64
64
|
export type NotHttpUploadOptions = FtpUploadOptions;
|
|
65
65
|
|
|
66
|
+
type AuthLike = AuthCredentials | AxiosBasicCredentials;
|
|
67
|
+
|
|
66
68
|
/**
|
|
67
69
|
* Uploads the given file to a remote location. HTTP(S) and FTP protocols are supported.
|
|
68
70
|
*/
|
|
@@ -107,6 +109,8 @@ export async function uploadFile(
|
|
|
107
109
|
}
|
|
108
110
|
}
|
|
109
111
|
|
|
112
|
+
// #region Private helpers
|
|
113
|
+
|
|
110
114
|
/**
|
|
111
115
|
* Downloads the given file via HTTP(S).
|
|
112
116
|
*
|
|
@@ -174,10 +178,6 @@ export async function downloadFile(
|
|
|
174
178
|
}
|
|
175
179
|
}
|
|
176
180
|
|
|
177
|
-
// #region Private helpers
|
|
178
|
-
|
|
179
|
-
type AuthLike = AuthCredentials | AxiosBasicCredentials;
|
|
180
|
-
|
|
181
181
|
function toAxiosAuth(auth: AuthLike | undefined): AxiosBasicCredentials | null {
|
|
182
182
|
if (!auth || !_.isPlainObject(auth)) {
|
|
183
183
|
return null;
|
package/lib/util.ts
CHANGED
|
@@ -354,6 +354,32 @@ export function coerceVersion(ver: string, strict = true): string | null {
|
|
|
354
354
|
|
|
355
355
|
const SUPPORTED_OPERATORS = ['==', '!=', '>', '<', '>=', '<=', '='];
|
|
356
356
|
|
|
357
|
+
/** Options for pluralize(). */
|
|
358
|
+
export interface PluralizeOptions {
|
|
359
|
+
/** If true, prefix the result with the count (e.g. "3 ducks"). */
|
|
360
|
+
inclusive?: boolean;
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
/** Options for toInMemoryBase64(). */
|
|
364
|
+
export interface EncodingOptions {
|
|
365
|
+
/** Maximum size of the resulting buffer in bytes. Default 1GB. */
|
|
366
|
+
maxSize?: number;
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
/** Options for getLockFileGuard(). */
|
|
370
|
+
export interface LockFileOptions {
|
|
371
|
+
/** Max time in seconds to wait for the lock. Default 120. */
|
|
372
|
+
timeout?: number;
|
|
373
|
+
/** If true, attempt to unlock and retry once if the first acquisition times out (e.g. stale lock). */
|
|
374
|
+
tryRecovery?: boolean;
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
/** Guard function that runs the given behavior under the lock. */
|
|
378
|
+
type LockFileGuardFn<T> = (behavior: () => Promise<T> | T) => Promise<T>;
|
|
379
|
+
|
|
380
|
+
/** Return type of getLockFileGuard: guard function with a .check() method. */
|
|
381
|
+
type LockFileGuard<T> = LockFileGuardFn<T> & {check: () => Promise<boolean>};
|
|
382
|
+
|
|
357
383
|
/**
|
|
358
384
|
* Compares two version strings using the given operator.
|
|
359
385
|
*
|
|
@@ -392,12 +418,6 @@ export function quote(args: string | string[]): string {
|
|
|
392
418
|
return shellQuote(_.castArray(args));
|
|
393
419
|
}
|
|
394
420
|
|
|
395
|
-
/** Options for pluralize(). */
|
|
396
|
-
export interface PluralizeOptions {
|
|
397
|
-
/** If true, prefix the result with the count (e.g. "3 ducks"). */
|
|
398
|
-
inclusive?: boolean;
|
|
399
|
-
}
|
|
400
|
-
|
|
401
421
|
/**
|
|
402
422
|
* Returns the plural or singular form of a word appropriate to the count (e.g. "duck" + 1 → "duck", + 2 → "ducks").
|
|
403
423
|
*
|
|
@@ -420,12 +440,6 @@ export function pluralize(
|
|
|
420
440
|
return pluralizeLib(word, count, inclusive);
|
|
421
441
|
}
|
|
422
442
|
|
|
423
|
-
/** Options for toInMemoryBase64(). */
|
|
424
|
-
export interface EncodingOptions {
|
|
425
|
-
/** Maximum size of the resulting buffer in bytes. Default 1GB. */
|
|
426
|
-
maxSize?: number;
|
|
427
|
-
}
|
|
428
|
-
|
|
429
443
|
/**
|
|
430
444
|
* Reads a file and returns its contents as a base64-encoded buffer.
|
|
431
445
|
*
|
|
@@ -487,20 +501,6 @@ export async function toInMemoryBase64(
|
|
|
487
501
|
return Buffer.concat(resultBuffers);
|
|
488
502
|
}
|
|
489
503
|
|
|
490
|
-
/** Options for getLockFileGuard(). */
|
|
491
|
-
export interface LockFileOptions {
|
|
492
|
-
/** Max time in seconds to wait for the lock. Default 120. */
|
|
493
|
-
timeout?: number;
|
|
494
|
-
/** If true, attempt to unlock and retry once if the first acquisition times out (e.g. stale lock). */
|
|
495
|
-
tryRecovery?: boolean;
|
|
496
|
-
}
|
|
497
|
-
|
|
498
|
-
/** Guard function that runs the given behavior under the lock. */
|
|
499
|
-
type LockFileGuardFn<T> = (behavior: () => Promise<T> | T) => Promise<T>;
|
|
500
|
-
|
|
501
|
-
/** Return type of getLockFileGuard: guard function with a .check() method. */
|
|
502
|
-
type LockFileGuard<T> = LockFileGuardFn<T> & {check: () => Promise<boolean>};
|
|
503
|
-
|
|
504
504
|
/**
|
|
505
505
|
* Creates a guard that serializes access to a critical section using a lock file.
|
|
506
506
|
* The returned function acquires the lock, runs the given behavior, then releases the lock.
|