isaacscript 3.40.0 → 4.0.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/dist/commands/publish/publish.js +6 -24
- package/dist/commands/publish/publish.js.map +1 -1
- package/dist/main.js.map +1 -1
- package/dist/parseArgs.js +2 -3
- package/dist/parseArgs.js.map +1 -1
- package/dist/validateMod.js +32 -14
- package/dist/validateMod.js.map +1 -1
- package/file-templates/static-mod/prettier.config.mjs +1 -5
- package/file-templates/static-ts/prettier.config.mjs +1 -5
- package/package.json +3 -3
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { Command } from "@commander-js/extra-typings";
|
|
2
2
|
import { PACKAGE_JSON, fatalError, getPackageJSONField, getPackageJSONVersion, getPackageManagerInstallCommand, isFile, readFile, updatePackageJSON, writeFile, } from "isaacscript-common-node";
|
|
3
|
-
import { CONSTANTS_TS_PATH, METADATA_XML_PATH, VERSION_TXT_PATH, } from "../../constants.js";
|
|
3
|
+
import { CONSTANTS_TS_PATH, CWD, METADATA_XML_PATH, VERSION_TXT_PATH, } from "../../constants.js";
|
|
4
4
|
import { execShell, execShellString } from "../../exec.js";
|
|
5
5
|
import { getReleaseGitCommitMessage, gitCommitAllAndPush } from "../../git.js";
|
|
6
6
|
import { getPackageManagerUsedForExistingProject } from "../../packageManager.js";
|
|
7
|
+
import { getIsaacScriptModMissingFile } from "../../validateMod.js";
|
|
7
8
|
import { publishIsaacScriptMod } from "./isaacscriptMod.js";
|
|
8
9
|
import { validate } from "./validate.js";
|
|
9
10
|
export const publishCommand = new Command()
|
|
@@ -21,32 +22,13 @@ export const publishCommand = new Command()
|
|
|
21
22
|
.option("--skip-lint", "Skip linting before publishing.", false)
|
|
22
23
|
.option("-v, --verbose", "Enable verbose output.", false)
|
|
23
24
|
.action(async (options) => {
|
|
24
|
-
await publish(options
|
|
25
|
-
});
|
|
26
|
-
/**
|
|
27
|
-
* Even though all of the options are identical, we make a "-ts" version of the command to keep the
|
|
28
|
-
* symmetry with the "init" and "init-ts" commands.
|
|
29
|
-
*/
|
|
30
|
-
export const publishTSCommand = new Command()
|
|
31
|
-
.command("publish-ts")
|
|
32
|
-
.description("Bump the version & publish the package on npm.")
|
|
33
|
-
.allowExcessArguments(false) // By default, Commander.js will allow extra positional arguments.
|
|
34
|
-
.helpOption("-h, --help", "Display the list of options for this command.")
|
|
35
|
-
.option("--major", "Perform a major version bump.", false)
|
|
36
|
-
.option("--minor", "Perform a minor version bump.", false)
|
|
37
|
-
.option("--patch", "Perform a patch version bump.", false)
|
|
38
|
-
.option("--skip-increment", "Skip incrementing the version number.", false)
|
|
39
|
-
.option("--set-version <version>", "Specify the version number instead of incrementing it.")
|
|
40
|
-
.option("--dry-run", "Skip committing/uploading & perform a Git reset afterward.", false)
|
|
41
|
-
.option("--skip-update", "Skip updating the npm dependencies.", false)
|
|
42
|
-
.option("--skip-lint", "Skip linting before publishing.", false)
|
|
43
|
-
.option("-v, --verbose", "Enable verbose output.", false)
|
|
44
|
-
.action(async (options) => {
|
|
45
|
-
await publish(options, true);
|
|
25
|
+
await publish(options);
|
|
46
26
|
});
|
|
47
27
|
const publishOptions = publishCommand.opts();
|
|
48
|
-
async function publish(options
|
|
28
|
+
async function publish(options) {
|
|
49
29
|
const { dryRun, setVersion, verbose } = options;
|
|
30
|
+
const isaacScriptModMissingFile = getIsaacScriptModMissingFile(CWD);
|
|
31
|
+
const typeScript = isaacScriptModMissingFile !== undefined;
|
|
50
32
|
validate(typeScript, setVersion, verbose);
|
|
51
33
|
await prePublish(options, typeScript);
|
|
52
34
|
if (typeScript) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../../../../src/commands/publish/publish.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAEtD,OAAO,EACL,YAAY,EACZ,UAAU,EACV,mBAAmB,EACnB,qBAAqB,EACrB,+BAA+B,EAC/B,MAAM,EACN,QAAQ,EACR,iBAAiB,EACjB,SAAS,GACV,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,0BAA0B,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAC/E,OAAO,EAAE,uCAAuC,EAAE,MAAM,yBAAyB,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,OAAO,EAAE;KACxC,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,mDAAmD,CAAC;KAChE,oBAAoB,CAAC,KAAK,CAAC,CAAC,kEAAkE;KAC9F,UAAU,CAAC,YAAY,EAAE,+CAA+C,CAAC;KACzE,MAAM,CAAC,SAAS,EAAE,+BAA+B,EAAE,KAAK,CAAC;KACzD,MAAM,CAAC,SAAS,EAAE,+BAA+B,EAAE,KAAK,CAAC;KACzD,MAAM,CAAC,SAAS,EAAE,+BAA+B,EAAE,KAAK,CAAC;KACzD,MAAM,CAAC,kBAAkB,EAAE,uCAAuC,EAAE,KAAK,CAAC;KAC1E,MAAM,CACL,yBAAyB,EACzB,wDAAwD,CACzD;KACA,MAAM,CACL,WAAW,EACX,4DAA4D,EAC5D,KAAK,CACN;KACA,MAAM,CAAC,eAAe,EAAE,qCAAqC,EAAE,KAAK,CAAC;KACrE,MAAM,CAAC,aAAa,EAAE,iCAAiC,EAAE,KAAK,CAAC;KAC/D,MAAM,CAAC,eAAe,EAAE,wBAAwB,EAAE,KAAK,CAAC;KACxD,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,OAAO,CAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../../../../src/commands/publish/publish.ts"],"names":[],"mappings":"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"}
|
package/dist/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../../src/main.ts"],"names":[],"mappings":";AAEA,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,MAAM,IAAI,EAAE,CAAC;AAEb,KAAK,UAAU,IAAI;IACjB,gBAAgB,CAAC,OAAO,EAAE,CAAC;IAC3B,UAAU,EAAE,CAAC;IACb,mBAAmB,EAAE,CAAC;IACtB,MAAM,2BAA2B,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../../src/main.ts"],"names":[],"mappings":";AAEA,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,MAAM,IAAI,EAAE,CAAC;AAEb,KAAK,UAAU,IAAI;IACjB,gBAAgB,CAAC,OAAO,EAAE,CAAC;IAC3B,UAAU,EAAE,CAAC;IACb,mBAAmB,EAAE,CAAC;IACtB,MAAM,2BAA2B,EAAE,CAAC;IACpC,MAAM,SAAS,EAAE,CAAC;AACpB,CAAC"}
|
package/dist/parseArgs.js
CHANGED
|
@@ -24,7 +24,7 @@ import { checkCommand, checkTSCommand } from "./commands/check/check.js";
|
|
|
24
24
|
import { copyCommand } from "./commands/copy/copy.js";
|
|
25
25
|
import { initCommand, initTSCommand } from "./commands/init/init.js";
|
|
26
26
|
import { monitorCommand } from "./commands/monitor/monitor.js";
|
|
27
|
-
import { publishCommand
|
|
27
|
+
import { publishCommand } from "./commands/publish/publish.js";
|
|
28
28
|
import { CWD } from "./constants.js";
|
|
29
29
|
const packageRoot = findPackageRoot();
|
|
30
30
|
const { name, version, description } = getPackageJSONFieldsMandatory(packageRoot, "name", "version", "description");
|
|
@@ -34,7 +34,7 @@ export async function parseArgs() {
|
|
|
34
34
|
.description(`${description}.`)
|
|
35
35
|
.version(version, "-V, --version", "Output the version number.")
|
|
36
36
|
.helpOption("-h, --help", "Display the list of commands and options.")
|
|
37
|
-
.
|
|
37
|
+
.helpCommand(false)
|
|
38
38
|
.allowExcessArguments(false) // By default, Commander.js will allow extra positional arguments.
|
|
39
39
|
.addCommand(monitorCommand, { isDefault: true })
|
|
40
40
|
.addCommand(checkCommand)
|
|
@@ -44,7 +44,6 @@ export async function parseArgs() {
|
|
|
44
44
|
.addCommand(initTSCommand)
|
|
45
45
|
.addCommand(nukeCommand)
|
|
46
46
|
.addCommand(publishCommand)
|
|
47
|
-
.addCommand(publishTSCommand)
|
|
48
47
|
.addCommand(updateCommand)
|
|
49
48
|
.hook("postAction", (_thisCommand, actionCommand) => {
|
|
50
49
|
if (actionCommand.name() !== "monitor") {
|
package/dist/parseArgs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseArgs.js","sourceRoot":"","sources":["../../../src/parseArgs.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAClC,uBAAuB;AACvB,2DAA2D;AAC3D,gDAAgD;AAChD,4BAA4B;AAC5B,yCAAyC;AACzC,sEAAsE;AACtE,4BAA4B;AAC5B,qCAAqC;AACrC,2BAA2B;AAC3B,2DAA2D;AAC3D,uBAAuB;AACvB,0CAA0C;AAC1C,QAAQ;AACR,yBAAyB;AACzB,oCAAoC;AACpC,6DAA6D;AAC7D,uBAAuB;AACvB,uCAAuC;AACvC,QAAQ;AAER,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EACL,eAAe,EACf,6BAA6B,EAC7B,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,
|
|
1
|
+
{"version":3,"file":"parseArgs.js","sourceRoot":"","sources":["../../../src/parseArgs.ts"],"names":[],"mappings":"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"}
|
package/dist/validateMod.js
CHANGED
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
import chalk from "chalk";
|
|
2
2
|
import { PACKAGE_JSON, fatalError, getFilePath, getPackageJSON, getPackageJSONDependencies, getPackageManagerAddDevCommand, getPackageManagerInstallCommand, isDirectory, isFile, } from "isaacscript-common-node";
|
|
3
3
|
import path from "node:path";
|
|
4
|
-
import { CWD, PROJECT_NAME } from "./constants.js";
|
|
4
|
+
import { CWD, METADATA_XML, PROJECT_NAME } from "./constants.js";
|
|
5
5
|
import { execShellString } from "./exec.js";
|
|
6
6
|
import { getPackageManagerUsedForExistingProject } from "./packageManager.js";
|
|
7
|
-
const FILE_NAMES_TO_CHECK = [PACKAGE_JSON];
|
|
8
|
-
/** We don't check "node_modules" because we might be cloning a fresh IsaacScript project. */
|
|
9
|
-
const SUBDIRECTORY_NAMES_TO_CHECK = ["src", "mod"];
|
|
10
7
|
/**
|
|
11
8
|
* We want "typescript" and some of the other dependencies to be in "devDependencies" instead of
|
|
12
9
|
* "dependencies" because it prevents their functions from being placed into the list of
|
|
@@ -20,24 +17,45 @@ const REQUIRED_PACKAGE_JSON_DEV_DEPENDENCIES = [
|
|
|
20
17
|
"typescript",
|
|
21
18
|
"typescript-to-lua",
|
|
22
19
|
];
|
|
23
|
-
|
|
20
|
+
/** Validate that we are in a directory that looks like an IsaacScript project. */
|
|
24
21
|
export function validateInIsaacScriptProject() {
|
|
25
|
-
|
|
26
|
-
|
|
22
|
+
const isaacScriptModMissingFile = getIsaacScriptModMissingFile(CWD);
|
|
23
|
+
if (isaacScriptModMissingFile !== undefined) {
|
|
24
|
+
errorNotExists(isaacScriptModMissingFile);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Returns the file name missing. If undefined is returned, then the file path is an IsaacScript mod
|
|
29
|
+
* directory.
|
|
30
|
+
*/
|
|
31
|
+
export function getIsaacScriptModMissingFile(directoryPath) {
|
|
32
|
+
// Files
|
|
33
|
+
for (const fileName of [PACKAGE_JSON]) {
|
|
34
|
+
const filePath = path.join(directoryPath, fileName);
|
|
27
35
|
if (!isFile(filePath)) {
|
|
28
|
-
|
|
36
|
+
return filePath;
|
|
29
37
|
}
|
|
30
38
|
}
|
|
31
|
-
|
|
32
|
-
|
|
39
|
+
// Subdirectories
|
|
40
|
+
for (const subdirectoryName of ["src", "mod"]) {
|
|
41
|
+
const subdirectoryPath = path.join(directoryPath, subdirectoryName);
|
|
33
42
|
if (!isDirectory(subdirectoryPath)) {
|
|
34
|
-
|
|
43
|
+
return subdirectoryPath;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
// Specific files in subdirectories.
|
|
47
|
+
{
|
|
48
|
+
const filePath = path.join(directoryPath, "mod", METADATA_XML);
|
|
49
|
+
if (!isFile(filePath)) {
|
|
50
|
+
return filePath;
|
|
35
51
|
}
|
|
36
52
|
}
|
|
53
|
+
return undefined;
|
|
37
54
|
}
|
|
38
|
-
function errorNotExists(
|
|
39
|
-
const
|
|
40
|
-
|
|
55
|
+
function errorNotExists(filePath) {
|
|
56
|
+
const directory = isDirectory(filePath);
|
|
57
|
+
const noun = directory ? "subdirectory" : "file";
|
|
58
|
+
console.error(`It looks like the current working directory of "${chalk.green(CWD)}" is not an ${PROJECT_NAME} project. ("${filePath}" ${noun} does not exist.)`);
|
|
41
59
|
console.error(`Did you mean to create a new ${PROJECT_NAME} project with "${chalk.green("npx isaacscript init")}"?`);
|
|
42
60
|
console.error(`If not, then change the current working directory to an ${PROJECT_NAME} project.`);
|
|
43
61
|
process.exit(1);
|
package/dist/validateMod.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validateMod.js","sourceRoot":"","sources":["../../../src/validateMod.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,YAAY,EACZ,UAAU,EACV,WAAW,EACX,cAAc,EACd,0BAA0B,EAC1B,8BAA8B,EAC9B,+BAA+B,EAC/B,WAAW,EACX,MAAM,GACP,MAAM,yBAAyB,CAAC;AACjC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"validateMod.js","sourceRoot":"","sources":["../../../src/validateMod.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,11 +12,7 @@ const config = {
|
|
|
12
12
|
overrides: [
|
|
13
13
|
// Allow proper formatting of JSONC files that have JSON file extensions.
|
|
14
14
|
{
|
|
15
|
-
files: [
|
|
16
|
-
"**/.vscode/*.json",
|
|
17
|
-
// "tsconfig.json" is automatically handled.
|
|
18
|
-
"**/tsconfig.*.json",
|
|
19
|
-
],
|
|
15
|
+
files: ["**/.vscode/*.json", "**/tsconfig.json", "**/tsconfig.*.json"],
|
|
20
16
|
options: {
|
|
21
17
|
parser: "jsonc",
|
|
22
18
|
},
|
|
@@ -11,11 +11,7 @@ const config = {
|
|
|
11
11
|
overrides: [
|
|
12
12
|
// Allow proper formatting of JSONC files that have JSON file extensions.
|
|
13
13
|
{
|
|
14
|
-
files: [
|
|
15
|
-
"**/.vscode/*.json",
|
|
16
|
-
// "tsconfig.json" is automatically handled.
|
|
17
|
-
"**/tsconfig.*.json",
|
|
18
|
-
],
|
|
14
|
+
files: ["**/.vscode/*.json", "**/tsconfig.json", "**/tsconfig.*.json"],
|
|
19
15
|
options: {
|
|
20
16
|
parser: "jsonc",
|
|
21
17
|
},
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "isaacscript",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "4.0.1",
|
|
4
4
|
"description": "A command line tool for managing Isaac mods written in TypeScript.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"isaac",
|
|
@@ -43,11 +43,11 @@
|
|
|
43
43
|
"test": "glob \"./src/**/*.test.ts\" --cmd=\"node --import tsx --test --test-reporter spec\""
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
|
46
|
-
"@commander-js/extra-typings": "^
|
|
46
|
+
"@commander-js/extra-typings": "^12.0.0",
|
|
47
47
|
"@zamiell/sync-directory": "^6.0.5",
|
|
48
48
|
"ajv": "^8.12.0",
|
|
49
49
|
"chalk": "^5.3.0",
|
|
50
|
-
"commander": "^
|
|
50
|
+
"commander": "^12.0.0",
|
|
51
51
|
"figlet": "^1.7.0",
|
|
52
52
|
"isaacscript-common-node": "^3.0.0",
|
|
53
53
|
"isaacscript-common-ts": "^16.1.0",
|