@d1g1tal/tsbuild 1.7.2 → 1.7.4

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/CHANGELOG.md CHANGED
@@ -1,3 +1,39 @@
1
+ ## [1.7.4](https://github.com/D1g1talEntr0py/tsbuild/compare/v1.7.3...v1.7.4) (2026-04-06)
2
+
3
+ ### Bug Fixes
4
+
5
+ * **typescript:** address regression where 'noEmit' would not catch all type errors (ece0de27a4e3019c3dfc437e40894b61a7ac04a3)
6
+ - collect syntatic, semantic, and declaration diagnostics independently when 'noEmit' is true
7
+ - emit correctly within 'noEmit' mode to guarantee the incrementally updated tsbuildinfo cache is correctly generated
8
+ - adjoin extensive test coverage evaluating diagnostic consistency against varied declaration violations
9
+
10
+
11
+ ### Code Refactoring
12
+
13
+ * **types:** add explicit return types to support isolateddeclarations (ca0b2ee7757de487a5bf64d36fd346faf35adba4)
14
+ - add explicit return types to functions across constants, decorators, and internal libraries
15
+ - annotate return types on file manager, cache, logger, process manager, and path utilities
16
+ - ensure process manager exit handler properly invokes close on registered instances
17
+ - update typescript configuration to enable isolateddeclarations for the project
18
+
19
+ ## [1.7.3](https://github.com/D1g1talEntr0py/tsbuild/compare/v1.7.2...v1.7.3) (2026-04-04)
20
+
21
+ ### Bug Fixes
22
+
23
+ * update esbuild and remaining dependencies (d9fd8e31d2598cc8efc657eb594cb7c8985767d8)
24
+ - update esbuild from ^0.27.4 to ^0.28.0
25
+ - update @types/node from ^25.5.0 to ^25.5.2
26
+ - update eslint from ^10.1.0 to ^10.2.0
27
+ - update pnpm-lock.yaml to reflect new dependency versions
28
+ - add stableTypeOrdering: true to tsconfig.json
29
+ - change moduleResolution: Bundler to module: preserve in tsconfig.json
30
+ - add clarifying comment about global regex usage in src/type-script-project.ts
31
+
32
+
33
+ ### Miscellaneous Chores
34
+
35
+ * **docs:** remove AI generate document unrelated to the project (3f31ad1ce93deff047a859961514e3978633fc6a)
36
+
1
37
  ## [1.7.2](https://github.com/D1g1talEntr0py/tsbuild/compare/v1.7.1...v1.7.2) (2026-04-01)
2
38
 
3
39
  ### Bug Fixes
@@ -387,6 +387,7 @@ var BuildError = class extends Error {
387
387
  this.name = "BuildError";
388
388
  Error.captureStackTrace(this, this.constructor);
389
389
  }
390
+ code;
390
391
  };
391
392
  var TypeCheckError = class extends BuildError {
392
393
  /**
@@ -399,6 +400,7 @@ var TypeCheckError = class extends BuildError {
399
400
  this.diagnostics = diagnostics;
400
401
  this.name = "TypeCheckError";
401
402
  }
403
+ diagnostics;
402
404
  };
403
405
  var BundleError = class extends BuildError {
404
406
  /**
@@ -2135,7 +2137,7 @@ var _TypeScriptProject = class _TypeScriptProject {
2135
2137
  return Files.empty(this.buildConfiguration.outDir);
2136
2138
  }
2137
2139
  async build() {
2138
- Logger.header(`${tsLogo} tsbuild v${"1.7.2"}${this.configuration.compilerOptions.incremental && this.configuration.buildCache?.isValid() ? " [incremental]" : ""}`);
2140
+ Logger.header(`${tsLogo} tsbuild v${"1.7.4"}${this.configuration.compilerOptions.incremental && this.configuration.buildCache?.isValid() ? " [incremental]" : ""}`);
2139
2141
  try {
2140
2142
  const processes = [];
2141
2143
  const filesWereEmitted = await this.typeCheck();
@@ -2173,19 +2175,36 @@ var _TypeScriptProject = class _TypeScriptProject {
2173
2175
  }
2174
2176
  async typeCheck() {
2175
2177
  await this.fileManager.initialize();
2176
- performance2.mark("emit:start");
2177
- const { diagnostics: emitDiagnostics } = this.builderProgram.emit(void 0, this.fileManager.fileWriter, void 0, true);
2178
- addPerformanceStep("Emit", _TypeScriptProject.elapsed("emit:start"));
2179
- performance2.mark("diagnostics:start");
2180
- const allDiagnostics = [...this.builderProgram.getSemanticDiagnostics(), ...emitDiagnostics];
2181
- addPerformanceStep("Diagnostics", _TypeScriptProject.elapsed("diagnostics:start"));
2178
+ let allDiagnostics;
2179
+ if (this.configuration.compilerOptions.noEmit) {
2180
+ performance2.mark("diagnostics:start");
2181
+ allDiagnostics = [
2182
+ ...this.builderProgram.getConfigFileParsingDiagnostics(),
2183
+ ...this.builderProgram.getOptionsDiagnostics(),
2184
+ ...this.builderProgram.getSyntacticDiagnostics(),
2185
+ ...this.builderProgram.getGlobalDiagnostics(),
2186
+ ...this.builderProgram.getSemanticDiagnostics(),
2187
+ ...this.configuration.compilerOptions.declaration ? this.builderProgram.getDeclarationDiagnostics() : []
2188
+ ];
2189
+ addPerformanceStep("Diagnostics", _TypeScriptProject.elapsed("diagnostics:start"));
2190
+ performance2.mark("emit:start");
2191
+ this.builderProgram.emit(void 0, this.fileManager.fileWriter, void 0, true);
2192
+ addPerformanceStep("Emit", _TypeScriptProject.elapsed("emit:start"));
2193
+ } else {
2194
+ performance2.mark("emit:start");
2195
+ const { diagnostics } = this.builderProgram.emit(void 0, this.fileManager.fileWriter, void 0, true);
2196
+ addPerformanceStep("Emit", _TypeScriptProject.elapsed("emit:start"));
2197
+ performance2.mark("diagnostics:start");
2198
+ allDiagnostics = [...this.builderProgram.getSemanticDiagnostics(), ...diagnostics];
2199
+ addPerformanceStep("Diagnostics", _TypeScriptProject.elapsed("diagnostics:start"));
2200
+ }
2182
2201
  if (allDiagnostics.length > 0) {
2183
2202
  _TypeScriptProject.handleTypeErrors("Type-checking failed", allDiagnostics, this.directory);
2184
2203
  }
2185
2204
  performance2.mark("finalize:start");
2186
- const result = this.fileManager.finalize();
2205
+ const emitted = this.fileManager.finalize();
2187
2206
  addPerformanceStep("Finalize", _TypeScriptProject.elapsed("finalize:start"));
2188
- return result || !this.configuration.compilerOptions.declaration;
2207
+ return emitted || !this.configuration.compilerOptions.declaration;
2189
2208
  }
2190
2209
  async transpile() {
2191
2210
  const plugins = [outputPlugin()];
package/dist/tsbuild.js CHANGED
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  BuildError,
4
4
  TypeScriptProject
5
- } from "./NLBQBJSZ.js";
5
+ } from "./HRIICYC4.js";
6
6
  import "./JKGYA2AW.js";
7
7
 
8
8
  // src/tsbuild.ts
@@ -30,7 +30,7 @@ if (help) {
30
30
  process.exit(0);
31
31
  }
32
32
  if (version) {
33
- console.log("1.7.2");
33
+ console.log("1.7.4");
34
34
  process.exit(0);
35
35
  }
36
36
  var typeScriptOptions = {
@@ -286,6 +286,7 @@ declare class TypeScriptProject implements Closable {
286
286
  clean(): Promise<void>;
287
287
  /**
288
288
  * Builds the project
289
+ * @returns A promise that resolves when the build is complete.
289
290
  */
290
291
  build(): Promise<void>;
291
292
  /**
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  TypeScriptProject
3
- } from "./NLBQBJSZ.js";
3
+ } from "./HRIICYC4.js";
4
4
  import "./JKGYA2AW.js";
5
5
  export {
6
6
  TypeScriptProject
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@d1g1tal/tsbuild",
3
3
  "author": "D1g1talEntr0py",
4
- "version": "1.7.2",
4
+ "version": "1.7.4",
5
5
  "license": "MIT",
6
6
  "description": "A fast, ESM-only TypeScript build tool combining the TypeScript API for type checking and declaration generation, esbuild for bundling, and SWC for decorator metadata.",
7
7
  "homepage": "https://github.com/D1g1talEntr0py/tsbuild#readme",
@@ -45,16 +45,16 @@
45
45
  },
46
46
  "dependencies": {
47
47
  "@d1g1tal/watchr": "^1.0.5",
48
- "esbuild": "^0.27.4",
48
+ "esbuild": "^0.28.0",
49
49
  "magic-string": "^0.30.21"
50
50
  },
51
51
  "devDependencies": {
52
52
  "@eslint/js": "^10.0.1",
53
- "@types/node": "^25.5.0",
53
+ "@types/node": "^25.5.2",
54
54
  "@typescript-eslint/eslint-plugin": "^8.58.0",
55
55
  "@typescript-eslint/parser": "^8.58.0",
56
56
  "@vitest/coverage-v8": "^4.1.2",
57
- "eslint": "^10.1.0",
57
+ "eslint": "^10.2.0",
58
58
  "eslint-plugin-jsdoc": "^62.9.0",
59
59
  "fs-monkey": "^1.1.0",
60
60
  "memfs": "^4.57.1",