@cubejs-backend/schema-compiler 1.2.29 → 1.2.31

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 (47) hide show
  1. package/dist/src/adapter/BaseMeasure.d.ts +7 -2
  2. package/dist/src/adapter/BaseMeasure.d.ts.map +1 -1
  3. package/dist/src/adapter/BaseMeasure.js +86 -0
  4. package/dist/src/adapter/BaseMeasure.js.map +1 -1
  5. package/dist/src/adapter/BaseQuery.d.ts +2 -2
  6. package/dist/src/adapter/BaseQuery.d.ts.map +1 -1
  7. package/dist/src/adapter/BaseQuery.js +27 -9
  8. package/dist/src/adapter/BaseQuery.js.map +1 -1
  9. package/dist/src/adapter/BigqueryQuery.d.ts.map +1 -1
  10. package/dist/src/adapter/BigqueryQuery.js +11 -3
  11. package/dist/src/adapter/BigqueryQuery.js.map +1 -1
  12. package/dist/src/compiler/CompilerCache.d.ts +1 -1
  13. package/dist/src/compiler/CompilerCache.d.ts.map +1 -1
  14. package/dist/src/compiler/CompilerCache.js +5 -8
  15. package/dist/src/compiler/CompilerCache.js.map +1 -1
  16. package/dist/src/compiler/ContextEvaluator.d.ts +1 -1
  17. package/dist/src/compiler/CubeEvaluator.d.ts +47 -43
  18. package/dist/src/compiler/CubeEvaluator.d.ts.map +1 -1
  19. package/dist/src/compiler/CubeEvaluator.js +2 -3
  20. package/dist/src/compiler/CubeEvaluator.js.map +1 -1
  21. package/dist/src/compiler/CubeSymbols.d.ts +16 -5
  22. package/dist/src/compiler/CubeSymbols.d.ts.map +1 -1
  23. package/dist/src/compiler/CubeSymbols.js +11 -2
  24. package/dist/src/compiler/CubeSymbols.js.map +1 -1
  25. package/dist/src/compiler/DataSchemaCompiler.d.ts +2 -0
  26. package/dist/src/compiler/DataSchemaCompiler.d.ts.map +1 -1
  27. package/dist/src/compiler/DataSchemaCompiler.js +13 -1
  28. package/dist/src/compiler/DataSchemaCompiler.js.map +1 -1
  29. package/dist/src/compiler/DynamicReference.d.ts +4 -4
  30. package/dist/src/compiler/DynamicReference.d.ts.map +1 -1
  31. package/dist/src/compiler/DynamicReference.js +2 -0
  32. package/dist/src/compiler/DynamicReference.js.map +1 -1
  33. package/dist/src/compiler/PrepareCompiler.d.ts +4 -0
  34. package/dist/src/compiler/PrepareCompiler.d.ts.map +1 -1
  35. package/dist/src/compiler/PrepareCompiler.js +3 -0
  36. package/dist/src/compiler/PrepareCompiler.js.map +1 -1
  37. package/dist/src/extensions/Reflection.d.ts +1 -1
  38. package/dist/src/extensions/Reflection.d.ts.map +1 -1
  39. package/dist/src/scaffolding/ScaffoldingSchema.d.ts +9 -5
  40. package/dist/src/scaffolding/ScaffoldingSchema.d.ts.map +1 -1
  41. package/dist/src/scaffolding/ScaffoldingSchema.js +3 -2
  42. package/dist/src/scaffolding/ScaffoldingSchema.js.map +1 -1
  43. package/dist/src/scaffolding/formatters/BaseSchemaFormatter.d.ts +6 -3
  44. package/dist/src/scaffolding/formatters/BaseSchemaFormatter.d.ts.map +1 -1
  45. package/dist/src/scaffolding/formatters/BaseSchemaFormatter.js +42 -16
  46. package/dist/src/scaffolding/formatters/BaseSchemaFormatter.js.map +1 -1
  47. package/package.json +10 -10
@@ -28,14 +28,26 @@ class BaseSchemaFormatter {
28
28
  this.scaffoldingSchema = new ScaffoldingSchema_1.ScaffoldingSchema(dbSchema, this.options);
29
29
  }
30
30
  generateFilesByTableNames(tableNames, schemaContext = {}) {
31
- const schemaForTables = this.scaffoldingSchema.generateForTables(tableNames.map((n) => this.scaffoldingSchema.resolveTableName(n)));
32
- return schemaForTables.map((tableSchema) => ({
33
- fileName: `${tableSchema.cube}.${this.fileExtension()}`,
34
- content: this.renderFile(this.schemaDescriptorForTable(tableSchema, schemaContext)),
35
- }));
31
+ const tableSchemas = this.scaffoldingSchema.generateForTables(tableNames.map((n) => this.scaffoldingSchema.resolveTableName(n)));
32
+ return this.generateFilesByTableSchemas(tableSchemas, schemaContext);
36
33
  }
37
34
  generateFilesByCubeDescriptors(cubeDescriptors, schemaContext = {}) {
38
- return this.schemaForTablesByCubeDescriptors(cubeDescriptors).map((tableSchema) => ({
35
+ return this.generateFilesByTableSchemas(this.tableSchemasByCubeDescriptors(cubeDescriptors), schemaContext);
36
+ }
37
+ generateFilesByTableSchemas(tableSchemas, schemaContext = {}) {
38
+ const cubeToDimensionNamesMap = new Map(tableSchemas.map(tableSchema => [tableSchema.cube, tableSchema.dimensions.map(d => d.name)]));
39
+ tableSchemas = tableSchemas.map((tableSchema) => {
40
+ const updatedJoins = tableSchema.joins.map((join) => ({
41
+ ...join,
42
+ thisTableColumnIncludedAsDimension: !!cubeToDimensionNamesMap.get(tableSchema.cube)?.includes(join.thisTableColumn),
43
+ columnToJoinIncludedAsDimension: !!cubeToDimensionNamesMap.get(join.cubeToJoin)?.includes(join.columnToJoin)
44
+ }));
45
+ return {
46
+ ...tableSchema,
47
+ joins: updatedJoins
48
+ };
49
+ });
50
+ return tableSchemas.map((tableSchema) => ({
39
51
  fileName: `${tableSchema.cube}.${this.fileExtension()}`,
40
52
  content: this.renderFile(this.schemaDescriptorForTable(tableSchema, schemaContext)),
41
53
  }));
@@ -83,20 +95,34 @@ class BaseSchemaFormatter {
83
95
  : {
84
96
  sql: `SELECT * FROM ${table}`,
85
97
  };
86
- return {
87
- cube: tableSchema.cube,
88
- ...sqlOption,
89
- ...dataSourceProp,
90
- joins: tableSchema.joins
91
- .map((j) => ({
98
+ // Try to use dimension refs if possible
99
+ // Source and target columns must be included in the respective cubes as dimensions
100
+ // {CUBE.dimension_name} = {other_cube.other_dimension_name}
101
+ // instead of
102
+ // {CUBE}.dimension_name = {other_cube}.other_dimension_name
103
+ const joins = tableSchema.joins
104
+ .map((j) => {
105
+ const thisTableColumnRef = j.thisTableColumnIncludedAsDimension
106
+ ? this.cubeReference(`CUBE.${this.memberName({ title: j.thisTableColumn })}`)
107
+ : `${this.cubeReference('CUBE')}.${this.escapeName(j.thisTableColumn)}`;
108
+ const columnToJoinRef = j.columnToJoinIncludedAsDimension
109
+ ? this.cubeReference(`${j.cubeToJoin}.${this.memberName({ title: j.columnToJoin })}`)
110
+ : `${this.cubeReference(j.cubeToJoin)}.${this.escapeName(j.columnToJoin)}`;
111
+ return ({
92
112
  [j.cubeToJoin]: {
93
- sql: `${this.cubeReference('CUBE')}.${this.escapeName(j.thisTableColumn)} = ${this.cubeReference(j.cubeToJoin)}.${this.escapeName(j.columnToJoin)}`,
113
+ sql: `${thisTableColumnRef} = ${columnToJoinRef}`,
94
114
  relationship: this.options.snakeCase
95
115
  ? (JOIN_RELATIONSHIP_MAP[j.relationship] ?? j.relationship)
96
116
  : j.relationship,
97
117
  },
98
- }))
99
- .reduce((a, b) => ({ ...a, ...b }), {}),
118
+ });
119
+ })
120
+ .reduce((a, b) => ({ ...a, ...b }), {});
121
+ return {
122
+ cube: tableSchema.cube,
123
+ ...sqlOption,
124
+ ...dataSourceProp,
125
+ joins,
100
126
  dimensions: tableSchema.dimensions.sort((a) => (a.isPrimaryKey ? -1 : 0))
101
127
  .map((m) => ({
102
128
  [this.memberName(m)]: {
@@ -131,7 +157,7 @@ class BaseSchemaFormatter {
131
157
  ]),
132
158
  };
133
159
  }
134
- schemaForTablesByCubeDescriptors(cubeDescriptors) {
160
+ tableSchemasByCubeDescriptors(cubeDescriptors) {
135
161
  const tableNames = cubeDescriptors.map(({ tableName }) => tableName);
136
162
  const generatedSchemaForTables = this.scaffoldingSchema.generateForTables(tableNames.map((n) => this.scaffoldingSchema.resolveTableName(n)));
137
163
  return cubeDescriptors.map((descriptor) => {
@@ -1 +1 @@
1
- {"version":3,"file":"BaseSchemaFormatter.js","sourceRoot":"","sources":["../../../../src/scaffolding/formatters/BaseSchemaFormatter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseSchemaFormatter.js","sourceRoot":"","sources":["../../../../src/scaffolding/formatters/BaseSchemaFormatter.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@cubejs-backend/schema-compiler",
3
3
  "description": "Cube schema compiler",
4
4
  "author": "Cube Dev, Inc.",
5
- "version": "1.2.29",
5
+ "version": "1.2.31",
6
6
  "repository": {
7
7
  "type": "git",
8
8
  "url": "https://github.com/cube-js/cube.git",
@@ -40,8 +40,8 @@
40
40
  "@babel/standalone": "^7.24",
41
41
  "@babel/traverse": "^7.24",
42
42
  "@babel/types": "^7.24",
43
- "@cubejs-backend/native": "1.2.29",
44
- "@cubejs-backend/shared": "1.2.29",
43
+ "@cubejs-backend/native": "1.2.31",
44
+ "@cubejs-backend/shared": "1.2.31",
45
45
  "antlr4ts": "0.5.0-alpha.4",
46
46
  "camelcase": "^6.2.0",
47
47
  "cron-parser": "^4.9.0",
@@ -49,7 +49,7 @@
49
49
  "inflection": "^1.12.0",
50
50
  "joi": "^17.8.3",
51
51
  "js-yaml": "^4.1.0",
52
- "lru-cache": "^5.1.1",
52
+ "lru-cache": "^11.1.0",
53
53
  "moment-timezone": "^0.5.46",
54
54
  "node-dijkstra": "^2.5.0",
55
55
  "ramda": "^0.27.2",
@@ -59,14 +59,13 @@
59
59
  },
60
60
  "devDependencies": {
61
61
  "@clickhouse/client": "^1.7.0",
62
- "@cubejs-backend/linter": "1.2.29",
63
- "@cubejs-backend/query-orchestrator": "1.2.29",
62
+ "@cubejs-backend/linter": "1.2.31",
63
+ "@cubejs-backend/query-orchestrator": "1.2.31",
64
64
  "@types/babel__code-frame": "^7.0.6",
65
65
  "@types/babel__generator": "^7.6.8",
66
66
  "@types/babel__traverse": "^7.20.5",
67
67
  "@types/inflection": "^1.5.28",
68
68
  "@types/jest": "^27",
69
- "@types/lru-cache": "^5.1.0",
70
69
  "@types/node": "^18",
71
70
  "@types/ramda": "^0.27.34",
72
71
  "@types/sqlstring": "^2.3.0",
@@ -90,10 +89,11 @@
90
89
  },
91
90
  "jest": {
92
91
  "testEnvironment": "node",
93
- "collectCoverage": false,
92
+ "collectCoverage": true,
94
93
  "coverageReporters": [
95
94
  "text",
96
- "html"
95
+ "html",
96
+ "cobertura"
97
97
  ],
98
98
  "coverageDirectory": "coverage/",
99
99
  "collectCoverageFrom": [
@@ -113,5 +113,5 @@
113
113
  "^axios$": "axios/dist/node/axios.cjs"
114
114
  }
115
115
  },
116
- "gitHead": "0a50a8e3a2543be5a6b9491815db18563634d2a8"
116
+ "gitHead": "ac93f96c85286e2483441041b4cd7ad544233b74"
117
117
  }