complete-cli 1.5.14 → 1.5.15-dev.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.
@@ -1,6 +1,6 @@
1
1
  import { Command, Option } from "clipanion";
2
- import { isSemanticVersion } from "complete-common";
3
- import { $, fatalError, getPackageJSONFieldsMandatory, getPackageManagerInstallCommand, getPackageManagerLockFileName, getPackageManagersForProject, isFile, isGitDirectoryClean, isGitRepository, readFile, updatePackageJSONDependencies, writeFile, } from "complete-node";
2
+ import { assertDefined, isSemanticVersion } from "complete-common";
3
+ import { $, fatalError, getPackageJSONFieldsMandatory, getPackageManagerForProject, getPackageManagerInstallCommand, getPackageManagerLockFileName, getPackageManagersForProject, isFile, isGitDirectoryClean, isGitRepository, PackageManager, readFile, updatePackageJSONDependencies, writeFile, } from "complete-node";
4
4
  import path from "node:path";
5
5
  import { CWD, DEFAULT_PACKAGE_MANAGER } from "../constants.js";
6
6
  export class PublishCommand extends Command {
@@ -52,9 +52,9 @@ async function prePublish(versionBumpType, dryRun, skipLint, skipUpdate) {
52
52
  await updateDependencies(skipUpdate, dryRun, packageManager);
53
53
  await incrementVersion(versionBumpType);
54
54
  await unsetDevelopmentConstants();
55
- await tryRunNPMScript("build");
55
+ await tryRunPackageScript("build", packageManager);
56
56
  if (!skipLint) {
57
- await tryRunNPMScript("lint");
57
+ await tryRunPackageScript("lint", packageManager);
58
58
  }
59
59
  }
60
60
  async function getPackageManagerUsedForExistingProject() {
@@ -109,7 +109,7 @@ async function incrementVersion(versionBumpType) {
109
109
  }
110
110
  // We always use `npm` here to avoid differences with the version command between package
111
111
  // managers. The "--no-git-tag-version" flag will prevent npm from both making a commit and adding
112
- // a tag.
112
+ // a tag. (`bun version` is not implemented.)
113
113
  await $ `npm version ${versionBumpType} --no-git-tag-version`;
114
114
  }
115
115
  async function unsetDevelopmentConstants() {
@@ -124,12 +124,12 @@ async function unsetDevelopmentConstants() {
124
124
  .replace("const DEBUG = true", "const DEBUG = false");
125
125
  await writeFile(constantsTSPath, newConstantsTS);
126
126
  }
127
- async function tryRunNPMScript(scriptName) {
127
+ async function tryRunPackageScript(scriptName, packageManager) {
128
128
  console.log(`Running: ${scriptName}`);
129
129
  const $$ = $({
130
130
  reject: false,
131
131
  });
132
- const { exitCode } = await $$ `npm run ${scriptName}`;
132
+ const { exitCode } = await $$ `${packageManager} run ${scriptName}`;
133
133
  if (exitCode !== 0) {
134
134
  await $ `git reset --hard`; // Revert the version changes.
135
135
  fatalError(`Failed to run "${scriptName}".`);
@@ -143,11 +143,14 @@ async function publish(dryRun) {
143
143
  else {
144
144
  const releaseGitCommitMessage = getReleaseGitCommitMessage(version);
145
145
  await gitCommitAllAndPush(releaseGitCommitMessage);
146
+ const packageManager = await getPackageManagerForProject(CWD);
147
+ assertDefined(packageManager, `Failed to get the package manager for the project at directory: ${CWD}`);
148
+ const command = packageManager === PackageManager.bun ? "bun" : "npm";
146
149
  // - The "--access=public" flag is only technically needed for the first publish (unless the
147
150
  // package is a scoped package), but it is saved here for posterity.
148
151
  // - The "--ignore-scripts" flag is needed since the "npm publish" command will run the
149
152
  // "publish" script in the "package.json" file, causing an infinite loop.
150
- await $ `npm publish --access=public --ignore-scripts`;
153
+ await $ `${command} publish --access=public --ignore-scripts`;
151
154
  }
152
155
  const dryRunSuffix = dryRun ? " (dry-run)" : "";
153
156
  console.log(`Published ${name} version ${version} successfully${dryRunSuffix}.`);
@@ -1 +1 @@
1
- {"version":3,"file":"PublishCommand.js","sourceRoot":"","sources":["../../../../src/commands/PublishCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PublishCommand.js","sourceRoot":"","sources":["../../../../src/commands/PublishCommand.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import chalk from "chalk";
2
- import { assertObject, repeat } from "complete-common";
2
+ import { assertObject, mapAsync, repeat } from "complete-common";
3
3
  import { $q, copyFileOrDirectory, formatWithPrettier, getFileNamesInDirectory, getPackageJSON, getPackageManagerInstallCICommand, getPackageManagerInstallCommand, isFile, makeDirectory, PackageManager, readFile, renameFileOrDirectory, updatePackageJSONDependencies, writeFile, } from "complete-node";
4
4
  import path from "node:path";
5
5
  import { ACTION_YML, ACTION_YML_TEMPLATE_PATH, TEMPLATES_DYNAMIC_DIR, TEMPLATES_STATIC_DIR, } from "../../constants.js";
@@ -45,14 +45,14 @@ async function copyStaticFiles(projectPath) {
45
45
  }
46
46
  async function copyTemplateDirectoryWithoutOverwriting(templateDirPath, projectPath) {
47
47
  const fileNames = await getFileNamesInDirectory(templateDirPath);
48
- await Promise.all(fileNames.map(async (fileName) => {
48
+ await mapAsync(fileNames, async (fileName) => {
49
49
  const templateFilePath = path.join(templateDirPath, fileName);
50
50
  const destinationFilePath = path.join(projectPath, fileName);
51
51
  const file = await isFile(destinationFilePath);
52
52
  if (!file) {
53
53
  await copyFileOrDirectory(templateFilePath, destinationFilePath);
54
54
  }
55
- }));
55
+ });
56
56
  }
57
57
  /** Copy files that need to have text replaced inside of them. */
58
58
  async function copyDynamicFiles(projectName, authorName, projectPath, packageManager) {
@@ -145,11 +145,11 @@ async function copyPackageManagerSpecificFiles(projectPath, packageManager) {
145
145
  tsConfigJSONPath,
146
146
  tsConfigJSONScriptsPath,
147
147
  ];
148
- await Promise.all(filePathsToReplaceNodeWithBun.map(async (filePath) => {
148
+ await mapAsync(filePathsToReplaceNodeWithBun, async (filePath) => {
149
149
  const fileContents = await readFile(filePath);
150
150
  const newFileContents = fileContents.replaceAll("node", "bun");
151
151
  await writeFile(filePath, newFileContents);
152
- }));
152
+ });
153
153
  // Second, replace "tsx" with "bun run".
154
154
  const packageJSONPath = path.join(projectPath, "package.json");
155
155
  const fileContents = await readFile(packageJSONPath);
@@ -1 +1 @@
1
- {"version":3,"file":"createProject.js","sourceRoot":"","sources":["../../../../../src/commands/init/createProject.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createProject.js","sourceRoot":"","sources":["../../../../../src/commands/init/createProject.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { assertObject, isArrayString } from "complete-common";
1
+ import { assertObject, isArrayString, mapAsync } from "complete-common";
2
2
  import { $, $q, commandExists, getJSONC, isFile } from "complete-node";
3
3
  import path from "node:path";
4
4
  import { getInputYesNo, promptError, promptLog } from "../../prompt.js";
@@ -37,7 +37,7 @@ async function installVSCodeExtensions(projectPath, vsCodeCommand) {
37
37
  return;
38
38
  }
39
39
  const extensions = await getExtensionsFromJSON(projectPath);
40
- await Promise.all(extensions.map(async (extension) => await $q `${vsCodeCommand} --install-extension ${extension}`));
40
+ await mapAsync(extensions, async (extension) => await $q `${vsCodeCommand} --install-extension ${extension}`);
41
41
  }
42
42
  async function getExtensionsFromJSON(projectPath) {
43
43
  const extensionsJSONPath = path.join(projectPath, ".vscode", "extensions.json");
@@ -1 +1 @@
1
- {"version":3,"file":"vsCodeInit.js","sourceRoot":"","sources":["../../../../../src/commands/init/vsCodeInit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAExE,MAAM,gBAAgB,GAAG;IACvB,MAAM;IACN,QAAQ;IACR,UAAU;IACV,eAAe;CACP,CAAC;AAEX,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,WAAmB,EACnB,MAAe,EACf,GAAY;IAEZ,MAAM,aAAa,GAAG,MAAM,gBAAgB,EAAE,CAAC;IAC/C,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QAChC,SAAS,CACP,gJAAgJ,CACjJ,CAAC;QACF,OAAO;IACT,CAAC;IAED,MAAM,uBAAuB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAC1D,MAAM,YAAY,CAAC,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;AAC9D,CAAC;AAED,KAAK,UAAU,gBAAgB;IAC7B,KAAK,MAAM,OAAO,IAAI,gBAAgB,EAAE,CAAC;QACvC,gGAAgG;QAChG,mCAAmC;QACnC,4CAA4C;QAC5C,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;QAC5C,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,OAAO,CAAC;QACjB,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,uBAAuB,CACpC,WAAmB,EACnB,aAAqB;IAErB,iGAAiG;IACjG,8FAA8F;IAC9F,wDAAwD;IACxD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,OAAO;IACT,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,qBAAqB,CAAC,WAAW,CAAC,CAAC;IAC5D,MAAM,OAAO,CAAC,GAAG,CACf,UAAU,CAAC,GAAG,CACZ,KAAK,EAAE,SAAS,EAAE,EAAE,CAClB,MAAM,EAAE,CAAA,GAAG,aAAa,wBAAwB,SAAS,EAAE,CAC9D,CACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,WAAmB;IAEnB,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAClC,WAAW,EACX,SAAS,EACT,iBAAiB,CAClB,CAAC;IAEF,MAAM,oBAAoB,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAC9D,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC1D,YAAY,CACV,cAAc,EACd,QAAQ,kBAAkB,0BAA0B,CACrD,CAAC;IAEF,MAAM,EAAE,eAAe,EAAE,GAAG,cAAc,CAAC;IAC3C,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,CAAC;QACpC,WAAW,CACT,uFAAuF,CACxF,CAAC;IACJ,CAAC;IAED,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,WAAmB,EACnB,aAAqB,EACrB,MAAe,EACf,GAAY;IAEZ,IAAI,MAAM,EAAE,CAAC;QACX,0FAA0F;QAC1F,MAAM,UAAU,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QAC7C,OAAO;IACT,CAAC;IAED,IAAI,GAAG,EAAE,CAAC;QACR,8FAA8F;QAC9F,sCAAsC;QACtC,OAAO;IACT,CAAC;IAED,+EAA+E;IAC/E,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,OAAO;IACT,CAAC;IAED,MAAM,gBAAgB,GAAG,MAAM,aAAa,CAC1C,qDAAqD,CACtD,CAAC;IACF,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,UAAU,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,WAAmB,EAAE,aAAqB;IAClE,MAAM,CAAC,CAAA,GAAG,aAAa,IAAI,WAAW,EAAE,CAAC;AAC3C,CAAC"}
1
+ {"version":3,"file":"vsCodeInit.js","sourceRoot":"","sources":["../../../../../src/commands/init/vsCodeInit.ts"],"names":[],"mappings":"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"}
package/dist/constants.js CHANGED
@@ -9,7 +9,7 @@ const PACKAGE_ROOT = path.resolve(import.meta.dirname, "..");
9
9
  const { name, version } = packageJSON;
10
10
  export const PROJECT_NAME = name;
11
11
  export const PROJECT_VERSION = version;
12
- export const DEFAULT_PACKAGE_MANAGER = PackageManager.npm;
12
+ export const DEFAULT_PACKAGE_MANAGER = PackageManager.bun;
13
13
  const TEMPLATES_DIR = path.join(PACKAGE_ROOT, "file-templates");
14
14
  export const TEMPLATES_STATIC_DIR = path.join(TEMPLATES_DIR, "static");
15
15
  export const TEMPLATES_DYNAMIC_DIR = path.join(TEMPLATES_DIR, "dynamic");
package/dist/main.js CHANGED
File without changes
@@ -2,12 +2,9 @@ runs:
2
2
  using: composite
3
3
 
4
4
  steps:
5
- - name: Setup Node.js
6
- uses: actions/setup-node@v6
7
- with:
8
- node-version: lts/*
9
- cache: PACKAGE_MANAGER_NAME
5
+ - name: Setup Bun
6
+ uses: oven-sh/setup-bun@v2
10
7
 
11
8
  - name: Install dependencies
12
- run: PACKAGE_MANAGER_INSTALL_COMMAND
9
+ run: bun ci
13
10
  shell: bash # Composite jobs must specify the shell.
@@ -17,10 +17,10 @@
17
17
  "dist"
18
18
  ],
19
19
  "scripts": {
20
- "build": "tsx ./scripts/build.ts",
21
- "lint": "tsx ./scripts/lint.ts",
20
+ "build": "bun run ./scripts/build.ts",
21
+ "lint": "bun run ./scripts/lint.ts",
22
22
  "publish": "complete-cli publish",
23
- "start": "tsx ./src/main.ts",
23
+ "start": "bun run ./src/main.ts",
24
24
  "update": "complete-cli update"
25
25
  },
26
26
  "devDependencies": {
@@ -8,14 +8,14 @@ jobs:
8
8
  steps:
9
9
  - uses: actions/checkout@v6
10
10
  - uses: ./.github/workflows/setup
11
- - run: npm run build
11
+ - run: bun run build
12
12
 
13
13
  lint:
14
14
  runs-on: ubuntu-latest
15
15
  steps:
16
16
  - uses: actions/checkout@v6
17
17
  - uses: ./.github/workflows/setup
18
- - run: npm run lint
18
+ - run: bun run lint
19
19
 
20
20
  discord:
21
21
  name: Discord Failure Notification
@@ -3,7 +3,7 @@
3
3
  {
4
4
  "recommendations": [
5
5
  "dbaeumer.vscode-eslint", // The TypeScript linter
6
- "prettier.prettier-vscode", // The TypeScript formatter
6
+ "esbenp.prettier-vscode", // The TypeScript formatter
7
7
  "streetsidesoftware.code-spell-checker", // A spell-checker extension based on CSpell
8
8
  ],
9
9
  }
@@ -73,56 +73,56 @@
73
73
  "editor.codeActionsOnSave": {
74
74
  "source.fixAll.eslint": "explicit",
75
75
  },
76
- "editor.defaultFormatter": "prettier.prettier-vscode",
76
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
77
77
  "editor.formatOnSave": true,
78
78
  },
79
79
  "[typescript]": {
80
80
  "editor.codeActionsOnSave": {
81
81
  "source.fixAll.eslint": "explicit",
82
82
  },
83
- "editor.defaultFormatter": "prettier.prettier-vscode",
83
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
84
84
  "editor.formatOnSave": true,
85
85
  },
86
86
  "[javascriptreact]": {
87
87
  "editor.codeActionsOnSave": {
88
88
  "source.fixAll.eslint": "explicit",
89
89
  },
90
- "editor.defaultFormatter": "prettier.prettier-vscode",
90
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
91
91
  "editor.formatOnSave": true,
92
92
  },
93
93
  "[typescriptreact]": {
94
94
  "editor.codeActionsOnSave": {
95
95
  "source.fixAll.eslint": "explicit",
96
96
  },
97
- "editor.defaultFormatter": "prettier.prettier-vscode",
97
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
98
98
  "editor.formatOnSave": true,
99
99
  },
100
100
  "[css]": {
101
- "editor.defaultFormatter": "prettier.prettier-vscode",
101
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
102
102
  "editor.formatOnSave": true,
103
103
  },
104
104
  "[html]": {
105
- "editor.defaultFormatter": "prettier.prettier-vscode",
105
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
106
106
  "editor.formatOnSave": true,
107
107
  },
108
108
  "[json]": {
109
- "editor.defaultFormatter": "prettier.prettier-vscode",
109
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
110
110
  "editor.formatOnSave": true,
111
111
  },
112
112
  "[jsonc]": {
113
- "editor.defaultFormatter": "prettier.prettier-vscode",
113
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
114
114
  "editor.formatOnSave": true,
115
115
  },
116
116
  "[markdown]": {
117
- "editor.defaultFormatter": "prettier.prettier-vscode",
117
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
118
118
  "editor.formatOnSave": true,
119
119
  },
120
120
  "[postcss]": {
121
- "editor.defaultFormatter": "prettier.prettier-vscode",
121
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
122
122
  "editor.formatOnSave": true,
123
123
  },
124
124
  "[yaml]": {
125
- "editor.defaultFormatter": "prettier.prettier-vscode",
125
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
126
126
  "editor.formatOnSave": true,
127
127
  },
128
128
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "complete-cli",
3
- "version": "1.5.14",
3
+ "version": "1.5.15-dev.1",
4
4
  "description": "A command line tool for bootstrapping TypeScript projects.",
5
5
  "keywords": [
6
6
  "typescript"
@@ -25,29 +25,29 @@
25
25
  "src"
26
26
  ],
27
27
  "scripts": {
28
- "build": "tsx ./scripts/build.ts",
29
- "lint": "tsx ./scripts/lint.ts",
30
- "start": "tsx ./src/main.ts",
31
- "test": "tsx --test"
28
+ "build": "bun run ./scripts/build.ts",
29
+ "lint": "bun run ./scripts/lint.ts",
30
+ "start": "bun run ./src/main.ts",
31
+ "test": "bun test"
32
32
  },
33
33
  "dependencies": {
34
34
  "@clack/prompts": "0.11.0",
35
35
  "chalk": "5.6.2",
36
36
  "clipanion": "4.0.0-rc.4",
37
- "complete-common": "2.11.0",
38
- "complete-node": "16.0.0",
37
+ "complete-common": "2.14.0",
38
+ "complete-node": "16.2.0",
39
39
  "klaw-sync": "7.0.0",
40
40
  "source-map-support": "0.5.21",
41
41
  "yaml": "2.8.2"
42
42
  },
43
43
  "devDependencies": {
44
44
  "@types/klaw-sync": "6.0.5",
45
- "@types/node": "25.0.3",
45
+ "@types/node": "25.0.9",
46
46
  "@types/source-map-support": "0.5.10",
47
47
  "ts-loader": "9.5.4",
48
48
  "tsconfig-paths-webpack-plugin": "4.2.0",
49
49
  "typescript": "5.9.3",
50
- "typescript-eslint": "8.51.0",
50
+ "typescript-eslint": "8.53.0",
51
51
  "webpack": "5.104.1",
52
52
  "webpack-cli": "6.0.1",
53
53
  "webpack-shebang-plugin": "1.1.8"
@@ -1,16 +1,17 @@
1
1
  import { Command, Option } from "clipanion";
2
- import { isSemanticVersion } from "complete-common";
3
- import type { PackageManager } from "complete-node";
2
+ import { assertDefined, isSemanticVersion } from "complete-common";
4
3
  import {
5
4
  $,
6
5
  fatalError,
7
6
  getPackageJSONFieldsMandatory,
7
+ getPackageManagerForProject,
8
8
  getPackageManagerInstallCommand,
9
9
  getPackageManagerLockFileName,
10
10
  getPackageManagersForProject,
11
11
  isFile,
12
12
  isGitDirectoryClean,
13
13
  isGitRepository,
14
+ PackageManager,
14
15
  readFile,
15
16
  updatePackageJSONDependencies,
16
17
  writeFile,
@@ -95,9 +96,9 @@ async function prePublish(
95
96
  await incrementVersion(versionBumpType);
96
97
  await unsetDevelopmentConstants();
97
98
 
98
- await tryRunNPMScript("build");
99
+ await tryRunPackageScript("build", packageManager);
99
100
  if (!skipLint) {
100
- await tryRunNPMScript("lint");
101
+ await tryRunPackageScript("lint", packageManager);
101
102
  }
102
103
  }
103
104
 
@@ -176,7 +177,7 @@ async function incrementVersion(versionBumpType: string) {
176
177
 
177
178
  // We always use `npm` here to avoid differences with the version command between package
178
179
  // managers. The "--no-git-tag-version" flag will prevent npm from both making a commit and adding
179
- // a tag.
180
+ // a tag. (`bun version` is not implemented.)
180
181
  await $`npm version ${versionBumpType} --no-git-tag-version`;
181
182
  }
182
183
 
@@ -194,13 +195,16 @@ async function unsetDevelopmentConstants() {
194
195
  await writeFile(constantsTSPath, newConstantsTS);
195
196
  }
196
197
 
197
- async function tryRunNPMScript(scriptName: string) {
198
+ async function tryRunPackageScript(
199
+ scriptName: string,
200
+ packageManager: PackageManager,
201
+ ) {
198
202
  console.log(`Running: ${scriptName}`);
199
203
 
200
204
  const $$ = $({
201
205
  reject: false,
202
206
  });
203
- const { exitCode } = await $$`npm run ${scriptName}`;
207
+ const { exitCode } = await $$`${packageManager} run ${scriptName}`;
204
208
 
205
209
  if (exitCode !== 0) {
206
210
  await $`git reset --hard`; // Revert the version changes.
@@ -221,11 +225,18 @@ async function publish(dryRun: boolean) {
221
225
  const releaseGitCommitMessage = getReleaseGitCommitMessage(version);
222
226
  await gitCommitAllAndPush(releaseGitCommitMessage);
223
227
 
228
+ const packageManager = await getPackageManagerForProject(CWD);
229
+ assertDefined(
230
+ packageManager,
231
+ `Failed to get the package manager for the project at directory: ${CWD}`,
232
+ );
233
+ const command = packageManager === PackageManager.bun ? "bun" : "npm";
234
+
224
235
  // - The "--access=public" flag is only technically needed for the first publish (unless the
225
236
  // package is a scoped package), but it is saved here for posterity.
226
237
  // - The "--ignore-scripts" flag is needed since the "npm publish" command will run the
227
238
  // "publish" script in the "package.json" file, causing an infinite loop.
228
- await $`npm publish --access=public --ignore-scripts`;
239
+ await $`${command} publish --access=public --ignore-scripts`;
229
240
  }
230
241
 
231
242
  const dryRunSuffix = dryRun ? " (dry-run)" : "";
@@ -1,5 +1,5 @@
1
1
  import chalk from "chalk";
2
- import { assertObject, repeat } from "complete-common";
2
+ import { assertObject, mapAsync, repeat } from "complete-common";
3
3
  import {
4
4
  $q,
5
5
  copyFileOrDirectory,
@@ -92,16 +92,14 @@ async function copyTemplateDirectoryWithoutOverwriting(
92
92
  projectPath: string,
93
93
  ) {
94
94
  const fileNames = await getFileNamesInDirectory(templateDirPath);
95
- await Promise.all(
96
- fileNames.map(async (fileName) => {
97
- const templateFilePath = path.join(templateDirPath, fileName);
98
- const destinationFilePath = path.join(projectPath, fileName);
99
- const file = await isFile(destinationFilePath);
100
- if (!file) {
101
- await copyFileOrDirectory(templateFilePath, destinationFilePath);
102
- }
103
- }),
104
- );
95
+ await mapAsync(fileNames, async (fileName) => {
96
+ const templateFilePath = path.join(templateDirPath, fileName);
97
+ const destinationFilePath = path.join(projectPath, fileName);
98
+ const file = await isFile(destinationFilePath);
99
+ if (!file) {
100
+ await copyFileOrDirectory(templateFilePath, destinationFilePath);
101
+ }
102
+ });
105
103
  }
106
104
 
107
105
  /** Copy files that need to have text replaced inside of them. */
@@ -229,13 +227,11 @@ async function copyPackageManagerSpecificFiles(
229
227
  tsConfigJSONPath,
230
228
  tsConfigJSONScriptsPath,
231
229
  ];
232
- await Promise.all(
233
- filePathsToReplaceNodeWithBun.map(async (filePath) => {
234
- const fileContents = await readFile(filePath);
235
- const newFileContents = fileContents.replaceAll("node", "bun");
236
- await writeFile(filePath, newFileContents);
237
- }),
238
- );
230
+ await mapAsync(filePathsToReplaceNodeWithBun, async (filePath) => {
231
+ const fileContents = await readFile(filePath);
232
+ const newFileContents = fileContents.replaceAll("node", "bun");
233
+ await writeFile(filePath, newFileContents);
234
+ });
239
235
 
240
236
  // Second, replace "tsx" with "bun run".
241
237
  const packageJSONPath = path.join(projectPath, "package.json");
@@ -1,4 +1,4 @@
1
- import { assertObject, isArrayString } from "complete-common";
1
+ import { assertObject, isArrayString, mapAsync } from "complete-common";
2
2
  import { $, $q, commandExists, getJSONC, isFile } from "complete-node";
3
3
  import path from "node:path";
4
4
  import { getInputYesNo, promptError, promptLog } from "../../prompt.js";
@@ -53,11 +53,10 @@ async function installVSCodeExtensions(
53
53
  }
54
54
 
55
55
  const extensions = await getExtensionsFromJSON(projectPath);
56
- await Promise.all(
57
- extensions.map(
58
- async (extension) =>
59
- await $q`${vsCodeCommand} --install-extension ${extension}`,
60
- ),
56
+ await mapAsync(
57
+ extensions,
58
+ async (extension) =>
59
+ await $q`${vsCodeCommand} --install-extension ${extension}`,
61
60
  );
62
61
  }
63
62
 
package/src/constants.ts CHANGED
@@ -14,7 +14,7 @@ const { name, version } = packageJSON;
14
14
  export const PROJECT_NAME = name;
15
15
  export const PROJECT_VERSION = version;
16
16
 
17
- export const DEFAULT_PACKAGE_MANAGER = PackageManager.npm;
17
+ export const DEFAULT_PACKAGE_MANAGER = PackageManager.bun;
18
18
 
19
19
  const TEMPLATES_DIR = path.join(PACKAGE_ROOT, "file-templates");
20
20
  export const TEMPLATES_STATIC_DIR = path.join(TEMPLATES_DIR, "static");