@absolutejs/absolute 0.20.0-beta.171 → 0.20.0-beta.172

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
@@ -6,6 +6,18 @@ This file is generated by `absolute-changelog` from the entries in
6
6
  `changelog/`. Edit an entry, not this file — and add new ones under
7
7
  `changelog/unreleased/`.
8
8
 
9
+ ## 0.20.0-beta.172 — 2026-11-13
10
+
11
+ ### Changed
12
+
13
+ - **absolute typecheck checks Vue projects with vue-check**
14
+ For a project with Vue, `absolute typecheck` now runs vue-check (`@absolutejs/vue-check`, a dependency of the framework) instead of vue-tsc whenever it runs bun check: the project’s own Vue codegen with Bun’s native checker, reporting the errors vue-tsc reports in a fraction of the time and memory. Its generated TypeScript stays in `.absolutejs/vue-check`. vue-tsc remains the fallback where tsc does: Bun older than 1.4.4, or `ABSOLUTE_TYPECHECK_CHECKER=tsc`.
15
+
16
+ ### Fixed
17
+
18
+ - **absolute typecheck type-checks even when the project has a check script**
19
+ When a project’s package.json has a `check` script, `bun check` runs that script instead of type-checking, so `absolute typecheck` could report a project as checked without checking it. It now always passes `--no-script`, which Bun added in 1.4.4, and so uses bun check from Bun 1.4.4 on (it was 1.4.3). On Bun 1.4.3 it type-checks with tsc, as on older Bun.
20
+
9
21
  ## 0.20.0-beta.171 — 2026-11-13
10
22
 
11
23
  ### Security
package/changelog.json CHANGED
@@ -2,6 +2,22 @@
2
2
  "contract": 1,
3
3
  "name": "@absolutejs/absolute",
4
4
  "releases": [
5
+ {
6
+ "changes": [
7
+ {
8
+ "detail": "When a project’s package.json has a `check` script, `bun check` runs that script instead of type-checking, so `absolute typecheck` could report a project as checked without checking it. It now always passes `--no-script`, which Bun added in 1.4.4, and so uses bun check from Bun 1.4.4 on (it was 1.4.3). On Bun 1.4.3 it type-checks with tsc, as on older Bun.",
9
+ "kind": "fixed",
10
+ "summary": "absolute typecheck type-checks even when the project has a check script"
11
+ },
12
+ {
13
+ "detail": "For a project with Vue, `absolute typecheck` now runs vue-check (`@absolutejs/vue-check`, a dependency of the framework) instead of vue-tsc whenever it runs bun check: the project’s own Vue codegen with Bun’s native checker, reporting the errors vue-tsc reports in a fraction of the time and memory. Its generated TypeScript stays in `.absolutejs/vue-check`. vue-tsc remains the fallback where tsc does: Bun older than 1.4.4, or `ABSOLUTE_TYPECHECK_CHECKER=tsc`.",
14
+ "kind": "changed",
15
+ "summary": "absolute typecheck checks Vue projects with vue-check"
16
+ }
17
+ ],
18
+ "date": "2026-11-13",
19
+ "version": "0.20.0-beta.172"
20
+ },
5
21
  {
6
22
  "changes": [
7
23
  {
@@ -1,9 +1,9 @@
1
1
  // @bun
2
- // .angular-partial-tmp-SuUNAo/src/utils/runtimeMode.ts
2
+ // .angular-partial-tmp-a5Gf1s/src/utils/runtimeMode.ts
3
3
  var ENV_VAR = "NODE_ENV";
4
4
  var isProductionRuntime = () => process.env[ENV_VAR] === "production";
5
5
 
6
- // .angular-partial-tmp-SuUNAo/src/core/streamingSlotRegistrar.ts
6
+ // .angular-partial-tmp-a5Gf1s/src/core/streamingSlotRegistrar.ts
7
7
  var STREAMING_SLOT_REGISTRAR_KEY = Symbol.for("absolutejs.streamingSlotRegistrar");
8
8
  var STREAMING_SLOT_WARNING_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotWarningController");
9
9
  var STREAMING_SLOT_COLLECTION_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotCollectionController");
@@ -1,9 +1,9 @@
1
1
  // @bun
2
- // .angular-partial-tmp-SuUNAo/src/utils/runtimeMode.ts
2
+ // .angular-partial-tmp-a5Gf1s/src/utils/runtimeMode.ts
3
3
  var ENV_VAR = "NODE_ENV";
4
4
  var isProductionRuntime = () => process.env[ENV_VAR] === "production";
5
5
 
6
- // .angular-partial-tmp-SuUNAo/src/core/streamingSlotRegistrar.ts
6
+ // .angular-partial-tmp-a5Gf1s/src/core/streamingSlotRegistrar.ts
7
7
  var STREAMING_SLOT_REGISTRAR_KEY = Symbol.for("absolutejs.streamingSlotRegistrar");
8
8
  var STREAMING_SLOT_WARNING_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotWarningController");
9
9
  var STREAMING_SLOT_COLLECTION_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotCollectionController");
@@ -50,7 +50,7 @@ var warnMissingStreamingSlotCollector = (primitiveName) => {
50
50
  getWarningController()?.maybeWarn(primitiveName);
51
51
  };
52
52
 
53
- // .angular-partial-tmp-SuUNAo/src/core/streamingSlotRegistry.ts
53
+ // .angular-partial-tmp-a5Gf1s/src/core/streamingSlotRegistry.ts
54
54
  var STREAMING_SLOT_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotAsyncLocalStorage");
55
55
  var isObjectRecord2 = (value) => Boolean(value) && typeof value === "object";
56
56
  var isAsyncLocalStorage = (value) => isObjectRecord2(value) && ("getStore" in value) && typeof value.getStore === "function" && ("run" in value) && typeof value.run === "function";
package/dist/cli/index.js CHANGED
@@ -221,7 +221,7 @@ if (command === "dev") {
221
221
  } else if (command === "typecheck") {
222
222
  sendTelemetryEvent("cli:command", { command });
223
223
  const configPath = parseNamedArg("--config");
224
- const { typecheck } = await import("./typecheck-209bemxm.js");
224
+ const { typecheck } = await import("./typecheck-fag7djt5.js");
225
225
  await typecheck(configPath);
226
226
  } else if (command === "migrate") {
227
227
  sendTelemetryEvent("cli:command", { command });
@@ -22,7 +22,7 @@ import"./index-3ewt17wm.js";
22
22
  import"./index-pr1skxen.js";
23
23
 
24
24
  // src/cli/scripts/typecheck.ts
25
- import { join as join2, parse as parse3, relative as relative2, resolve as resolve3 } from "path";
25
+ import { dirname as dirname3, join as join2, parse as parse3, relative as relative2, resolve as resolve3 } from "path";
26
26
  import { existsSync as existsSync3, readFileSync as readFileSync3 } from "fs";
27
27
  import { mkdir as mkdir2, rm as rm2, writeFile as writeFile2 } from "fs/promises";
28
28
 
@@ -1036,12 +1036,13 @@ var summarizeImportAdvice = (entries, label) => {
1036
1036
  import { createHash } from "crypto";
1037
1037
  import { existsSync, readFileSync, statSync } from "fs";
1038
1038
  import { dirname, resolve } from "path";
1039
- var BUN_CHECK_MIN_VERSION = "1.4.3";
1039
+ var BUN_CHECK_MIN_VERSION = "1.4.4";
1040
1040
  var CHECKER_ENV = "ABSOLUTE_TYPECHECK_CHECKER";
1041
+ var NO_SCRIPT = "--no-script";
1041
1042
  var THREADS_ENV = "ABSOLUTE_TYPECHECK_THREADS";
1042
1043
  var bunCheckCommand = (configPath, env = process.env, bun = process.execPath, terminal = process.stdout.isTTY === true) => {
1043
1044
  const threads = Number(env[THREADS_ENV]);
1044
- const command = [bun, "check", "-p", configPath, "--all"];
1045
+ const command = [bun, "check", "-p", configPath, "--all", NO_SCRIPT];
1045
1046
  if (terminal)
1046
1047
  command.push("--pretty=true");
1047
1048
  if (Number.isSafeInteger(threads) && threads > 0)
@@ -1440,6 +1441,17 @@ var buildVueTscCheck = async (cacheDir) => {
1440
1441
  return cached;
1441
1442
  return run("vue-tsc", base);
1442
1443
  };
1444
+ var buildVueCheck = async (cacheDir) => {
1445
+ const configPath = await writeTypecheckConfig(cacheDir, "bun");
1446
+ const vueCheck = join2(dirname3(Bun.resolveSync("@absolutejs/vue-check/package.json", import.meta.dir)), "src/cli.ts");
1447
+ return run("vue-check", [
1448
+ process.execPath,
1449
+ vueCheck,
1450
+ "-p",
1451
+ configPath,
1452
+ `--out-dir=${resolve3(cacheDir, "vue-check")}`
1453
+ ]);
1454
+ };
1443
1455
  var buildAngularCheck = async (cacheDir, angularDir) => {
1444
1456
  const ngcBin = findBin("ngc");
1445
1457
  if (!ngcBin) {
@@ -1505,7 +1517,8 @@ var buildBunCheck = async (cacheDir) => {
1505
1517
  "check",
1506
1518
  "-p",
1507
1519
  configPath,
1508
- "--listFilesOnly"
1520
+ "--listFilesOnly",
1521
+ NO_SCRIPT
1509
1522
  ]);
1510
1523
  const fingerprint = listing.exitCode === 0 ? checkFingerprint(listing.output, configPath) : null;
1511
1524
  const lastPass = existsSync3(passFile) ? readFileSync3(passFile, "utf-8").trim() : null;
@@ -1607,8 +1620,10 @@ var typecheck = async (configPath) => {
1607
1620
  for (const config of targets)
1608
1621
  ensureFileRouteModule(config);
1609
1622
  const checks = [];
1610
- const plainCheck = bunCheckSupported() ? buildBunCheck : buildTscCheck;
1611
- checks.push(hasVue ? buildVueTscCheck(cacheDir) : plainCheck(cacheDir));
1623
+ const useBunCheck = bunCheckSupported();
1624
+ const plainCheck = useBunCheck ? buildBunCheck : buildTscCheck;
1625
+ const vueCheck = useBunCheck ? buildVueCheck : buildVueTscCheck;
1626
+ checks.push(hasVue ? vueCheck(cacheDir) : plainCheck(cacheDir));
1612
1627
  for (const svelteDir of hasSvelte ? svelteDirs : []) {
1613
1628
  checks.push(buildSvelteCheck(cacheDir, svelteDir));
1614
1629
  }
@@ -1,6 +1,8 @@
1
- export declare const BUN_CHECK_MIN_VERSION = "1.4.3";
1
+ export declare const BUN_CHECK_MIN_VERSION = "1.4.4";
2
2
  /** Set to `tsc` to keep the TypeScript compiler as the checker. */
3
3
  export declare const CHECKER_ENV = "ABSOLUTE_TYPECHECK_CHECKER";
4
+ /** Type-check, never a project's own `check` script in its place. */
5
+ export declare const NO_SCRIPT = "--no-script";
4
6
  /** Caps the threads `bun check` starts: one per core by default, which a
5
7
  * memory-capped container (Studio) cannot always afford. */
6
8
  export declare const THREADS_ENV = "ABSOLUTE_TYPECHECK_THREADS";
package/package.json CHANGED
@@ -15,6 +15,7 @@
15
15
  "@absolutejs/devices-capacitor": "0.8.1",
16
16
  "@absolutejs/http": "0.0.1",
17
17
  "@absolutejs/pwa": ">=0.16.3 <0.18.0",
18
+ "@absolutejs/vue-check": ">=0.1.1 <0.2.0",
18
19
  "@capacitor/browser": "8.0.4",
19
20
  "@capacitor/filesystem": "8.1.3",
20
21
  "@capacitor/keyboard": "8.0.5",
@@ -581,7 +582,7 @@
581
582
  ]
582
583
  }
583
584
  },
584
- "version": "0.20.0-beta.171",
585
+ "version": "0.20.0-beta.172",
585
586
  "workspaces": [
586
587
  "tests/fixtures/*",
587
588
  "tests/fixtures/_packages/*"