skuba 3.15.1 → 3.16.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/README.md +61 -2
- package/lib/api/github/checkRun.d.ts +22 -0
- package/lib/api/github/checkRun.js +111 -0
- package/lib/api/github/checkRun.js.map +1 -0
- package/lib/api/github/environment.d.ts +3 -0
- package/lib/api/github/environment.js +21 -0
- package/lib/api/github/environment.js.map +1 -0
- package/lib/api/github/index.d.ts +2 -0
- package/lib/api/github/index.js +6 -0
- package/lib/api/github/index.js.map +1 -0
- package/lib/api/jest/index.d.ts +1 -1
- package/lib/api/jest/index.js.map +1 -1
- package/lib/cli/adapter/eslint.d.ts +7 -0
- package/lib/cli/adapter/eslint.js +21 -9
- package/lib/cli/adapter/eslint.js.map +1 -1
- package/lib/cli/adapter/prettier.d.ts +1 -4
- package/lib/cli/adapter/prettier.js +18 -20
- package/lib/cli/adapter/prettier.js.map +1 -1
- package/lib/cli/configure/analysis/git.d.ts +1 -1
- package/lib/cli/configure/analysis/git.js +11 -17
- package/lib/cli/configure/analysis/git.js.map +1 -1
- package/lib/cli/configure/index.js +2 -2
- package/lib/cli/configure/index.js.map +1 -1
- package/lib/cli/configure/processing/record.d.ts +2 -2
- package/lib/cli/configure/processing/record.js +2 -2
- package/lib/cli/configure/processing/record.js.map +1 -1
- package/lib/cli/configure/refreshIgnoreFiles.d.ts +2 -0
- package/lib/cli/configure/refreshIgnoreFiles.js +55 -0
- package/lib/cli/configure/refreshIgnoreFiles.js.map +1 -0
- package/lib/cli/format.js +2 -0
- package/lib/cli/format.js.map +1 -1
- package/lib/cli/init/getConfig.d.ts +1 -1
- package/lib/cli/init/git.d.ts +2 -3
- package/lib/cli/init/git.js +41 -10
- package/lib/cli/init/git.js.map +1 -1
- package/lib/cli/init/index.js +3 -3
- package/lib/cli/init/index.js.map +1 -1
- package/lib/cli/lint/annotate/buildkite/eslint.d.ts +2 -0
- package/lib/cli/lint/annotate/buildkite/eslint.js +26 -0
- package/lib/cli/lint/annotate/buildkite/eslint.js.map +1 -0
- package/lib/cli/lint/annotate/buildkite/index.d.ts +4 -0
- package/lib/cli/lint/annotate/buildkite/index.js +53 -0
- package/lib/cli/lint/annotate/buildkite/index.js.map +1 -0
- package/lib/cli/lint/annotate/buildkite/prettier.d.ts +2 -0
- package/lib/cli/lint/annotate/buildkite/prettier.js +33 -0
- package/lib/cli/lint/annotate/buildkite/prettier.js.map +1 -0
- package/lib/cli/lint/annotate/buildkite/tsc.d.ts +2 -0
- package/lib/cli/lint/annotate/buildkite/tsc.js +37 -0
- package/lib/cli/lint/annotate/buildkite/tsc.js.map +1 -0
- package/lib/cli/lint/annotate/github/eslint.d.ts +3 -0
- package/lib/cli/lint/annotate/github/eslint.js +13 -0
- package/lib/cli/lint/annotate/github/eslint.js.map +1 -0
- package/lib/cli/lint/annotate/github/index.d.ts +4 -0
- package/lib/cli/lint/annotate/github/index.js +61 -0
- package/lib/cli/lint/annotate/github/index.js.map +1 -0
- package/lib/cli/lint/annotate/github/prettier.d.ts +3 -0
- package/lib/cli/lint/annotate/github/prettier.js +16 -0
- package/lib/cli/lint/annotate/github/prettier.js.map +1 -0
- package/lib/cli/lint/annotate/github/tsc.d.ts +3 -0
- package/lib/cli/lint/annotate/github/tsc.js +59 -0
- package/lib/cli/lint/annotate/github/tsc.js.map +1 -0
- package/lib/cli/lint/annotate/index.d.ts +4 -0
- package/lib/cli/lint/annotate/index.js +22 -0
- package/lib/cli/lint/annotate/index.js.map +1 -0
- package/lib/cli/lint/external.d.ts +7 -0
- package/lib/cli/lint/external.js +38 -41
- package/lib/cli/lint/external.js.map +1 -1
- package/lib/cli/lint/index.d.ts +1 -1
- package/lib/cli/lint/index.js +4 -1
- package/lib/cli/lint/index.js.map +1 -1
- package/lib/cli/lint/types.d.ts +10 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.js +2 -1
- package/lib/index.js.map +1 -1
- package/lib/utils/args.d.ts +1 -1
- package/lib/utils/exec.d.ts +2 -1
- package/lib/utils/exec.js.map +1 -1
- package/lib/utils/logging.d.ts +1 -2
- package/lib/utils/logging.js +3 -2
- package/lib/utils/logging.js.map +1 -1
- package/lib/utils/worker.d.ts +0 -1
- package/lib/wrapper/functionHandler.js +8 -0
- package/lib/wrapper/functionHandler.js.map +1 -1
- package/lib/wrapper/http.js +11 -7
- package/lib/wrapper/http.js.map +1 -1
- package/package.json +17 -11
- package/template/base/_.gitignore +1 -0
- package/template/base/_.prettierignore +2 -0
- package/template/express-rest-api/.buildkite/pipeline.yml +4 -4
- package/template/express-rest-api/.nvmrc +1 -1
- package/template/express-rest-api/Dockerfile +1 -1
- package/template/express-rest-api/Dockerfile.dev-deps +1 -1
- package/template/express-rest-api/README.md +0 -12
- package/template/express-rest-api/docker-compose.yml +4 -2
- package/template/express-rest-api/package.json +5 -5
- package/template/express-rest-api/src/framework/logging.ts +2 -1
- package/template/greeter/.buildkite/pipeline.yml +1 -1
- package/template/greeter/.nvmrc +1 -1
- package/template/greeter/Dockerfile +1 -1
- package/template/greeter/README.md +0 -12
- package/template/greeter/docker-compose.yml +4 -2
- package/template/greeter/package.json +2 -2
- package/template/koa-rest-api/.buildkite/pipeline.yml +4 -4
- package/template/koa-rest-api/.nvmrc +1 -1
- package/template/koa-rest-api/Dockerfile +1 -1
- package/template/koa-rest-api/Dockerfile.dev-deps +1 -1
- package/template/koa-rest-api/README.md +0 -12
- package/template/koa-rest-api/docker-compose.yml +4 -2
- package/template/koa-rest-api/package.json +11 -11
- package/template/koa-rest-api/src/framework/logging.ts +2 -1
- package/template/lambda-sqs-worker/.buildkite/pipeline.yml +2 -2
- package/template/lambda-sqs-worker/README.md +0 -12
- package/template/lambda-sqs-worker/docker-compose.yml +3 -1
- package/template/lambda-sqs-worker/package.json +9 -9
- package/template/lambda-sqs-worker/serverless.yml +6 -2
- package/template/lambda-sqs-worker/src/framework/handler.ts +2 -2
- package/template/lambda-sqs-worker/src/framework/logging.ts +2 -1
- package/template/lambda-sqs-worker-cdk/.buildkite/pipeline.yml +2 -2
- package/template/lambda-sqs-worker-cdk/docker-compose.yml +3 -1
- package/template/lambda-sqs-worker-cdk/package.json +2 -2
- package/template/oss-npm-package/.github/workflows/release.yml +2 -2
- package/template/oss-npm-package/.github/workflows/validate.yml +2 -2
- package/template/oss-npm-package/.nvmrc +1 -1
- package/template/oss-npm-package/README.md +0 -14
- package/template/oss-npm-package/_package.json +1 -1
- package/template/private-npm-package/.nvmrc +1 -1
- package/template/private-npm-package/README.md +0 -14
- package/template/private-npm-package/_package.json +1 -1
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { ESLintOutput } from 'cli/adapter/eslint';
|
|
2
|
+
import { PrettierOutput } from 'cli/adapter/prettier';
|
|
3
|
+
import { StreamInterceptor } from '../external';
|
|
4
|
+
export declare const createAnnotations: (eslint: ESLintOutput, prettier: PrettierOutput, tscOk: boolean, tscOutputStream: StreamInterceptor) => Promise<void>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.createAnnotations = void 0;
|
|
13
|
+
const buildkite_1 = require("./buildkite");
|
|
14
|
+
const github_1 = require("./github");
|
|
15
|
+
const createAnnotations = (eslint, prettier, tscOk, tscOutputStream) => __awaiter(void 0, void 0, void 0, function* () {
|
|
16
|
+
yield Promise.all([
|
|
17
|
+
(0, github_1.createGitHubAnnotations)(eslint, prettier, tscOk, tscOutputStream),
|
|
18
|
+
(0, buildkite_1.createBuildkiteAnnotations)(eslint, prettier, tscOk, tscOutputStream),
|
|
19
|
+
]);
|
|
20
|
+
});
|
|
21
|
+
exports.createAnnotations = createAnnotations;
|
|
22
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/lint/annotate/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAKA,2CAAyD;AACzD,qCAAmD;AAE5C,MAAM,iBAAiB,GAAG,CAC/B,MAAoB,EACpB,QAAwB,EACxB,KAAc,EACd,eAAkC,EACnB,EAAE;IACjB,MAAM,OAAO,CAAC,GAAG,CAAC;QAChB,IAAA,gCAAuB,EAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,eAAe,CAAC;QACjE,IAAA,sCAA0B,EAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,eAAe,CAAC;KACrE,CAAC,CAAC;AACL,CAAC,CAAA,CAAC;AAVW,QAAA,iBAAiB,qBAU5B"}
|
|
@@ -1,2 +1,9 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import stream from 'stream';
|
|
1
3
|
import type { Input } from './types';
|
|
4
|
+
export declare class StreamInterceptor extends stream.Transform {
|
|
5
|
+
private chunks;
|
|
6
|
+
output(): string;
|
|
7
|
+
_transform(chunk: any, _encoding: BufferEncoding, callback: stream.TransformCallback): void;
|
|
8
|
+
}
|
|
2
9
|
export declare const externalLint: (input: Input) => Promise<void>;
|
package/lib/cli/lint/external.js
CHANGED
|
@@ -23,26 +23,28 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
23
23
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.externalLint = void 0;
|
|
26
|
+
exports.externalLint = exports.StreamInterceptor = void 0;
|
|
27
27
|
const stream_1 = __importDefault(require("stream"));
|
|
28
|
-
const __1 = require("../..");
|
|
29
28
|
const logging_1 = require("../../utils/logging");
|
|
29
|
+
const annotate_1 = require("./annotate");
|
|
30
30
|
const eslint_1 = require("./eslint");
|
|
31
31
|
const prettier_1 = require("./prettier");
|
|
32
32
|
const tsc_1 = require("./tsc");
|
|
33
|
+
const tscPrefixRegex = /^(.*?tsc\s+│.*?\s)/gm;
|
|
33
34
|
class StreamInterceptor extends stream_1.default.Transform {
|
|
34
35
|
constructor() {
|
|
35
36
|
super(...arguments);
|
|
36
37
|
this.chunks = [];
|
|
37
38
|
}
|
|
38
39
|
output() {
|
|
39
|
-
return Buffer.concat(this.chunks).toString();
|
|
40
|
+
return Buffer.concat(this.chunks).toString().replace(tscPrefixRegex, '');
|
|
40
41
|
}
|
|
41
42
|
_transform(chunk, _encoding, callback) {
|
|
42
43
|
this.chunks.push(chunk);
|
|
43
44
|
callback(null, chunk);
|
|
44
45
|
}
|
|
45
46
|
}
|
|
47
|
+
exports.StreamInterceptor = StreamInterceptor;
|
|
46
48
|
const lintConcurrently = (_a) => __awaiter(void 0, void 0, void 0, function* () {
|
|
47
49
|
var { tscOutputStream } = _a, input = __rest(_a, ["tscOutputStream"]);
|
|
48
50
|
const [eslint, prettier, tscOk] = yield Promise.all([
|
|
@@ -52,20 +54,47 @@ const lintConcurrently = (_a) => __awaiter(void 0, void 0, void 0, function* ()
|
|
|
52
54
|
]);
|
|
53
55
|
return { eslint, prettier, tscOk };
|
|
54
56
|
});
|
|
55
|
-
|
|
57
|
+
/**
|
|
58
|
+
* Run linting tools `--serial`ly for resource-constrained environments.
|
|
59
|
+
*
|
|
60
|
+
* Note that we still run ESLint and Prettier in worker threads as a
|
|
61
|
+
* counterintuitive optimisation. Memory can be more readily freed on worker
|
|
62
|
+
* thread exit, which isn't as easy with a monolithic main thread.
|
|
63
|
+
*/
|
|
64
|
+
const lintSerially = (_b) => __awaiter(void 0, void 0, void 0, function* () {
|
|
65
|
+
var { tscOutputStream } = _b, input = __rest(_b, ["tscOutputStream"]);
|
|
66
|
+
const eslint = yield (0, eslint_1.runESLintInWorkerThread)(input);
|
|
67
|
+
const prettier = yield (0, prettier_1.runPrettierInWorkerThread)(input);
|
|
68
|
+
const tscOk = yield (0, tsc_1.runTscInNewProcess)(Object.assign(Object.assign({}, input), { tscOutputStream }));
|
|
69
|
+
return { eslint, prettier, tscOk };
|
|
70
|
+
});
|
|
71
|
+
const lintSeriallyWithoutWorkerThreads = (input) => __awaiter(void 0, void 0, void 0, function* () {
|
|
56
72
|
const eslint = yield (0, eslint_1.runESLintInCurrentThread)(input);
|
|
57
73
|
const prettier = yield (0, prettier_1.runPrettierInCurrentThread)(input);
|
|
58
74
|
const tscOk = yield (0, tsc_1.runTscInNewProcess)(input);
|
|
59
75
|
return { eslint, prettier, tscOk };
|
|
60
76
|
});
|
|
61
|
-
const
|
|
62
|
-
|
|
77
|
+
const selectLintFunction = (input) => {
|
|
78
|
+
if (!input.workerThreads) {
|
|
79
|
+
return lintSeriallyWithoutWorkerThreads;
|
|
80
|
+
}
|
|
63
81
|
// `--debug` implies `--serial`.
|
|
64
82
|
const isSerial = input.debug || input.serial;
|
|
65
|
-
|
|
83
|
+
return isSerial ? lintSerially : lintConcurrently;
|
|
84
|
+
};
|
|
85
|
+
const externalLint = (input) => __awaiter(void 0, void 0, void 0, function* () {
|
|
86
|
+
var _c;
|
|
87
|
+
const lint = selectLintFunction(input);
|
|
66
88
|
const tscOutputStream = new StreamInterceptor();
|
|
67
|
-
tscOutputStream.pipe((
|
|
89
|
+
tscOutputStream.pipe((_c = input.tscOutputStream) !== null && _c !== void 0 ? _c : process.stdout);
|
|
68
90
|
const { eslint, prettier, tscOk } = yield lint(Object.assign(Object.assign({}, input), { tscOutputStream }));
|
|
91
|
+
try {
|
|
92
|
+
yield (0, annotate_1.createAnnotations)(eslint, prettier, tscOk, tscOutputStream);
|
|
93
|
+
}
|
|
94
|
+
catch (err) {
|
|
95
|
+
logging_1.log.warn('Failed to annotate results.');
|
|
96
|
+
logging_1.log.warn(err);
|
|
97
|
+
}
|
|
69
98
|
if (eslint.ok && prettier.ok && tscOk) {
|
|
70
99
|
return;
|
|
71
100
|
}
|
|
@@ -75,39 +104,7 @@ const externalLint = (input) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
75
104
|
...(tscOk ? [] : ['tsc']),
|
|
76
105
|
];
|
|
77
106
|
logging_1.log.newline();
|
|
78
|
-
logging_1.log.err(tools.join(', ')
|
|
79
|
-
const buildkiteOutput = [
|
|
80
|
-
'`skuba lint` found issues that require triage:',
|
|
81
|
-
...(eslint.ok
|
|
82
|
-
? []
|
|
83
|
-
: ['**ESLint**', __1.Buildkite.md.terminal(eslint.output.trim())]),
|
|
84
|
-
...(prettier.ok
|
|
85
|
-
? []
|
|
86
|
-
: [
|
|
87
|
-
'**Prettier**',
|
|
88
|
-
__1.Buildkite.md.terminal(prettier.result.errored
|
|
89
|
-
.map(({ err, filepath }) => [filepath, ...(err ? [String(err)] : [])].join(' '))
|
|
90
|
-
.join('\n')),
|
|
91
|
-
]),
|
|
92
|
-
...(tscOk
|
|
93
|
-
? []
|
|
94
|
-
: [
|
|
95
|
-
'**tsc**',
|
|
96
|
-
__1.Buildkite.md.terminal(tscOutputStream
|
|
97
|
-
.output()
|
|
98
|
-
.split('\n')
|
|
99
|
-
.filter(Boolean)
|
|
100
|
-
.map((line) => line.replace(/^tsc\s+│ /, ''))
|
|
101
|
-
.filter((line) => !line.startsWith('TSFILE: '))
|
|
102
|
-
.join('\n')
|
|
103
|
-
.trim()),
|
|
104
|
-
]),
|
|
105
|
-
].join('\n\n');
|
|
106
|
-
yield __1.Buildkite.annotate(buildkiteOutput, {
|
|
107
|
-
context: 'skuba-lint-external',
|
|
108
|
-
scopeContextToStep: true,
|
|
109
|
-
style: 'error',
|
|
110
|
-
});
|
|
107
|
+
logging_1.log.err(`${tools.join(', ')} found issues that require triage.`);
|
|
111
108
|
process.exitCode = 1;
|
|
112
109
|
});
|
|
113
110
|
exports.externalLint = externalLint;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"external.js","sourceRoot":"","sources":["../../../src/cli/lint/external.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAA4B;AAE5B,
|
|
1
|
+
{"version":3,"file":"external.js","sourceRoot":"","sources":["../../../src/cli/lint/external.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAA4B;AAE5B,iDAA0C;AAE1C,yCAA+C;AAC/C,qCAA6E;AAC7E,yCAGoB;AACpB,+BAA2C;AAG3C,MAAM,cAAc,GAAG,sBAAsB,CAAC;AAE9C,MAAa,iBAAkB,SAAQ,gBAAM,CAAC,SAAS;IAAvD;;QACU,WAAM,GAAiB,EAAE,CAAC;IAepC,CAAC;IAbQ,MAAM;QACX,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED,UAAU,CACR,KAAU,EACV,SAAyB,EACzB,QAAkC;QAElC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAExB,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACxB,CAAC;CACF;AAhBD,8CAgBC;AAED,MAAM,gBAAgB,GAAG,CAAO,EAAoC,EAAE,EAAE;QAAxC,EAAE,eAAe,OAAmB,EAAd,KAAK,cAA3B,mBAA6B,CAAF;IACzD,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAClD,IAAA,gCAAuB,EAAC,KAAK,CAAC;QAC9B,IAAA,oCAAyB,EAAC,KAAK,CAAC;QAChC,IAAA,wBAAkB,kCAAM,KAAK,KAAE,eAAe,IAAG;KAClD,CAAC,CAAC;IAEH,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AACrC,CAAC,CAAA,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,YAAY,GAAG,CAAO,EAAoC,EAAE,EAAE;QAAxC,EAAE,eAAe,OAAmB,EAAd,KAAK,cAA3B,mBAA6B,CAAF;IACrD,MAAM,MAAM,GAAG,MAAM,IAAA,gCAAuB,EAAC,KAAK,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,MAAM,IAAA,oCAAyB,EAAC,KAAK,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,MAAM,IAAA,wBAAkB,kCAAM,KAAK,KAAE,eAAe,IAAG,CAAC;IAEtE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AACrC,CAAC,CAAA,CAAC;AAEF,MAAM,gCAAgC,GAAG,CAAO,KAAY,EAAE,EAAE;IAC9D,MAAM,MAAM,GAAG,MAAM,IAAA,iCAAwB,EAAC,KAAK,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,MAAM,IAAA,qCAA0B,EAAC,KAAK,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,MAAM,IAAA,wBAAkB,EAAC,KAAK,CAAC,CAAC;IAE9C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AACrC,CAAC,CAAA,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,KAAY,EAAE,EAAE;IAC1C,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE;QACxB,OAAO,gCAAgC,CAAC;KACzC;IAED,gCAAgC;IAChC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC;IAE7C,OAAO,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAAC;AACpD,CAAC,CAAC;AAEK,MAAM,YAAY,GAAG,CAAO,KAAY,EAAE,EAAE;;IACjD,MAAM,IAAI,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAEvC,MAAM,eAAe,GAAG,IAAI,iBAAiB,EAAE,CAAC;IAChD,eAAe,CAAC,IAAI,CAAC,MAAA,KAAK,CAAC,eAAe,mCAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAE9D,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,iCAAM,KAAK,KAAE,eAAe,IAAG,CAAC;IAE9E,IAAI;QACF,MAAM,IAAA,4BAAiB,EAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC;KACnE;IAAC,OAAO,GAAG,EAAE;QACZ,aAAG,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;QACxC,aAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACf;IAED,IAAI,MAAM,CAAC,EAAE,IAAI,QAAQ,CAAC,EAAE,IAAI,KAAK,EAAE;QACrC,OAAO;KACR;IAED,MAAM,KAAK,GAAG;QACZ,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAChC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACpC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;KAC1B,CAAC;IAEF,aAAG,CAAC,OAAO,EAAE,CAAC;IACd,aAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;IAEjE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC,CAAA,CAAC;AA7BW,QAAA,YAAY,gBA6BvB"}
|
package/lib/cli/lint/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const lint: (args?: string[], tscOutputStream?: NodeJS.WritableStream | undefined) => Promise<void>;
|
|
1
|
+
export declare const lint: (args?: string[], tscOutputStream?: NodeJS.WritableStream | undefined, workerThreads?: boolean) => Promise<void>;
|
package/lib/cli/lint/index.js
CHANGED
|
@@ -11,13 +11,16 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.lint = void 0;
|
|
13
13
|
const args_1 = require("../../utils/args");
|
|
14
|
+
const refreshIgnoreFiles_1 = require("../configure/refreshIgnoreFiles");
|
|
14
15
|
const external_1 = require("./external");
|
|
15
16
|
const internal_1 = require("./internal");
|
|
16
|
-
const lint = (args = process.argv, tscOutputStream = undefined) => __awaiter(void 0, void 0, void 0, function* () {
|
|
17
|
+
const lint = (args = process.argv, tscOutputStream = undefined, workerThreads = true) => __awaiter(void 0, void 0, void 0, function* () {
|
|
18
|
+
yield (0, refreshIgnoreFiles_1.tryRefreshIgnoreFiles)();
|
|
17
19
|
const opts = {
|
|
18
20
|
debug: (0, args_1.hasDebugFlag)(args),
|
|
19
21
|
serial: (0, args_1.hasSerialFlag)(args),
|
|
20
22
|
tscOutputStream,
|
|
23
|
+
workerThreads,
|
|
21
24
|
};
|
|
22
25
|
yield (0, external_1.externalLint)(opts);
|
|
23
26
|
yield (0, internal_1.internalLint)();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/lint/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA+D;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/lint/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA+D;AAC/D,wEAAwE;AAExE,yCAA0C;AAC1C,yCAA0C;AAGnC,MAAM,IAAI,GAAG,CAClB,IAAI,GAAG,OAAO,CAAC,IAAI,EACnB,kBAAqD,SAAS,EAC9D,aAAa,GAAG,IAAI,EACpB,EAAE;IACF,MAAM,IAAA,0CAAqB,GAAE,CAAC;IAE9B,MAAM,IAAI,GAAU;QAClB,KAAK,EAAE,IAAA,mBAAY,EAAC,IAAI,CAAC;QACzB,MAAM,EAAE,IAAA,oBAAa,EAAC,IAAI,CAAC;QAC3B,eAAe;QACf,aAAa;KACd,CAAC;IAEF,MAAM,IAAA,uBAAY,EAAC,IAAI,CAAC,CAAC;IAEzB,MAAM,IAAA,uBAAY,GAAE,CAAC;AACvB,CAAC,CAAA,CAAC;AAjBW,QAAA,IAAI,QAiBf"}
|
package/lib/cli/lint/types.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ export interface Input {
|
|
|
9
9
|
/**
|
|
10
10
|
* Whether to disable parallelism to run linting operations serially.
|
|
11
11
|
*
|
|
12
|
-
* This can be useful for executing in
|
|
12
|
+
* This can be useful for executing in resource-constrained environments and
|
|
13
13
|
* snapshotting deterministic output in tests.
|
|
14
14
|
*
|
|
15
15
|
* Defaults to `false`.
|
|
@@ -21,4 +21,13 @@ export interface Input {
|
|
|
21
21
|
* Defaults to `process.stdout`.
|
|
22
22
|
*/
|
|
23
23
|
tscOutputStream?: NodeJS.WritableStream;
|
|
24
|
+
/**
|
|
25
|
+
* Whether to allow usage of Node.js worker threads.
|
|
26
|
+
*
|
|
27
|
+
* This may be set to `false` when there is a worker thread incompatibility,
|
|
28
|
+
* such as calling in from a TypeScript context in our Jest tests.
|
|
29
|
+
*
|
|
30
|
+
* Defaults to `true`.
|
|
31
|
+
*/
|
|
32
|
+
workerThreads?: boolean;
|
|
24
33
|
}
|
package/lib/index.d.ts
CHANGED
package/lib/index.js
CHANGED
|
@@ -30,7 +30,8 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
30
30
|
return result;
|
|
31
31
|
};
|
|
32
32
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
33
|
-
exports.Net = exports.Jest = exports.Buildkite = void 0;
|
|
33
|
+
exports.Net = exports.Jest = exports.Buildkite = exports.GitHub = void 0;
|
|
34
|
+
exports.GitHub = __importStar(require("./api/github"));
|
|
34
35
|
exports.Buildkite = __importStar(require("./api/buildkite"));
|
|
35
36
|
exports.Jest = __importStar(require("./api/jest"));
|
|
36
37
|
exports.Net = __importStar(require("./api/net"));
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;;;;;;;;;;;;;;;;;;;;AAEH,6DAA6C;AAC7C,mDAAmC;AACnC,iDAAiC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;;;;;;;;;;;;;;;;;;;;AAEH,uDAAuC;AACvC,6DAA6C;AAC7C,mDAAmC;AACnC,iDAAiC"}
|
package/lib/utils/args.d.ts
CHANGED
|
@@ -15,7 +15,7 @@ export declare const hasSerialFlag: (args?: string[], env?: NodeJS.ProcessEnv) =
|
|
|
15
15
|
* ```
|
|
16
16
|
*/
|
|
17
17
|
export declare const parseProcessArgs: (args?: string[]) => {
|
|
18
|
-
commandName: "
|
|
18
|
+
commandName: "test" | "release" | "format" | "node" | "version" | "build" | "build-package" | "configure" | "help" | "init" | "lint" | "start";
|
|
19
19
|
args: string[];
|
|
20
20
|
};
|
|
21
21
|
interface RunArgs {
|
package/lib/utils/exec.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
import type { Color } from 'chalk';
|
|
2
3
|
import execa, { ExecaChildProcess } from 'execa';
|
|
3
4
|
export declare type Exec = (command: string, ...args: string[]) => ExecaChildProcess<string>;
|
|
4
5
|
interface ExecConcurrentlyCommand {
|
|
5
6
|
command: string;
|
|
6
7
|
name: string;
|
|
7
|
-
prefixColor?:
|
|
8
|
+
prefixColor?: typeof Color;
|
|
8
9
|
}
|
|
9
10
|
interface ExecConcurrentlyOptions {
|
|
10
11
|
/**
|
package/lib/utils/exec.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exec.js","sourceRoot":"","sources":["../../src/utils/exec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2BAA0B;AAC1B,oDAA4B;AAC5B,gDAAwB;
|
|
1
|
+
{"version":3,"file":"exec.js","sourceRoot":"","sources":["../../src/utils/exec.ts"],"names":[],"mappings":"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"}
|
package/lib/utils/logging.d.ts
CHANGED
|
@@ -3,7 +3,6 @@ export declare type Logger = typeof log;
|
|
|
3
3
|
export declare const createLogger: (debug: boolean, ...prefixes: unknown[]) => {
|
|
4
4
|
bold: chalk.Chalk;
|
|
5
5
|
formatSubtle: chalk.Chalk;
|
|
6
|
-
pluralise: (count: number, subject: string) => string;
|
|
7
6
|
timing: (start: bigint, end: bigint) => string;
|
|
8
7
|
debug: (...message: unknown[]) => void;
|
|
9
8
|
subtle: (...message: unknown[]) => void;
|
|
@@ -16,7 +15,6 @@ export declare const createLogger: (debug: boolean, ...prefixes: unknown[]) => {
|
|
|
16
15
|
export declare const log: {
|
|
17
16
|
bold: chalk.Chalk;
|
|
18
17
|
formatSubtle: chalk.Chalk;
|
|
19
|
-
pluralise: (count: number, subject: string) => string;
|
|
20
18
|
timing: (start: bigint, end: bigint) => string;
|
|
21
19
|
debug: (...message: unknown[]) => void;
|
|
22
20
|
subtle: (...message: unknown[]) => void;
|
|
@@ -26,3 +24,4 @@ export declare const log: {
|
|
|
26
24
|
plain: (...message: unknown[]) => void;
|
|
27
25
|
warn: (...message: unknown[]) => void;
|
|
28
26
|
};
|
|
27
|
+
export declare const pluralise: (count: number, subject: string) => string;
|
package/lib/utils/logging.js
CHANGED
|
@@ -4,14 +4,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
5
|
};
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.log = exports.createLogger = void 0;
|
|
7
|
+
exports.pluralise = exports.log = exports.createLogger = void 0;
|
|
8
8
|
const chalk_1 = __importDefault(require("chalk"));
|
|
9
9
|
const createLogger = (debug, ...prefixes) => {
|
|
10
10
|
const log = (...message) => console.log(...prefixes, ...message);
|
|
11
11
|
return {
|
|
12
12
|
bold: chalk_1.default.bold,
|
|
13
13
|
formatSubtle: chalk_1.default.grey,
|
|
14
|
-
pluralise: (count, subject) => `${count} ${subject}${count === 1 ? '' : 's'}`,
|
|
15
14
|
timing: (start, end) => `${Number((end - start) / BigInt(10000000)) / 100}s`,
|
|
16
15
|
debug: (...message) => debug ? log(chalk_1.default.grey(...message)) : undefined,
|
|
17
16
|
subtle: (...message) => log(chalk_1.default.grey(...message)),
|
|
@@ -24,4 +23,6 @@ const createLogger = (debug, ...prefixes) => {
|
|
|
24
23
|
};
|
|
25
24
|
exports.createLogger = createLogger;
|
|
26
25
|
exports.log = (0, exports.createLogger)(false);
|
|
26
|
+
const pluralise = (count, subject) => `${count} ${subject}${count === 1 ? '' : 's'}`;
|
|
27
|
+
exports.pluralise = pluralise;
|
|
27
28
|
//# sourceMappingURL=logging.js.map
|
package/lib/utils/logging.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logging.js","sourceRoot":"","sources":["../../src/utils/logging.ts"],"names":[],"mappings":";AAAA,+BAA+B;;;;;;AAE/B,kDAA0B;AAInB,MAAM,YAAY,GAAG,CAAC,KAAc,EAAE,GAAG,QAAmB,EAAE,EAAE;IACrE,MAAM,GAAG,GAAG,CAAC,GAAG,OAAkB,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,QAAQ,EAAE,GAAG,OAAO,CAAC,CAAC;IAE5E,OAAO;QACL,IAAI,EAAE,eAAK,CAAC,IAAI;QAChB,YAAY,EAAE,eAAK,CAAC,IAAI;QAExB,
|
|
1
|
+
{"version":3,"file":"logging.js","sourceRoot":"","sources":["../../src/utils/logging.ts"],"names":[],"mappings":";AAAA,+BAA+B;;;;;;AAE/B,kDAA0B;AAInB,MAAM,YAAY,GAAG,CAAC,KAAc,EAAE,GAAG,QAAmB,EAAE,EAAE;IACrE,MAAM,GAAG,GAAG,CAAC,GAAG,OAAkB,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,QAAQ,EAAE,GAAG,OAAO,CAAC,CAAC;IAE5E,OAAO;QACL,IAAI,EAAE,eAAK,CAAC,IAAI;QAChB,YAAY,EAAE,eAAK,CAAC,IAAI;QAExB,MAAM,EAAE,CAAC,KAAa,EAAE,GAAW,EAAE,EAAE,CACrC,GAAG,MAAM,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,MAAM,CAAC,QAAU,CAAC,CAAC,GAAG,GAAG,GAAG;QAExD,KAAK,EAAE,CAAC,GAAG,OAAkB,EAAE,EAAE,CAC/B,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;QACjD,MAAM,EAAE,CAAC,GAAG,OAAkB,EAAE,EAAE,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;QAC9D,GAAG,EAAE,CAAC,GAAG,OAAkB,EAAE,EAAE,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;QAC1D,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE;QACpB,EAAE,EAAE,CAAC,GAAG,OAAkB,EAAE,EAAE,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC;QAC3D,KAAK,EAAE,CAAC,GAAG,OAAkB,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;QACjD,IAAI,EAAE,CAAC,GAAG,OAAkB,EAAE,EAAE,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC;KAC/D,CAAC;AACJ,CAAC,CAAC;AAnBW,QAAA,YAAY,gBAmBvB;AAEW,QAAA,GAAG,GAAG,IAAA,oBAAY,EAAC,KAAK,CAAC,CAAC;AAEhC,MAAM,SAAS,GAAG,CAAC,KAAa,EAAE,OAAe,EAAE,EAAE,CAC1D,GAAG,KAAK,IAAI,OAAO,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;AADpC,QAAA,SAAS,aAC2B"}
|
package/lib/utils/worker.d.ts
CHANGED
|
@@ -9,7 +9,6 @@ export declare const execWorkerThread: <Input, Output>(filepath: string, input:
|
|
|
9
9
|
export declare const postWorkerOutput: <Input, Output>(fn: (input: Input) => Promise<Output>, logger?: {
|
|
10
10
|
bold: import("chalk").Chalk;
|
|
11
11
|
formatSubtle: import("chalk").Chalk;
|
|
12
|
-
pluralise: (count: number, subject: string) => string;
|
|
13
12
|
timing: (start: bigint, end: bigint) => string;
|
|
14
13
|
debug: (...message: unknown[]) => void;
|
|
15
14
|
subtle: (...message: unknown[]) => void;
|
|
@@ -8,8 +8,12 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
11
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
15
|
exports.runFunctionHandler = void 0;
|
|
16
|
+
const function_arguments_1 = __importDefault(require("function-arguments"));
|
|
13
17
|
const logging_1 = require("../utils/logging");
|
|
14
18
|
const validation_1 = require("../utils/validation");
|
|
15
19
|
const http_1 = require("./http");
|
|
@@ -26,6 +30,10 @@ const runFunctionHandler = ({ availablePort, entryPoint, functionName, }) => __a
|
|
|
26
30
|
logging_1.log.subtle(logging_1.log.bold(functionName), 'is not a function');
|
|
27
31
|
return;
|
|
28
32
|
}
|
|
33
|
+
logging_1.log.warn(logging_1.log.bold(functionName), `(${(0, function_arguments_1.default)(fn)
|
|
34
|
+
// Add a `?` placeholder for unnamed arguments.
|
|
35
|
+
.map((arg) => arg || '?')
|
|
36
|
+
.join(', ')})`);
|
|
29
37
|
const requestListener = (0, http_1.createRequestListenerFromFunction)(fn);
|
|
30
38
|
return (0, http_1.serveRequestListener)(requestListener, availablePort);
|
|
31
39
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"functionHandler.js","sourceRoot":"","sources":["../../src/wrapper/functionHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"functionHandler.js","sourceRoot":"","sources":["../../src/wrapper/functionHandler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4EAAwC;AAExC,8CAAuC;AACvC,oDAA2D;AAE3D,iCAGgB;AAQhB;;GAEG;AACI,MAAM,kBAAkB,GAAG,CAAO,EACvC,aAAa,EACb,UAAU,EACV,YAAY,GACP,EAAiB,EAAE;IACxB,IAAI,CAAC,IAAA,qBAAQ,EAAC,UAAU,CAAC,EAAE;QACzB,aAAG,CAAC,MAAM,CAAC,aAAG,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,iBAAiB,CAAC,CAAC;QACtD,OAAO;KACR;IAED,MAAM,EAAE,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IAEpC,IAAI,CAAC,IAAA,uBAAU,EAAC,EAAE,CAAC,EAAE;QACnB,aAAG,CAAC,MAAM,CAAC,aAAG,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,mBAAmB,CAAC,CAAC;QACxD,OAAO;KACR;IAED,aAAG,CAAC,IAAI,CACN,aAAG,CAAC,IAAI,CAAC,YAAY,CAAC,EACtB,IAAI,IAAA,4BAAM,EAAC,EAAE,CAAC;QACZ,+CAA+C;SAC9C,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC;SACxB,IAAI,CAAC,IAAI,CAAC,GAAG,CACjB,CAAC;IAEF,MAAM,eAAe,GAAG,IAAA,wCAAiC,EAAC,EAAE,CAAC,CAAC;IAE9D,OAAO,IAAA,2BAAoB,EAAC,eAAe,EAAE,aAAa,CAAC,CAAC;AAC9D,CAAC,CAAA,CAAC;AA5BW,QAAA,kBAAkB,sBA4B7B"}
|
package/lib/wrapper/http.js
CHANGED
|
@@ -23,18 +23,22 @@ const logging_1 = require("../utils/logging");
|
|
|
23
23
|
* - The function's return value is JSON stringified into the response body.
|
|
24
24
|
*/
|
|
25
25
|
const createRequestListenerFromFunction = (fn) => (req, res) => __awaiter(void 0, void 0, void 0, function* () {
|
|
26
|
-
const writeJsonResponse = (statusCode, jsonResponse) =>
|
|
27
|
-
.writeHead(statusCode, { 'Content-Type': 'application/json' })
|
|
28
|
-
|
|
26
|
+
const writeJsonResponse = (statusCode, jsonResponse) => {
|
|
27
|
+
res.writeHead(statusCode, { 'Content-Type': 'application/json' });
|
|
28
|
+
return new Promise((resolve, reject) => jsonResponse === undefined
|
|
29
|
+
? res.end(resolve)
|
|
30
|
+
: res.write(JSON.stringify(jsonResponse, null, 2), 'utf8', (err) => err ? reject(err) : res.end(resolve)));
|
|
31
|
+
};
|
|
29
32
|
try {
|
|
30
33
|
const requestBody = yield new Promise((resolve, reject) => {
|
|
31
|
-
|
|
34
|
+
const data = [];
|
|
32
35
|
req
|
|
33
|
-
.on('data', (chunk) => (
|
|
34
|
-
.on('end', () => resolve(data))
|
|
36
|
+
.on('data', (chunk) => data.push(chunk))
|
|
37
|
+
.on('end', () => resolve(Buffer.concat(data).toString()))
|
|
35
38
|
.on('error', (err) => reject(err));
|
|
36
39
|
});
|
|
37
|
-
|
|
40
|
+
// Treat an empty body as no arguments
|
|
41
|
+
const jsonRequest = requestBody ? JSON.parse(requestBody) : [];
|
|
38
42
|
// Pass a non-array request body as the first parameter
|
|
39
43
|
const args = Array.isArray(jsonRequest) ? jsonRequest : [jsonRequest];
|
|
40
44
|
const response = yield fn(...args);
|
package/lib/wrapper/http.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/wrapper/http.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,gDAAwB;AAGxB,qDAAiD;AAEjD,8CAAuC;AAEvC;;;;;GAKG;AACI,MAAM,iCAAiC,GAC5C,CACE,EAAsD,EAChC,EAAE,CAC1B,CAAO,GAAG,EAAE,GAAG,EAAE,EAAE;IACjB,MAAM,iBAAiB,GAAG,CAAC,UAAkB,EAAE,YAAqB,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/wrapper/http.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"engines": {
|
|
8
8
|
"node": ">=12"
|
|
9
9
|
},
|
|
10
|
-
"version": "3.
|
|
10
|
+
"version": "3.16.1",
|
|
11
11
|
"main": "lib/index.js",
|
|
12
12
|
"typings": "lib/index.d.ts",
|
|
13
13
|
"files": [
|
|
@@ -39,9 +39,9 @@
|
|
|
39
39
|
"url": "https://github.com/seek-oss/skuba.git"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
|
-
"@changesets/cli": "2.
|
|
42
|
+
"@changesets/cli": "2.18.0",
|
|
43
43
|
"@changesets/get-github-info": "0.5.0",
|
|
44
|
-
"@types/concurrently": "6.
|
|
44
|
+
"@types/concurrently": "6.3.0",
|
|
45
45
|
"@types/ejs": "3.1.0",
|
|
46
46
|
"@types/express": "4.17.13",
|
|
47
47
|
"@types/fs-extra": "9.0.13",
|
|
@@ -49,25 +49,28 @@
|
|
|
49
49
|
"@types/lodash.mergewith": "4.6.6",
|
|
50
50
|
"@types/module-alias": "2.0.1",
|
|
51
51
|
"@types/npm-which": "3.0.1",
|
|
52
|
-
"@types/picomatch": "2.
|
|
52
|
+
"@types/picomatch": "2.3.0",
|
|
53
53
|
"@types/supertest": "2.0.11",
|
|
54
54
|
"express": "4.17.1",
|
|
55
|
-
"koa": "2.13.
|
|
55
|
+
"koa": "2.13.4",
|
|
56
56
|
"semver": "7.3.5",
|
|
57
57
|
"supertest": "6.1.6",
|
|
58
|
-
"type-fest": "2.
|
|
58
|
+
"type-fest": "2.5.2"
|
|
59
59
|
},
|
|
60
60
|
"dependencies": {
|
|
61
|
+
"@octokit/rest": "^18.12.0",
|
|
62
|
+
"@octokit/types": "^6.34.0",
|
|
61
63
|
"@types/jest": "^27.0.1",
|
|
62
64
|
"chalk": "^4.1.0",
|
|
63
65
|
"concurrently": "^6.2.1",
|
|
64
66
|
"ejs": "^3.1.6",
|
|
65
67
|
"enquirer": "^2.3.6",
|
|
66
68
|
"eslint": "^7.27.0",
|
|
67
|
-
"eslint-config-skuba": "1.0.
|
|
69
|
+
"eslint-config-skuba": "1.0.12",
|
|
68
70
|
"execa": "^5.0.0",
|
|
69
71
|
"fdir": "^5.0.0",
|
|
70
72
|
"fs-extra": "^10.0.0",
|
|
73
|
+
"function-arguments": "^1.0.9",
|
|
71
74
|
"get-port": "^5.1.1",
|
|
72
75
|
"ignore": "^5.1.8",
|
|
73
76
|
"is-installed-globally": "^0.4.0",
|
|
@@ -79,19 +82,19 @@
|
|
|
79
82
|
"normalize-package-data": "^3.0.0",
|
|
80
83
|
"npm-run-path": "^4.0.1",
|
|
81
84
|
"npm-which": "^3.0.1",
|
|
82
|
-
"p-limit": "3.1.0",
|
|
83
85
|
"picomatch": "^2.2.2",
|
|
84
|
-
"prettier": "2.4.1",
|
|
86
|
+
"prettier": "~2.4.1",
|
|
85
87
|
"read-pkg-up": "^7.0.1",
|
|
86
88
|
"runtypes": "^6.0.0",
|
|
87
89
|
"semantic-release": "^17.4.7",
|
|
88
90
|
"serialize-error": "^8.0.1",
|
|
89
91
|
"source-map-support": "^0.5.19",
|
|
92
|
+
"strip-ansi": "^6.0.1",
|
|
90
93
|
"ts-jest": "^27.0.5",
|
|
91
94
|
"ts-node": "^9.1.1",
|
|
92
|
-
"ts-node-dev": "1.1.8",
|
|
95
|
+
"ts-node-dev": "^1.1.8",
|
|
93
96
|
"tsconfig-seek": "1.0.2",
|
|
94
|
-
"typescript": "4.4.
|
|
97
|
+
"typescript": "~4.4.4"
|
|
95
98
|
},
|
|
96
99
|
"peerDependencies": {
|
|
97
100
|
"skuba-dive": "1"
|
|
@@ -100,5 +103,8 @@
|
|
|
100
103
|
"skuba-dive": {
|
|
101
104
|
"optional": true
|
|
102
105
|
}
|
|
106
|
+
},
|
|
107
|
+
"resolutions": {
|
|
108
|
+
"semantic-release/@semantic-release/npm/npm/**/ansi-regex": "5.0.1"
|
|
103
109
|
}
|
|
104
110
|
}
|
|
@@ -57,7 +57,7 @@ steps:
|
|
|
57
57
|
- *aws-sm
|
|
58
58
|
- *private-npm
|
|
59
59
|
- *docker-ecr-cache
|
|
60
|
-
- docker-compose#v3.
|
|
60
|
+
- docker-compose#v3.9.0:
|
|
61
61
|
run: app
|
|
62
62
|
|
|
63
63
|
- <<: *prod
|
|
@@ -67,7 +67,7 @@ steps:
|
|
|
67
67
|
- *aws-sm
|
|
68
68
|
- *private-npm
|
|
69
69
|
- *docker-ecr-cache
|
|
70
|
-
- seek-jobs/gantry#v1.
|
|
70
|
+
- seek-jobs/gantry#v1.5.2:
|
|
71
71
|
command: build
|
|
72
72
|
file: gantry.build.yml
|
|
73
73
|
region: <%- region %>
|
|
@@ -83,7 +83,7 @@ steps:
|
|
|
83
83
|
concurrency_group: <%- teamName %>/deploy/gantry/<%- devGantryEnvironmentName %>
|
|
84
84
|
key: deploy-dev
|
|
85
85
|
plugins:
|
|
86
|
-
- seek-jobs/gantry#v1.
|
|
86
|
+
- seek-jobs/gantry#v1.5.2:
|
|
87
87
|
command: apply
|
|
88
88
|
environment: <%- devGantryEnvironmentName %>
|
|
89
89
|
file: gantry.apply.yml
|
|
@@ -99,7 +99,7 @@ steps:
|
|
|
99
99
|
concurrency_group: <%- teamName %>/deploy/gantry/<%- prodGantryEnvironmentName %>
|
|
100
100
|
depends_on: deploy-dev
|
|
101
101
|
plugins:
|
|
102
|
-
- seek-jobs/gantry#v1.
|
|
102
|
+
- seek-jobs/gantry#v1.5.2:
|
|
103
103
|
command: apply
|
|
104
104
|
environment: <%- prodGantryEnvironmentName %>
|
|
105
105
|
file: gantry.apply.yml
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
16
|