diff --git a/AGENTS.md b/AGENTS.md index 12af1d7..a59897c 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -80,50 +80,51 @@ Verify a boundary against the imports a developer or agent would plausibly write ### What enforces what -| Rule | Enforced by | -| ------------------------------------------------------------------------------ | --------------------------------------------------- | -| Formatting | oxfmt | -| Lint findings are errors; no rule warns | oxlint preset | -| Comments are TSDoc, directives, or `SAFETY:` only | `antelopejs/no-comments` | -| Every test asserts | `antelopejs/require-assertion` | -| Tests read no files outside fixtures, helpers, locales | `antelopejs/no-fs-read-in-tests` | -| Tests import the code under test from local source, not their own package name | `antelopejs/no-self-import-in-tests` | -| No assertion that restates a constant | `antelopejs/no-constant-value-assertion` | -| No test whose only check is "is a function" | `antelopejs/no-typeof-function-only-test` | -| String-keyed object tables are read through own keys only | `antelopejs/no-inherited-key-lookup` | -| A type guard checks each member it narrows to; keys with `Object.hasOwn` | `antelopejs/no-presence-only-type-guard` | -| A type guard checks the nested elements and values it claims | review; no tool | -| A startup read does not decide an insert another replica can race | `antelopejs/no-read-then-insert` | -| `Object.assign` writes no `unknown`, `any` or mistyped value over a field | `antelopejs/no-unsafe-object-assign` | -| Every file type-aware lint reads is listed by a tsconfig | `antelopejs/require-tsconfig-include` | -| Params ≤ 5, function ≤ 120 lines, file ≤ 500 lines, depth ≤ 4, complexity ≤ 20 | `eslint/max-*`, `eslint/complexity` | -| Cleanup preserves declarations, runtime exports and DMS auto-imports | `antelopejs-api-diff ` | -| Comment-only changes preserve JavaScript emit | `antelopejs-comment-proof ` | -| PR-body proof tables are copied unedited from the current head | `antelopejs-body-check ` | -| PR-body findings-left lines are live diagnostics at HEAD | `antelopejs-body-check ` | -| Receiver, positional and unpublished-module behaviour | `antelopejs-api-diff --probe ` | -| Directive and `SAFETY:` reasons are true of the code | review; no tool | -| Evasion-only and patched-internal findings go under Attention | review; no tool | -| No-upward rules reject same-tier peers | review and import probes | -| No `@ts-ignore` | `typescript/ban-ts-comment` | -| No once-used type parameter standing in for `unknown` | `typescript/no-unnecessary-type-parameters` | -| No `any` passed, assigned or returned where a type is declared | `typescript/no-unsafe-{argument,assignment,return}` | -| Files ≤ 20,000 bytes, tests and agent files included | `antelopejs-check-size` (pre-commit) | -| Suppressions stay within `guardrails.suppressions.json` | `antelopejs-suppressions` (pre-commit, checks) | -| No lint config switches off a rule to stay under the budget | `antelopejs-suppressions` (pre-commit, checks) | -| No added directive disables the `SAFETY:`, comment or test rules | `antelopejs-suppressions` (pre-commit, checks) | -| An added suppression gives a specific reason | `antelopejs-suppressions` (pre-commit, checks) | -| A directive in a file a change touches suppresses something and gives a reason | `antelopejs-suppressions` (pre-commit, checks) | -| A block disable is closed in its file | `antelopejs-suppressions` (pre-commit, checks) | -| Types check | `tsc` (pre-push) | -| No dead files, exports, or dependencies | knip | -| Managed files match the pack | `antelopejs-sync --check` | -| A CI gate reads `needs.` only of jobs in its `needs` | `antelopejs-sync --check` | -| Entry-only rules exempt no tracked outsider | `antelopejs-sync --check` | -| A DMS layer's `build/backend-boundary.ts` is the pack's plugin | `antelopejs-sync --check` | -| No `skipLibCheck` in the root tsconfig or one `typecheck` or `build` uses | `antelopejs-sync --check` | -| `build` skips the lib check only over what `typecheck` checks | `antelopejs-sync --check` | -| `release` runs `typecheck` | `antelopejs-sync --check` | -| A test names the wrong implementation it catches | review; no tool | +| Rule | Enforced by | +| ---------------------------------------------------------------------------------- | --------------------------------------------------- | +| Formatting | oxfmt | +| Lint findings are errors; no rule warns | oxlint preset | +| Comments are TSDoc, directives, or `SAFETY:` only | `antelopejs/no-comments` | +| Every test asserts | `antelopejs/require-assertion` | +| Tests read no files outside fixtures, helpers, locales | `antelopejs/no-fs-read-in-tests` | +| Tests import the code under test from local source, not their own package name | `antelopejs/no-self-import-in-tests` | +| No assertion that restates a constant | `antelopejs/no-constant-value-assertion` | +| No test whose only check is "is a function" | `antelopejs/no-typeof-function-only-test` | +| String-keyed object tables are read through own keys only | `antelopejs/no-inherited-key-lookup` | +| A type guard checks each member it narrows to; keys with `Object.hasOwn` | `antelopejs/no-presence-only-type-guard` | +| A type guard checks the nested elements and values it claims | review; no tool | +| A startup read does not decide an insert another replica can race | `antelopejs/no-read-then-insert` | +| An async function or promise callback returns no unrun database query | `antelopejs/no-unrun-query` | +| `Object.assign` writes no `unknown`, `any` or mistyped value over a field | `antelopejs/no-unsafe-object-assign` | +| Every file type-aware lint reads is listed by a tsconfig that resolves its imports | `antelopejs/require-tsconfig-include` | +| Params ≤ 5, function ≤ 120 lines, file ≤ 500 lines, depth ≤ 4, complexity ≤ 20 | `eslint/max-*`, `eslint/complexity` | +| Cleanup preserves declarations, runtime exports and DMS auto-imports | `antelopejs-api-diff ` | +| Comment-only changes preserve JavaScript emit | `antelopejs-comment-proof ` | +| PR-body proof tables are copied unedited from the current head | `antelopejs-body-check ` | +| PR-body findings-left lines are live diagnostics at HEAD | `antelopejs-body-check ` | +| Receiver, positional and unpublished-module behaviour | `antelopejs-api-diff --probe ` | +| Directive and `SAFETY:` reasons are true of the code | review; no tool | +| Evasion-only and patched-internal findings go under Attention | review; no tool | +| No-upward rules reject same-tier peers | review and import probes | +| No `@ts-ignore` | `typescript/ban-ts-comment` | +| No once-used type parameter standing in for `unknown` | `typescript/no-unnecessary-type-parameters` | +| No `any` passed, assigned or returned where a type is declared | `typescript/no-unsafe-{argument,assignment,return}` | +| Files ≤ 20,000 bytes, tests and agent files included | `antelopejs-check-size` (pre-commit) | +| Suppressions stay within `guardrails.suppressions.json` | `antelopejs-suppressions` (pre-commit, checks) | +| No lint config switches off a rule to stay under the budget | `antelopejs-suppressions` (pre-commit, checks) | +| No added directive disables the `SAFETY:`, comment or test rules | `antelopejs-suppressions` (pre-commit, checks) | +| An added suppression gives a specific reason | `antelopejs-suppressions` (pre-commit, checks) | +| A directive in a file a change touches suppresses something and gives a reason | `antelopejs-suppressions` (pre-commit, checks) | +| A block disable is closed in its file | `antelopejs-suppressions` (pre-commit, checks) | +| Types check | `tsc` (pre-push) | +| No dead files, exports, or dependencies | knip | +| Managed files match the pack | `antelopejs-sync --check` | +| A CI gate reads `needs.` only of jobs in its `needs` | `antelopejs-sync --check` | +| Entry-only rules exempt no tracked outsider | `antelopejs-sync --check` | +| A DMS layer's `build/backend-boundary.ts` is the pack's plugin | `antelopejs-sync --check` | +| No `skipLibCheck` in the root tsconfig or one `typecheck` or `build` uses | `antelopejs-sync --check` | +| `build` skips the lib check only over what `typecheck` checks | `antelopejs-sync --check` | +| `release` runs `typecheck` | `antelopejs-sync --check` | +| A test names the wrong implementation it catches | review; no tool | diff --git a/README.md b/README.md index e647a6e..f292977 100644 --- a/README.md +++ b/README.md @@ -128,13 +128,13 @@ The package declares these `@antelopejs/*` peer dependencies. -| Package | Supported | Tested with | -| ------------------------------------------- | ----------------- | ----------- | -| `@antelopejs/interface-api` | `>=0.3.0 <1.0.0` | `0.2.0` | -| `@antelopejs/interface-api-util` | `>=0.1.3 <1.0.0` | `0.3.0` | -| `@antelopejs/interface-core` | `>=0.2.4 <1.0.0` | `0.5.1` | -| `@antelopejs/interface-database` | `>=0.1.10 <1.0.0` | `0.4.0` | -| `@antelopejs/interface-database-decorators` | `>=0.5.0 <1.0.0` | `0.5.2` | +| Package | Supported | Tested with | +| ------------------------------------------- | ---------------- | ----------- | +| `@antelopejs/interface-api` | `>=0.3.0 <0.4.0` | `0.3.2` | +| `@antelopejs/interface-api-util` | `>=0.3.0 <0.4.0` | `0.3.0` | +| `@antelopejs/interface-core` | `>=0.5.1 <0.6.0` | `0.5.1` | +| `@antelopejs/interface-database` | `>=0.4.0 <0.5.0` | `0.4.0` | +| `@antelopejs/interface-database-decorators` | `>=0.5.0 <0.6.0` | `0.5.2` | diff --git a/package.json b/package.json index b930325..16434e7 100644 --- a/package.json +++ b/package.json @@ -71,14 +71,14 @@ "suppressions:update": "antelopejs-suppressions --update" }, "devDependencies": { - "@antelopejs/api": "^1.7.0", - "@antelopejs/core": "~1.22.0", - "@antelopejs/interface-api": ">=0.2.0 <1.0.0", + "@antelopejs/api": "~1.7.0", + "@antelopejs/core": "~1.23.0", + "@antelopejs/interface-api": ">=0.3.0 <0.4.0", "@antelopejs/interface-api-util": "^0.3.0", "@antelopejs/interface-core": "^0.5.1", "@antelopejs/interface-database": "^0.4.0", "@antelopejs/interface-database-decorators": "^0.5.2", - "@antelopejs/tooling-configs": "^0.5.8", + "@antelopejs/tooling-configs": ">=0.6.0 <0.7.0", "@types/chai": "^4.3.20", "@types/mocha": "^10.0.10", "@types/node": "^22.19.15", @@ -98,11 +98,11 @@ "zod": "4.5.4" }, "peerDependencies": { - "@antelopejs/interface-api": ">=0.3.0 <1.0.0", - "@antelopejs/interface-api-util": ">=0.1.3 <1.0.0", - "@antelopejs/interface-core": ">=0.2.4 <1.0.0", - "@antelopejs/interface-database": ">=0.1.10 <1.0.0", - "@antelopejs/interface-database-decorators": ">=0.5.0 <1.0.0" + "@antelopejs/interface-api": ">=0.3.0 <0.4.0", + "@antelopejs/interface-api-util": ">=0.3.0 <0.4.0", + "@antelopejs/interface-core": ">=0.5.1 <0.6.0", + "@antelopejs/interface-database": ">=0.4.0 <0.5.0", + "@antelopejs/interface-database-decorators": ">=0.5.0 <0.6.0" }, "packageManager": "pnpm@10.33.0", "antelopeJs": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8e8ea68..57190d1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,17 +9,17 @@ importers: .: devDependencies: '@antelopejs/api': - specifier: ^1.7.0 - version: 1.7.0(@antelopejs/core@1.22.0) + specifier: ~1.7.0 + version: 1.7.0(@antelopejs/core@1.23.0) '@antelopejs/core': - specifier: ~1.22.0 - version: 1.22.0 + specifier: ~1.23.0 + version: 1.23.0 '@antelopejs/interface-api': - specifier: '>=0.2.0 <1.0.0' - version: 0.2.0(@antelopejs/interface-core@0.5.1) + specifier: '>=0.3.0 <0.4.0' + version: 0.3.2(@antelopejs/interface-core@0.5.1) '@antelopejs/interface-api-util': specifier: ^0.3.0 - version: 0.3.0(@antelopejs/interface-api@0.2.0(@antelopejs/interface-core@0.5.1))(@antelopejs/interface-core@0.5.1) + version: 0.3.0(@antelopejs/interface-api@0.3.2(@antelopejs/interface-core@0.5.1))(@antelopejs/interface-core@0.5.1) '@antelopejs/interface-core': specifier: ^0.5.1 version: 0.5.1 @@ -28,10 +28,10 @@ importers: version: 0.4.0(@antelopejs/interface-core@0.5.1) '@antelopejs/interface-database-decorators': specifier: ^0.5.2 - version: 0.5.2(@antelopejs/interface-api@0.2.0(@antelopejs/interface-core@0.5.1))(@antelopejs/interface-core@0.5.1)(@antelopejs/interface-database@0.4.0(@antelopejs/interface-core@0.5.1)) + version: 0.5.2(@antelopejs/interface-api@0.3.2(@antelopejs/interface-core@0.5.1))(@antelopejs/interface-core@0.5.1)(@antelopejs/interface-database@0.4.0(@antelopejs/interface-core@0.5.1)) '@antelopejs/tooling-configs': - specifier: ^0.5.8 - version: 0.5.8(eslint-plugin-perfectionist@5.11.0(eslint@10.10.0(jiti@2.7.0))(typescript@5.9.3))(knip@6.34.0)(oxfmt@0.66.0)(oxlint@1.81.0(oxlint-tsgolint@7.0.2001)) + specifier: '>=0.6.0 <0.7.0' + version: 0.6.0(eslint-plugin-perfectionist@5.11.0(eslint@10.10.0(jiti@2.7.0))(typescript@5.9.3))(knip@6.34.0)(oxfmt@0.66.0)(oxlint@1.81.0(oxlint-tsgolint@7.0.2001)) '@types/chai': specifier: ^4.3.20 version: 4.3.20 @@ -73,7 +73,7 @@ importers: version: 19.2.4(@types/node@22.19.15) release-it-changelogen: specifier: ^0.1.0 - version: 0.1.0(changelogen@0.5.7)(release-it@19.2.4(@types/node@22.19.15))(semver@7.7.4) + version: 0.1.0(changelogen@0.5.7)(release-it@19.2.4(@types/node@22.19.15))(semver@7.8.6) rimraf: specifier: ^6.1.3 version: 6.1.3 @@ -94,8 +94,8 @@ packages: '@antelopejs/core': optional: true - '@antelopejs/core@1.22.0': - resolution: {integrity: sha512-Fsq2dGO6xZpypD9nrXxhy8WOMnZB8a9Oc+hysH+chG101GFnxUb49aFjc5LhkKOhcW/xQTOa2JBQMIOVLCB3IQ==} + '@antelopejs/core@1.23.0': + resolution: {integrity: sha512-RZvKjGqY8UntJxBNXtoYSSQwQxvM+WUgWfwB/YbQVk7K7GFugDCj3zyoLWmWyQDg48lwNbfrLDAMGvQ4OFy1Jg==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true @@ -105,8 +105,8 @@ packages: '@antelopejs/interface-api': '>=0.3.0 <1.0.0' '@antelopejs/interface-core': '>=0.2.4 <1.0.0' - '@antelopejs/interface-api@0.2.0': - resolution: {integrity: sha512-N7HGrJjJLIR/EN2QSYEAvMdYa9A13XWBoCxWJhy+BlilcIC+3fZySAE9sfQVUwb26Dg/6St+BY2RV0OufgvE1A==} + '@antelopejs/interface-api@0.3.2': + resolution: {integrity: sha512-UTow4Rv07zV7gVGEpzYn1OgtIqEFezxU6G2XFl1kDnC2wn+FahPr+LDtdl9QgosyJPKdO1fOMGu8SSn35S/B0A==} peerDependencies: '@antelopejs/interface-core': '>=0.4.0 <1.0.0' @@ -125,8 +125,8 @@ packages: peerDependencies: '@antelopejs/interface-core': '>=0.2.4 <1.0.0' - '@antelopejs/tooling-configs@0.5.8': - resolution: {integrity: sha512-F4q6E2HWXEF0f6MHHOCQGheRzaNkX4e8JeYI92x6KajWJIkk8HroThU8jmIaP7Q23w6fIv8fveHtyc7pJ2hQHg==} + '@antelopejs/tooling-configs@0.6.0': + resolution: {integrity: sha512-DtGbS8grU8KKoB/HcvxKfwQy2AqQh7OUF2it85zf4czzZPodgdsw1/Ajj4onJvOYygqNgcd7D7EdDFtmY7FuDA==} engines: {node: '>=22.18.0'} hasBin: true peerDependencies: @@ -1038,6 +1038,10 @@ packages: resolution: {integrity: sha512-+rmdgPA+EXkNgKYvHvFfhrs35utXbwaC5PGpDquSXcoXQDKUA5UjV0LmTucG/4JXkM31BTu4TilHtrN8IVBe8w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript/typescript6@6.0.2': + resolution: {integrity: sha512-mbCddXd+jm7hfx7w2YU64/Av4/NqqeG3GoRZgxPcgoTxYjhrcfJRw9ULch71SS4G+Q3bOXFhRvPqjguN0Hyp5w==} + hasBin: true + acorn-jsx@5.3.2: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: @@ -2443,6 +2447,11 @@ packages: engines: {node: '>=10'} hasBin: true + semver@7.8.6: + resolution: {integrity: sha512-9lpSSU4Mly3mrtruwLs1eLK6+gzbzqeBFwRNjIjE+9LuDpWdYctrQlQ3ej1Ilgi7gknpsTRnPoLP8DpCHqHIJw==} + engines: {node: '>=10'} + hasBin: true + serialize-javascript@7.1.4: resolution: {integrity: sha512-FqlEuoTq/zRmA4Lg6aOqyH3lCHbUtCB0bmHCeFniX2GBdDqMJM3FwdvEhlE5Pim1dlt2FfBdVPmUNNiGhhKqpw==} engines: {node: '>=20.0.0'} @@ -2626,6 +2635,11 @@ packages: engines: {node: '>=14.17'} hasBin: true + typescript@6.0.3: + resolution: {integrity: sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==} + engines: {node: '>=14.17'} + hasBin: true + ufo@1.6.4: resolution: {integrity: sha512-JFNbkD1Svwe0KvGi8GOeLcP4kAWQ609twvCdcHxq1oSL8svv39ZuSvajcD8B+5D0eL4+s1Is2D/O6KN3qcTeRA==} @@ -2766,20 +2780,20 @@ packages: snapshots: - '@antelopejs/api@1.7.0(@antelopejs/core@1.22.0)': + '@antelopejs/api@1.7.0(@antelopejs/core@1.23.0)': dependencies: - '@antelopejs/interface-api': 0.2.0(@antelopejs/interface-core@0.5.1) - '@antelopejs/interface-api-util': 0.3.0(@antelopejs/interface-api@0.2.0(@antelopejs/interface-core@0.5.1))(@antelopejs/interface-core@0.5.1) + '@antelopejs/interface-api': 0.3.2(@antelopejs/interface-core@0.5.1) + '@antelopejs/interface-api-util': 0.3.0(@antelopejs/interface-api@0.3.2(@antelopejs/interface-core@0.5.1))(@antelopejs/interface-core@0.5.1) '@antelopejs/interface-core': 0.5.1 reflect-metadata: 0.2.2 ws: 8.22.1 optionalDependencies: - '@antelopejs/core': 1.22.0 + '@antelopejs/core': 1.23.0 transitivePeerDependencies: - bufferutil - utf-8-validate - '@antelopejs/core@1.22.0': + '@antelopejs/core@1.23.0': dependencies: '@antelopejs/interface-core': 0.5.1 '@clack/prompts': 1.8.1 @@ -2791,15 +2805,15 @@ snapshots: picocolors: 1.1.1 proper-lockfile: 4.1.2 reflect-metadata: 0.2.2 - semver: 7.7.4 + semver: 7.8.6 typescript: 5.9.3 - '@antelopejs/interface-api-util@0.3.0(@antelopejs/interface-api@0.2.0(@antelopejs/interface-core@0.5.1))(@antelopejs/interface-core@0.5.1)': + '@antelopejs/interface-api-util@0.3.0(@antelopejs/interface-api@0.3.2(@antelopejs/interface-core@0.5.1))(@antelopejs/interface-core@0.5.1)': dependencies: - '@antelopejs/interface-api': 0.2.0(@antelopejs/interface-core@0.5.1) + '@antelopejs/interface-api': 0.3.2(@antelopejs/interface-core@0.5.1) '@antelopejs/interface-core': 0.5.1 - '@antelopejs/interface-api@0.2.0(@antelopejs/interface-core@0.5.1)': + '@antelopejs/interface-api@0.3.2(@antelopejs/interface-core@0.5.1)': dependencies: '@antelopejs/interface-core': 0.5.1 @@ -2807,9 +2821,9 @@ snapshots: dependencies: reflect-metadata: 0.2.2 - '@antelopejs/interface-database-decorators@0.5.2(@antelopejs/interface-api@0.2.0(@antelopejs/interface-core@0.5.1))(@antelopejs/interface-core@0.5.1)(@antelopejs/interface-database@0.4.0(@antelopejs/interface-core@0.5.1))': + '@antelopejs/interface-database-decorators@0.5.2(@antelopejs/interface-api@0.3.2(@antelopejs/interface-core@0.5.1))(@antelopejs/interface-core@0.5.1)(@antelopejs/interface-database@0.4.0(@antelopejs/interface-core@0.5.1))': dependencies: - '@antelopejs/interface-api': 0.2.0(@antelopejs/interface-core@0.5.1) + '@antelopejs/interface-api': 0.3.2(@antelopejs/interface-core@0.5.1) '@antelopejs/interface-core': 0.5.1 '@antelopejs/interface-database': 0.4.0(@antelopejs/interface-core@0.5.1) randomstring: 1.3.1 @@ -2819,12 +2833,13 @@ snapshots: dependencies: '@antelopejs/interface-core': 0.5.1 - '@antelopejs/tooling-configs@0.5.8(eslint-plugin-perfectionist@5.11.0(eslint@10.10.0(jiti@2.7.0))(typescript@5.9.3))(knip@6.34.0)(oxfmt@0.66.0)(oxlint@1.81.0(oxlint-tsgolint@7.0.2001))': + '@antelopejs/tooling-configs@0.6.0(eslint-plugin-perfectionist@5.11.0(eslint@10.10.0(jiti@2.7.0))(typescript@5.9.3))(knip@6.34.0)(oxfmt@0.66.0)(oxlint@1.81.0(oxlint-tsgolint@7.0.2001))': dependencies: '@oxlint/plugins': 1.81.0 + '@typescript/typescript6': 6.0.2 dts-bundle-generator: 9.5.1 minimatch: 10.2.6 - typescript: 5.9.3 + semver: 7.8.6 yaml: 2.9.1 optionalDependencies: eslint-plugin-perfectionist: 5.11.0(eslint@10.10.0(jiti@2.7.0))(typescript@5.9.3) @@ -3487,6 +3502,10 @@ snapshots: '@typescript-eslint/types': 8.69.0 eslint-visitor-keys: 5.0.1 + '@typescript/typescript6@6.0.2': + dependencies: + '@typescript/old': typescript@6.0.3 + acorn-jsx@5.3.2(acorn@8.19.0): dependencies: acorn: 8.19.0 @@ -3708,7 +3727,7 @@ snapshots: pathe: 1.1.2 pkg-types: 1.3.1 scule: 1.3.0 - semver: 7.7.4 + semver: 7.8.6 std-env: 3.10.0 yaml: 2.9.1 transitivePeerDependencies: @@ -4938,7 +4957,7 @@ snapshots: reflect-metadata@0.2.2: {} - release-it-changelogen@0.1.0(changelogen@0.5.7)(release-it@19.2.4(@types/node@22.19.15))(semver@7.7.4): + release-it-changelogen@0.1.0(changelogen@0.5.7)(release-it@19.2.4(@types/node@22.19.15))(semver@7.8.6): dependencies: chalk: 5.6.2 changelogen: 0.5.7 @@ -4947,7 +4966,7 @@ snapshots: execa: 8.0.1 pathe: 1.1.2 release-it: 19.2.4(@types/node@22.19.15) - semver: 7.7.4 + semver: 7.8.6 yargs-parser: 21.1.1 release-it@19.2.4(@types/node@22.19.15): @@ -5020,6 +5039,8 @@ snapshots: semver@7.7.4: {} + semver@7.8.6: {} + serialize-javascript@7.1.4: {} shebang-command@2.0.0: @@ -5215,6 +5236,8 @@ snapshots: typescript@5.9.3: {} + typescript@6.0.3: {} + ufo@1.6.4: {} unbash@4.0.11: {} diff --git a/src/tests/components/localized_sort.test.ts b/src/tests/components/localized_sort.test.ts index 6dbe738..1f90c51 100644 --- a/src/tests/components/localized_sort.test.ts +++ b/src/tests/components/localized_sort.test.ts @@ -80,7 +80,7 @@ async function _createFruits(testName: string) { @Parameter("locale", "query") @ModifierKey(LocalizationModifier) - declare locale: string; + declare locale: string | true | undefined; declare _id: string; diff --git a/src/tests/components/modifier_key.test.ts b/src/tests/components/modifier_key.test.ts index ec95378..20d7888 100644 --- a/src/tests/components/modifier_key.test.ts +++ b/src/tests/components/modifier_key.test.ts @@ -111,7 +111,7 @@ async function _createDataController(testName: string) { @Parameter("locale", "query") @ModifierKey(LocalizationModifier) - declare locale: string; + declare locale: string | true | undefined; @Listable() @Access(AccessMode.ReadOnly) diff --git a/src/tests/components/partial_edit.test.ts b/src/tests/components/partial_edit.test.ts index eed8fe7..639ffc0 100644 --- a/src/tests/components/partial_edit.test.ts +++ b/src/tests/components/partial_edit.test.ts @@ -137,7 +137,7 @@ async function _createDataController( @Parameter("locale", "query") @ModifierKey(LocalizationModifier) - declare locale: string; + declare locale: string | true | undefined; declare _id: string;