@typed-sql/config 1.0.0-beta.0 → 1.0.0-beta.2

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,5 +1,29 @@
1
1
  # @typed-sql/config
2
2
 
3
+ ## 1.0.0-beta.2
4
+
5
+ ### Patch Changes
6
+
7
+ - 1563a7a: Declare and enforce the 1.0 package stability boundary. Core SQL, compiler, schema, config, AST,
8
+ PostgreSQL, MySQL, and CLI packages form the stable train; the TypeScript preview bridge and
9
+ language server remain explicitly experimental. Freeze public entrypoints and query type contracts,
10
+ and remove internal compiler/type helpers from stable package-root exports before 1.0.
11
+ - 9dd6bc4: Finalize dialect contract version 3 with explicit identifier quoting and grammar-owned capability
12
+ declarations. Accept third-party snapshot dialects, validate grammar versions, and document the
13
+ public grammar-authoring and conformance workflow.
14
+ - Updated dependencies [1563a7a]
15
+ - Updated dependencies [9dd6bc4]
16
+ - Updated dependencies [3e2c75c]
17
+ - @typed-sql/core@1.0.0-beta.2
18
+
19
+ ## 1.0.0-beta.1
20
+
21
+ ### Patch Changes
22
+
23
+ - 16e2475: Prove npm trusted publishing and provenance after the initial registry bootstrap.
24
+ - Updated dependencies [16e2475]
25
+ - @typed-sql/core@1.0.0-beta.1
26
+
3
27
  ## 1.0.0-beta.0
4
28
 
5
29
  ### Major Changes
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,iBAAiB,CAAC;AAUzB,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;CAC1D;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;CACvB;AAWD,wBAAsB,cAAc,CAAC,KAAK,SAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAW3E;AAcD,wBAAsB,UAAU,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,YAAY,CAAC,CAOvF;AAED,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAElE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAUhG,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;CAC1D;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;CACvB;AAWD,wBAAsB,cAAc,CAAC,KAAK,SAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAW3E;AAcD,wBAAsB,UAAU,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,YAAY,CAAC,CAWvF;AAED,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAElE"}
@@ -2,7 +2,7 @@ import { constants } from "node:fs";
2
2
  import { access } from "node:fs/promises";
3
3
  import { dirname, join, resolve } from "node:path";
4
4
  import { pathToFileURL } from "node:url";
5
- import { DIALECT_CONTRACT_VERSION, } from "@typed-sql/core";
5
+ import { assertDialectPlugin } from "@typed-sql/core";
6
6
  import { tsImport } from "tsx/esm/api";
7
7
  const configNames = [
8
8
  "typed-sql.config.ts",
@@ -37,19 +37,21 @@ function isConfig(value) {
37
37
  if (typeof value !== "object" || value === null)
38
38
  return false;
39
39
  const candidate = value;
40
- return candidate.dialect?.contractVersion === DIALECT_CONTRACT_VERSION
41
- && typeof candidate.dialect.id === "string"
42
- && typeof candidate.dialect.sqlModule === "string"
43
- && typeof candidate.dialect.analyze === "function"
44
- && typeof candidate.dialect.validateSnapshot === "function"
45
- && typeof candidate.schema?.file === "string"
46
- && typeof candidate.outDir === "string";
40
+ if (typeof candidate.schema?.file !== "string" || typeof candidate.outDir !== "string")
41
+ return false;
42
+ try {
43
+ assertDialectPlugin(candidate.dialect);
44
+ return true;
45
+ }
46
+ catch {
47
+ return false;
48
+ }
47
49
  }
48
50
  export async function loadConfig(options = {}) {
49
51
  const file = options.file === undefined
50
52
  ? await discoverConfig(options.cwd)
51
53
  : resolve(options.cwd ?? process.cwd(), options.file);
52
- const module = await tsImport(pathToFileURL(file).href, pathToFileURL(join(dirname(file), "package.json")).href);
54
+ const module = (await tsImport(pathToFileURL(file).href, pathToFileURL(join(dirname(file), "package.json")).href));
53
55
  if (!isConfig(module.default))
54
56
  throw new TypeError(`${file} must default-export defineConfig({...})`);
55
57
  return { file, directory: dirname(file), config: module.default };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAA4C,MAAM,iBAAiB,CAAC;AAChG,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,MAAM,WAAW,GAAG;IAClB,qBAAqB;IACrB,sBAAsB;IACtB,sBAAsB;IACtB,qBAAqB;CACb,CAAC;AAaX,KAAK,UAAU,MAAM,CAAC,IAAY;IAChC,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE;IACxD,IAAI,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/B,OAAO,IAAI,EAAE,CAAC;QACZ,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;YAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YACxC,IAAI,MAAM,MAAM,CAAC,SAAS,CAAC;gBAAE,OAAO,SAAS,CAAC;QAChD,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QAClC,IAAI,MAAM,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,KAAK,EAAE,CAAC,CAAC;QAC9F,SAAS,GAAG,MAAM,CAAC;IACrB,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,SAAS,GAAG,KAAyD,CAAC;IAC5E,IAAI,OAAO,SAAS,CAAC,MAAM,EAAE,IAAI,KAAK,QAAQ,IAAI,OAAO,SAAS,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACrG,IAAI,CAAC;QACH,mBAAmB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,OAAO,GAAsB,EAAE;IAC9D,MAAM,IAAI,GACR,OAAO,CAAC,IAAI,KAAK,SAAS;QACxB,CAAC,CAAC,MAAM,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC;QACnC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAC5B,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,EACxB,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,IAAI,CACxD,CAAmC,CAAC;IACrC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC;QAAE,MAAM,IAAI,SAAS,CAAC,GAAG,IAAI,0CAA0C,CAAC,CAAC;IACtG,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;AACpE,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,SAAiB,EAAE,IAAY;IACxD,OAAO,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAClC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@typed-sql/config",
3
- "version": "1.0.0-beta.0",
3
+ "version": "1.0.0-beta.2",
4
4
  "description": "Shared typed-sql config discovery and TypeScript config loading.",
5
5
  "license": "MIT",
6
6
  "author": "Lojhan",
@@ -27,6 +27,9 @@
27
27
  "publishConfig": {
28
28
  "access": "public"
29
29
  },
30
+ "typedSql": {
31
+ "releaseTrack": "stable"
32
+ },
30
33
  "sideEffects": false,
31
34
  "type": "module",
32
35
  "exports": {
@@ -34,7 +37,7 @@
34
37
  },
35
38
  "dependencies": {
36
39
  "tsx": "4.23.12",
37
- "@typed-sql/core": "1.0.0-beta.0"
40
+ "@typed-sql/core": "1.0.0-beta.2"
38
41
  },
39
42
  "scripts": {
40
43
  "test": "poku test --reporter=compact --enforce",