semanticdb-v2 2.0.0-alpha.5 → 2.0.0-alpha.7

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.
Files changed (94) hide show
  1. package/README.md +272 -7
  2. package/dist/cache/redis-query-cache.esm.js +1 -1
  3. package/dist/cache/redis-query-cache.js +1 -1
  4. package/dist/cache/types.d.ts +2 -0
  5. package/dist/executor/connection-registry.d.ts +1 -12
  6. package/dist/executor/execute-query.d.ts +6 -1
  7. package/dist/executor/federated-execution.d.ts +37 -0
  8. package/dist/executor/fetch-entities.d.ts +3 -1
  9. package/dist/executor/result-hydrator/types.d.ts +2 -0
  10. package/dist/executor/total.d.ts +11 -0
  11. package/dist/executor/types.d.ts +33 -4
  12. package/dist/index.d.ts +9 -7
  13. package/dist/logicform-types.d.ts +44 -12
  14. package/dist/normalizer/core.d.ts +9 -0
  15. package/dist/normalizer/pred-expression.d.ts +6 -0
  16. package/dist/operators/builtins/query-expression.d.ts +3 -0
  17. package/dist/operators/index.d.ts +1 -1
  18. package/dist/operators/types.d.ts +39 -8
  19. package/dist/physical/clickhouse-provider.d.ts +20 -2
  20. package/dist/physical/connection-registry.d.ts +13 -0
  21. package/dist/physical/connection.d.ts +57 -15
  22. package/dist/physical/dameng-provider.d.ts +66 -0
  23. package/dist/physical/databricks-provider.d.ts +88 -0
  24. package/dist/physical/db-connector.d.ts +23 -0
  25. package/dist/physical/display-query.d.ts +3 -0
  26. package/dist/physical/doris-provider.d.ts +2 -1
  27. package/dist/physical/duckdb-coordinator-provider.d.ts +37 -0
  28. package/dist/physical/gbase-provider.d.ts +11 -0
  29. package/dist/physical/index.d.ts +24 -9
  30. package/dist/physical/load-driver.d.ts +1 -0
  31. package/dist/physical/maxcompute-provider.d.ts +44 -0
  32. package/dist/physical/mysql-protocol-provider.d.ts +24 -6
  33. package/dist/physical/mysql-provider.d.ts +2 -1
  34. package/dist/physical/oracle-provider.d.ts +20 -4
  35. package/dist/physical/postgresql-provider.d.ts +23 -4
  36. package/dist/physical/provider.d.ts +57 -1
  37. package/dist/physical/snowflake-provider.d.ts +19 -3
  38. package/dist/physical/sqlserver-provider.d.ts +69 -0
  39. package/dist/physical/starrocks-provider.d.ts +2 -1
  40. package/dist/physical/table-description.d.ts +5 -0
  41. package/dist/physical/table-discovery.d.ts +10 -0
  42. package/dist/planner/build-lineage.d.ts +1 -1
  43. package/dist/planner/create-logical-plan.d.ts +7 -0
  44. package/dist/planner/index.d.ts +4 -2
  45. package/dist/planner/mapping-granularity.d.ts +7 -0
  46. package/dist/planner/rewrite-nested-components.d.ts +8 -0
  47. package/dist/planner/select-schema-mapping.d.ts +16 -2
  48. package/dist/planner/semantics/index.d.ts +0 -4
  49. package/dist/planner/semantics/periods.d.ts +13 -0
  50. package/dist/planner/semantics/registry-defaults.d.ts +2 -1
  51. package/dist/planner/types.d.ts +71 -34
  52. package/dist/plugins/hierarchy/index.d.ts +1 -1
  53. package/dist/plugins/hierarchy/mapping-granularity.d.ts +4 -0
  54. package/dist/plugins/hierarchy/types.d.ts +17 -0
  55. package/dist/plugins/index.d.ts +10 -1
  56. package/dist/{planner/semantics → plugins}/observation/classification.d.ts +1 -1
  57. package/dist/plugins/observation/index.d.ts +17 -0
  58. package/dist/{planner/semantics → plugins}/observation/operator-policy.d.ts +2 -3
  59. package/dist/{planner/semantics → plugins}/observation/periods.d.ts +2 -3
  60. package/dist/{planner/semantics → plugins}/observation/rule.d.ts +1 -1
  61. package/dist/{planner/semantics → plugins}/observation/types.d.ts +1 -1
  62. package/dist/plugins/property-hierarchy/index.d.ts +11 -0
  63. package/dist/plugins/recursive/index.d.ts +26 -0
  64. package/dist/plugins/temporal/index.d.ts +13 -0
  65. package/dist/plugins/types.d.ts +165 -1
  66. package/dist/plugins/validity/classification.d.ts +5 -0
  67. package/dist/{planner/semantics → plugins}/validity/index.d.ts +9 -0
  68. package/dist/{planner/semantics → plugins}/validity/periods.d.ts +2 -3
  69. package/dist/{planner/semantics → plugins}/validity/query-policy.d.ts +1 -2
  70. package/dist/{planner/semantics → plugins}/validity/rule.d.ts +1 -1
  71. package/dist/plugins/validity/semantic-types.d.ts +3 -0
  72. package/dist/schema-mappings/freshness.d.ts +1 -1
  73. package/dist/schema-mappings/granularity.d.ts +5 -0
  74. package/dist/schema-mappings/index.d.ts +2 -1
  75. package/dist/schema-mappings/registry.d.ts +5 -3
  76. package/dist/schema-mappings/types.d.ts +43 -0
  77. package/dist/schema-mappings/yiask.d.ts +6 -2
  78. package/dist/semantic-types/index.d.ts +5 -3
  79. package/dist/semantic-types/registry.d.ts +2 -0
  80. package/dist/semantic-types/resolve-schema.d.ts +1 -1
  81. package/dist/semantic-types/types.d.ts +0 -14
  82. package/dist/semantic-types/validate-resolved-schema.d.ts +2 -5
  83. package/dist/semanticdb.esm.js +5 -3
  84. package/dist/semanticdb.js +5 -3
  85. package/package.json +46 -5
  86. package/dist/planner/semantics/annual-periods.d.ts +0 -11
  87. package/dist/planner/semantics/lifecycle/classification.d.ts +0 -5
  88. package/dist/planner/semantics/lifecycle/index.d.ts +0 -3
  89. package/dist/planner/semantics/lifecycle/query-policy.d.ts +0 -2
  90. package/dist/planner/semantics/lifecycle/rule.d.ts +0 -2
  91. package/dist/planner/semantics/observation/index.d.ts +0 -6
  92. package/dist/planner/semantics/validity/classification.d.ts +0 -14
  93. package/dist/semantic-types/builtins/end-date.d.ts +0 -2
  94. package/dist/semantic-types/builtins/start-date.d.ts +0 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "semanticdb-v2",
3
- "version": "2.0.0-alpha.5",
3
+ "version": "2.0.0-alpha.7",
4
4
  "main": "dist/semanticdb.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "files": [
@@ -11,40 +11,81 @@
11
11
  "build:types": "tsc -p tsconfig.build.json",
12
12
  "build:rollup": "rollup -c",
13
13
  "build": "npm run clean && npm run build:types && npm run build:rollup",
14
+ "build:yiask": "npm run build && rsync -a --delete dist/ /Users/zhuxichi/Documents/Codes/yiask/node_modules/semanticdb-v2/dist/",
14
15
  "typecheck": "tsc --noEmit",
15
16
  "debug": "vite-node debug/debug.ts",
16
17
  "debug:project": "vite-node debug/project/debugProject.ts",
18
+ "test:databricks": "node scripts/databricks-oauth-connectivity.mjs",
17
19
  "test": "vitest run --coverage",
18
20
  "lint": "eslint .",
19
21
  "check": "npm run lint && npm run typecheck && npm test && npm run build"
20
22
  },
21
23
  "dependencies": {
22
- "@clickhouse/client": "^1.11.2",
24
+ "@duckdb/node-api": "^1.5.5-r.5",
23
25
  "dayjs": "^1.11.21",
24
26
  "i18next": "^25.10.10",
27
+ "redis": "^5.10.0"
28
+ },
29
+ "peerDependencies": {
30
+ "@clickhouse/client": "^1.11.2",
31
+ "@databricks/sql": "^2.2.0",
32
+ "dmdb": "^1.0.52452",
25
33
  "mysql2": "^3.14.4",
34
+ "mssql": "^12.0.0",
26
35
  "oracledb": "^6.10.0",
27
36
  "pg": "^8.23.0",
28
- "redis": "^5.10.0",
37
+ "semanticdb-core": "^1.1.57",
29
38
  "snowflake-sdk": "^2.4.3"
30
39
  },
31
- "peerDependencies": {
32
- "semanticdb-core": "^1.1.57"
40
+ "peerDependenciesMeta": {
41
+ "@clickhouse/client": {
42
+ "optional": true
43
+ },
44
+ "@databricks/sql": {
45
+ "optional": true
46
+ },
47
+ "dmdb": {
48
+ "optional": true
49
+ },
50
+ "mysql2": {
51
+ "optional": true
52
+ },
53
+ "mssql": {
54
+ "optional": true
55
+ },
56
+ "oracledb": {
57
+ "optional": true
58
+ },
59
+ "pg": {
60
+ "optional": true
61
+ },
62
+ "snowflake-sdk": {
63
+ "optional": true
64
+ }
33
65
  },
34
66
  "devDependencies": {
67
+ "@clickhouse/client": "^1.11.2",
68
+ "@databricks/sql": "^2.2.0",
35
69
  "@eslint/js": "^9.32.0",
36
70
  "@rollup/plugin-node-resolve": "^16.0.3",
37
71
  "@rollup/plugin-typescript": "^12.3.0",
38
72
  "@rollup/rollup-darwin-arm64": "^4.62.4",
39
73
  "@types/node": "^22.17.0",
74
+ "@types/mssql": "^12.3.0",
40
75
  "@types/oracledb": "^6.10.4",
41
76
  "@types/pg": "^8.21.0",
42
77
  "@vitest/coverage-v8": "^3.2.4",
78
+ "dmdb": "^1.0.52452",
43
79
  "dotenv": "^17.4.2",
44
80
  "esbuild": "^0.28.1",
45
81
  "eslint": "^9.32.0",
82
+ "mysql2": "^3.14.4",
83
+ "mssql": "^12.0.0",
84
+ "oracledb": "^6.10.0",
85
+ "pg": "^8.23.0",
46
86
  "rollup": "^4.62.4",
47
87
  "semanticdb-core": "^1.1.57",
88
+ "snowflake-sdk": "^2.4.3",
48
89
  "tslib": "^2.8.1",
49
90
  "typescript": "^5.9.2",
50
91
  "typescript-eslint": "^8.38.0",
@@ -1,11 +0,0 @@
1
- export interface AnnualPeriod {
2
- readonly label: string;
3
- readonly start: string;
4
- readonly end: string;
5
- }
6
- export interface AnnualPeriodErrorContext {
7
- readonly codePrefix: 'VALIDITY' | 'OBSERVATION';
8
- readonly label: string;
9
- }
10
- /** Expand one bounded time condition into natural-year boundaries. */
11
- export declare const resolveAnnualPeriods: (condition: unknown, context: AnnualPeriodErrorContext) => readonly AnnualPeriod[];
@@ -1,5 +0,0 @@
1
- import type { ValidityProperties } from '../validity/classification';
2
- /** Compatibility alias. Lifecycle is the single-row validity case. */
3
- export type LifecycleProperties = ValidityProperties;
4
- /** Compatibility alias for resolveValidityProperties. */
5
- export declare const resolveLifecycleProperties: (schema: Pick<import("../../..").ResolvedSemanticSchema, "type" | "properties" | "temporalSemantics">) => ValidityProperties | undefined;
@@ -1,3 +0,0 @@
1
- export { resolveLifecycleProperties } from './classification';
2
- export { applyLifecycleQuery } from './query-policy';
3
- export { lifecycleSemanticRule } from './rule';
@@ -1,2 +0,0 @@
1
- /** Compatibility alias for applyValidityQuery. */
2
- export { applyValidityQuery as applyLifecycleQuery } from '../validity/query-policy';
@@ -1,2 +0,0 @@
1
- /** Compatibility alias for validitySemanticRule. */
2
- export declare const lifecycleSemanticRule: import("..").PlannerSemanticRule;
@@ -1,6 +0,0 @@
1
- export { isObservationProperty, observationProperties, } from './classification';
2
- export { resolveObservationOperatorPolicy, type ObservationOperatorPolicy, } from './operator-policy';
3
- export type { ObservationOperator, ObservationTemporalMetadata, } from './types';
4
- export { removeObservationTimeCondition, resolveObservationPeriodSpec, } from './periods';
5
- export type { ObservationPeriodMetric, ObservationPeriodSpec, } from './periods';
6
- export { observationSemanticRule } from './rule';
@@ -1,14 +0,0 @@
1
- import type { ResolvedSemanticProperty, ResolvedSemanticSchema } from '../../../semantic-types/index';
2
- /** Property roles that define an entity whose rows are valid over a time interval. */
3
- export interface ValidityProperties {
4
- readonly id: ResolvedSemanticProperty;
5
- readonly timestamp: ResolvedSemanticProperty;
6
- readonly start: ResolvedSemanticProperty;
7
- readonly end: ResolvedSemanticProperty;
8
- }
9
- /**
10
- * Valid-time semantics are structural: an entity with one stable ID and one
11
- * start/end interval is a valid-time entity. The ID may repeat physically;
12
- * non-overlapping intervals select the row version that is valid at a point.
13
- */
14
- export declare const resolveValidityProperties: (schema: Pick<ResolvedSemanticSchema, "type" | "properties" | "temporalSemantics">) => ValidityProperties | undefined;
@@ -1,2 +0,0 @@
1
- import type { SemanticTypeDefinition } from '../types';
2
- export declare const endDateSemanticType: SemanticTypeDefinition;
@@ -1,2 +0,0 @@
1
- import type { SemanticTypeDefinition } from '../types';
2
- export declare const startDateSemanticType: SemanticTypeDefinition;