isaacscript 1.2.24 → 1.2.27
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/dist/package.json +6 -5
- package/dist/src/commands/publish/publish.js +13 -6
- package/dist/src/commands/publish/publish.js.map +1 -1
- package/dist/src/exec.js +1 -1
- package/dist/src/exec.js.map +1 -1
- package/dist/src/plugins/addCrashDebugStatements.js +1 -1
- package/dist/src/plugins/addCrashDebugStatements.js.map +1 -1
- package/file-templates/static/.github/workflows/ci.yml +3 -3
- package/package.json +6 -5
- package/src/commands/publish/publish.ts +21 -11
- package/src/exec.ts +1 -1
- package/src/plugins/addCrashDebugStatements.ts +1 -1
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "isaacscript",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.27",
|
|
4
4
|
"description": "A command line tool for managing Isaac mods written in TypeScript",
|
|
5
5
|
"homepage": "https://isaacscript.github.io/",
|
|
6
6
|
"bugs": {
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
"isaacscript": "./dist/src/main.js"
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
|
+
"@types/node": "^17.0.21",
|
|
19
20
|
"chalk": "4.1.2",
|
|
20
21
|
"command-exists": "^1.2.9",
|
|
21
22
|
"dotenv": "^16.0.0",
|
|
@@ -29,21 +30,21 @@
|
|
|
29
30
|
"source-map": "^0.7.3",
|
|
30
31
|
"source-map-support": "^0.5.21",
|
|
31
32
|
"sync-directory": "^4.0.12",
|
|
33
|
+
"ts-node": "^10.7.0",
|
|
32
34
|
"typescript": "^4.6.2",
|
|
33
|
-
"typescript-to-lua": "^1.4.
|
|
35
|
+
"typescript-to-lua": "^1.4.1",
|
|
34
36
|
"update-notifier": "^5.1.0",
|
|
35
37
|
"yaml": "^1.10.2",
|
|
36
|
-
"yargs": "^17.
|
|
38
|
+
"yargs": "^17.4.0"
|
|
37
39
|
},
|
|
38
40
|
"devDependencies": {
|
|
39
41
|
"@types/command-exists": "^1.2.0",
|
|
40
42
|
"@types/figlet": "^1.5.4",
|
|
41
43
|
"@types/fs-extra": "^9.0.13",
|
|
42
|
-
"@types/node": "^17.0.21",
|
|
43
44
|
"@types/prompt": "^1.1.2",
|
|
44
45
|
"@types/source-map-support": "^0.5.4",
|
|
45
46
|
"@types/update-notifier": "^5.1.0",
|
|
46
47
|
"@types/yargs": "^17.0.10",
|
|
47
|
-
"isaacscript-lint": "^1.0.
|
|
48
|
+
"isaacscript-lint": "^1.0.93"
|
|
48
49
|
}
|
|
49
50
|
}
|
|
@@ -44,6 +44,7 @@ function publish(argv, config) {
|
|
|
44
44
|
const modTargetDirectoryName = (0, utils_1.getModTargetDirectoryName)(config);
|
|
45
45
|
const modTargetPath = path_1.default.join(config.modsDirectory, modTargetDirectoryName);
|
|
46
46
|
validateVersion(setVersion);
|
|
47
|
+
validateGitNotDirty(verbose);
|
|
47
48
|
validateIsaacScriptOtherCopiesNotRunning(verbose);
|
|
48
49
|
if (onlyUpload) {
|
|
49
50
|
uploadMod(modTargetPath, config.steamCmdPath, verbose);
|
|
@@ -57,6 +58,11 @@ function validateVersion(setVersion) {
|
|
|
57
58
|
(0, utils_1.error)(chalk_1.default.red(`The version of "${setVersion}" does not match the semantic versioning format.`));
|
|
58
59
|
}
|
|
59
60
|
}
|
|
61
|
+
function validateGitNotDirty(verbose) {
|
|
62
|
+
if (isGitDirty(verbose)) {
|
|
63
|
+
(0, utils_1.error)(chalk_1.default.red("Before publishing, you must push your current changes to git. (Version commits should be not contain any code changes.)"));
|
|
64
|
+
}
|
|
65
|
+
}
|
|
60
66
|
function validateIsaacScriptOtherCopiesNotRunning(verbose) {
|
|
61
67
|
if (process.platform !== "win32") {
|
|
62
68
|
return;
|
|
@@ -68,7 +74,7 @@ function validateIsaacScriptOtherCopiesNotRunning(verbose) {
|
|
|
68
74
|
line.includes("isaacscript") &&
|
|
69
75
|
!line.includes("isaacscript publish"));
|
|
70
76
|
if (otherCopiesOfRunningIsaacScript.length > 0) {
|
|
71
|
-
(0, utils_1.error)(`Other copies of ${constants_1.PROJECT_NAME} appear to be running. You must close those copies before publishing.`);
|
|
77
|
+
(0, utils_1.error)(chalk_1.default.red(`Other copies of ${constants_1.PROJECT_NAME} appear to be running. You must close those copies before publishing.`));
|
|
72
78
|
}
|
|
73
79
|
}
|
|
74
80
|
function startPublish(modSourcePath, modTargetPath, skipVersionIncrement, setVersion, steamCmdPath, dryRun, verbose) {
|
|
@@ -197,11 +203,7 @@ function runReleaseScriptPostCopy(verbose) {
|
|
|
197
203
|
function gitCommitIfChanges(version, verbose) {
|
|
198
204
|
// Throw an error if this is not a git repository
|
|
199
205
|
(0, exec_1.execShell)("git", ["status"], verbose);
|
|
200
|
-
|
|
201
|
-
// https://stackoverflow.com/questions/3878624/how-do-i-programmatically-determine-if-there-are-uncommitted-changes
|
|
202
|
-
const [exitCode] = (0, exec_1.execShell)("git", ["diff-index", "--quiet", "HEAD", "--"], verbose, true);
|
|
203
|
-
if (exitCode === 0) {
|
|
204
|
-
// There are no changes
|
|
206
|
+
if (!isGitDirty(verbose)) {
|
|
205
207
|
console.log("There are no changes to commit.");
|
|
206
208
|
return;
|
|
207
209
|
}
|
|
@@ -211,6 +213,11 @@ function gitCommitIfChanges(version, verbose) {
|
|
|
211
213
|
(0, exec_1.execShell)("git", ["push"], verbose);
|
|
212
214
|
console.log(`Committed and pushed to the git repository with a message of: ${commitMessage}`);
|
|
213
215
|
}
|
|
216
|
+
function isGitDirty(verbose) {
|
|
217
|
+
// From: https://remarkablemark.org/blog/2017/10/12/check-git-dirty/
|
|
218
|
+
const [, stdout] = (0, exec_1.execShell)("git", ["status", "--porcelain"], verbose);
|
|
219
|
+
return stdout !== "";
|
|
220
|
+
}
|
|
214
221
|
function purgeRoomXMLs(modTargetPath, verbose) {
|
|
215
222
|
const roomsPath = path_1.default.join(modTargetPath, "resources", "rooms");
|
|
216
223
|
if (!file.exists(roomsPath) || !file.isDir(roomsPath)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../../../src/commands/publish/publish.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,gDAAwB;AACxB,+CAWyB;AACzB,qCAAgE;AAChE,iDAAmC;AAEnC,uCAA6E;AAC7E,uCAA8C;AAE9C,MAAM,kBAAkB,GAAG,WAAW,CAAC;AAEvC,SAAgB,OAAO,CAAC,IAA6B,EAAE,MAAc;IACnE,MAAM,oBAAoB,GAAG,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC;IAChD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAgC,CAAC;IACzD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC;IACpC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC;IAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC;IAEtC,MAAM,sBAAsB,GAAG,IAAA,iCAAyB,EAAC,MAAM,CAAC,CAAC;IACjE,MAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,sBAAsB,CAAC,CAAC;IAE9E,eAAe,CAAC,UAAU,CAAC,CAAC;IAC5B,wCAAwC,CAAC,OAAO,CAAC,CAAC;IAElD,IAAI,UAAU,EAAE;QACd,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACvD,OAAO;KACR;IAED,YAAY,CACV,2BAAe,EACf,aAAa,EACb,oBAAoB,EACpB,UAAU,EACV,MAAM,CAAC,YAAY,EACnB,MAAM,EACN,OAAO,CACR,CAAC;AACJ,CAAC;
|
|
1
|
+
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../../../src/commands/publish/publish.ts"],"names":[],"mappings":"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"}
|
package/dist/src/exec.js
CHANGED
|
@@ -49,7 +49,7 @@ function execPowershell(command, verbose = false, cwd = constants_1.CWD) {
|
|
|
49
49
|
return stdout;
|
|
50
50
|
}
|
|
51
51
|
exports.execPowershell = execPowershell;
|
|
52
|
-
/** Returns
|
|
52
|
+
/** Returns a tuple of exit status and stdout. The stdout is trimmed for convenience. */
|
|
53
53
|
function execShell(command, args = [], verbose = false, allowFailure = false, cwd = constants_1.CWD) {
|
|
54
54
|
// On Windows, "spawnSync()" will not account for spaces in arguments
|
|
55
55
|
// Thus, wrap everything in a double quote
|
package/dist/src/exec.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exec.js","sourceRoot":"","sources":["../../src/exec.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,iDAAsE;AACtE,2CAAkC;AAClC,mCAAgC;AAEhC,SAAgB,OAAO,CAAC,IAAY,EAAE,OAAO,GAAG,KAAK,EAAE,GAAG,GAAG,eAAG;IAC9D,IAAI,OAAO,EAAE;QACX,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC;KAC1C;IAED,IAAI,MAAc,CAAC;IACnB,IAAI;QACF,MAAM,MAAM,GAAG,IAAA,wBAAQ,EAAC,IAAI,IAAI,GAAG,EAAE;YACnC,GAAG;SACJ,CAAC,CAAC;QACH,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;KACnC;IAAC,OAAO,GAAG,EAAE;QACZ,IAAA,aAAK,EAAC,kBAAkB,eAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;KACrD;IAED,IAAI,OAAO,EAAE;QACX,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC;KACzC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AApBD,0BAoBC;AAED,SAAgB,cAAc,CAC5B,OAAe,EACf,OAAO,GAAG,KAAK,EACf,GAAG,GAAG,eAAG;IAET,IAAI,OAAO,EAAE;QACX,OAAO,CAAC,GAAG,CAAC,iCAAiC,OAAO,EAAE,CAAC,CAAC;KACzD;IAED,IAAI,MAAc,CAAC;IACnB,IAAI;QACF,MAAM,MAAM,GAAG,IAAA,wBAAQ,EAAC,OAAO,EAAE;YAC/B,KAAK,EAAE,gBAAgB;YACvB,GAAG;SACJ,CAAC,CAAC;QACH,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;KACnC;IAAC,OAAO,GAAG,EAAE;QACZ,IAAA,aAAK,EAAC,qCAAqC,eAAK,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;KAC3E;IAED,IAAI,OAAO,EAAE;QACX,OAAO,CAAC,GAAG,CAAC,gCAAgC,OAAO,EAAE,CAAC,CAAC;KACxD;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAzBD,wCAyBC;AAED,
|
|
1
|
+
{"version":3,"file":"exec.js","sourceRoot":"","sources":["../../src/exec.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,8 +23,8 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
const tstl = __importStar(require("typescript-to-lua"));
|
|
27
26
|
const crypto = __importStar(require("crypto"));
|
|
27
|
+
const tstl = __importStar(require("typescript-to-lua"));
|
|
28
28
|
class CustomPrinter extends tstl.LuaPrinter {
|
|
29
29
|
printStatement(statement) {
|
|
30
30
|
const uuid = crypto.randomUUID();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addCrashDebugStatements.js","sourceRoot":"","sources":["../../../src/plugins/addCrashDebugStatements.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA
|
|
1
|
+
{"version":3,"file":"addCrashDebugStatements.js","sourceRoot":"","sources":["../../../src/plugins/addCrashDebugStatements.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AAGjC,wDAA0C;AAE1C,MAAM,aAAc,SAAQ,IAAI,CAAC,UAAU;IACzC,cAAc,CAAC,SAAyB;QACtC,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QACjC,MAAM,iBAAiB,GAAG,kCAAkC,IAAI,MAAM,CAAC;QACvE,MAAM,cAAc,GAAG,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE;YACtC,iBAAiB;YACjB,cAAc;SACf,CAAC,CAAC;IACL,CAAC;CACF;AAED,MAAM,MAAM,GAAgB;IAC1B,OAAO,EAAE,CACP,OAAmB,EACnB,QAAuB,EACvB,QAAgB,EAChB,IAAe,EACf,EAAE,CAAC,IAAI,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;CAChE,CAAC;AAEF,uBAAuB;AACvB,kBAAe,MAAM,CAAC"}
|
|
@@ -6,9 +6,6 @@ jobs:
|
|
|
6
6
|
build_and_lint:
|
|
7
7
|
runs-on: ubuntu-latest
|
|
8
8
|
steps:
|
|
9
|
-
- name: Install xmllint (which the "lint.sh" script uses)
|
|
10
|
-
run: sudo apt-get update && sudo apt-get install libxml2-utils -y
|
|
11
|
-
|
|
12
9
|
- name: Checkout the repository
|
|
13
10
|
uses: actions/checkout@v2
|
|
14
11
|
|
|
@@ -30,6 +27,9 @@ jobs:
|
|
|
30
27
|
if: steps.node-cache.outputs.cache-hit != 'true'
|
|
31
28
|
run: npm ci
|
|
32
29
|
|
|
30
|
+
- name: Install xmllint (which the "lint.sh" script uses)
|
|
31
|
+
run: sudo apt-get update && sudo apt-get install libxml2-utils -y
|
|
32
|
+
|
|
33
33
|
- name: Test to see if the project compiles
|
|
34
34
|
run: bash build.sh
|
|
35
35
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "isaacscript",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.27",
|
|
4
4
|
"description": "A command line tool for managing Isaac mods written in TypeScript",
|
|
5
5
|
"homepage": "https://isaacscript.github.io/",
|
|
6
6
|
"bugs": {
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
"isaacscript": "./dist/src/main.js"
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
|
+
"@types/node": "^17.0.21",
|
|
19
20
|
"chalk": "4.1.2",
|
|
20
21
|
"command-exists": "^1.2.9",
|
|
21
22
|
"dotenv": "^16.0.0",
|
|
@@ -29,21 +30,21 @@
|
|
|
29
30
|
"source-map": "^0.7.3",
|
|
30
31
|
"source-map-support": "^0.5.21",
|
|
31
32
|
"sync-directory": "^4.0.12",
|
|
33
|
+
"ts-node": "^10.7.0",
|
|
32
34
|
"typescript": "^4.6.2",
|
|
33
|
-
"typescript-to-lua": "^1.4.
|
|
35
|
+
"typescript-to-lua": "^1.4.1",
|
|
34
36
|
"update-notifier": "^5.1.0",
|
|
35
37
|
"yaml": "^1.10.2",
|
|
36
|
-
"yargs": "^17.
|
|
38
|
+
"yargs": "^17.4.0"
|
|
37
39
|
},
|
|
38
40
|
"devDependencies": {
|
|
39
41
|
"@types/command-exists": "^1.2.0",
|
|
40
42
|
"@types/figlet": "^1.5.4",
|
|
41
43
|
"@types/fs-extra": "^9.0.13",
|
|
42
|
-
"@types/node": "^17.0.21",
|
|
43
44
|
"@types/prompt": "^1.1.2",
|
|
44
45
|
"@types/source-map-support": "^0.5.4",
|
|
45
46
|
"@types/update-notifier": "^5.1.0",
|
|
46
47
|
"@types/yargs": "^17.0.10",
|
|
47
|
-
"isaacscript-lint": "^1.0.
|
|
48
|
+
"isaacscript-lint": "^1.0.93"
|
|
48
49
|
}
|
|
49
50
|
}
|
|
@@ -31,6 +31,7 @@ export function publish(argv: Record<string, unknown>, config: Config): void {
|
|
|
31
31
|
const modTargetPath = path.join(config.modsDirectory, modTargetDirectoryName);
|
|
32
32
|
|
|
33
33
|
validateVersion(setVersion);
|
|
34
|
+
validateGitNotDirty(verbose);
|
|
34
35
|
validateIsaacScriptOtherCopiesNotRunning(verbose);
|
|
35
36
|
|
|
36
37
|
if (onlyUpload) {
|
|
@@ -59,6 +60,16 @@ function validateVersion(setVersion: string | undefined) {
|
|
|
59
60
|
}
|
|
60
61
|
}
|
|
61
62
|
|
|
63
|
+
function validateGitNotDirty(verbose: boolean) {
|
|
64
|
+
if (isGitDirty(verbose)) {
|
|
65
|
+
error(
|
|
66
|
+
chalk.red(
|
|
67
|
+
"Before publishing, you must push your current changes to git. (Version commits should be not contain any code changes.)",
|
|
68
|
+
),
|
|
69
|
+
);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
62
73
|
function validateIsaacScriptOtherCopiesNotRunning(verbose: boolean) {
|
|
63
74
|
if (process.platform !== "win32") {
|
|
64
75
|
return;
|
|
@@ -78,7 +89,9 @@ function validateIsaacScriptOtherCopiesNotRunning(verbose: boolean) {
|
|
|
78
89
|
);
|
|
79
90
|
if (otherCopiesOfRunningIsaacScript.length > 0) {
|
|
80
91
|
error(
|
|
81
|
-
|
|
92
|
+
chalk.red(
|
|
93
|
+
`Other copies of ${PROJECT_NAME} appear to be running. You must close those copies before publishing.`,
|
|
94
|
+
),
|
|
82
95
|
);
|
|
83
96
|
}
|
|
84
97
|
}
|
|
@@ -280,16 +293,7 @@ function gitCommitIfChanges(version: string, verbose: boolean) {
|
|
|
280
293
|
// Throw an error if this is not a git repository
|
|
281
294
|
execShell("git", ["status"], verbose);
|
|
282
295
|
|
|
283
|
-
|
|
284
|
-
// https://stackoverflow.com/questions/3878624/how-do-i-programmatically-determine-if-there-are-uncommitted-changes
|
|
285
|
-
const [exitCode] = execShell(
|
|
286
|
-
"git",
|
|
287
|
-
["diff-index", "--quiet", "HEAD", "--"],
|
|
288
|
-
verbose,
|
|
289
|
-
true,
|
|
290
|
-
);
|
|
291
|
-
if (exitCode === 0) {
|
|
292
|
-
// There are no changes
|
|
296
|
+
if (!isGitDirty(verbose)) {
|
|
293
297
|
console.log("There are no changes to commit.");
|
|
294
298
|
return;
|
|
295
299
|
}
|
|
@@ -304,6 +308,12 @@ function gitCommitIfChanges(version: string, verbose: boolean) {
|
|
|
304
308
|
);
|
|
305
309
|
}
|
|
306
310
|
|
|
311
|
+
function isGitDirty(verbose: boolean) {
|
|
312
|
+
// From: https://remarkablemark.org/blog/2017/10/12/check-git-dirty/
|
|
313
|
+
const [, stdout] = execShell("git", ["status", "--porcelain"], verbose);
|
|
314
|
+
return stdout !== "";
|
|
315
|
+
}
|
|
316
|
+
|
|
307
317
|
function purgeRoomXMLs(modTargetPath: string, verbose: boolean) {
|
|
308
318
|
const roomsPath = path.join(modTargetPath, "resources", "rooms");
|
|
309
319
|
if (!file.exists(roomsPath) || !file.isDir(roomsPath)) {
|
package/src/exec.ts
CHANGED
|
@@ -52,7 +52,7 @@ export function execPowershell(
|
|
|
52
52
|
return stdout;
|
|
53
53
|
}
|
|
54
54
|
|
|
55
|
-
/** Returns
|
|
55
|
+
/** Returns a tuple of exit status and stdout. The stdout is trimmed for convenience. */
|
|
56
56
|
export function execShell(
|
|
57
57
|
command: string,
|
|
58
58
|
args: string[] = [],
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import * as tstl from "typescript-to-lua";
|
|
2
1
|
import * as crypto from "crypto";
|
|
3
2
|
import { SourceNode } from "source-map";
|
|
4
3
|
import * as ts from "typescript";
|
|
4
|
+
import * as tstl from "typescript-to-lua";
|
|
5
5
|
|
|
6
6
|
class CustomPrinter extends tstl.LuaPrinter {
|
|
7
7
|
printStatement(statement: tstl.Statement): SourceNode {
|