@finos/legend-graph 1.0.5 → 1.1.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.
Files changed (88) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/lib/graphManager/AbstractPureGraphManager.d.ts +10 -7
  3. package/lib/graphManager/AbstractPureGraphManager.d.ts.map +1 -1
  4. package/lib/graphManager/AbstractPureGraphManager.js.map +1 -1
  5. package/lib/graphManager/action/execution/ExecutionResult.d.ts +7 -0
  6. package/lib/graphManager/action/execution/ExecutionResult.d.ts.map +1 -1
  7. package/lib/graphManager/action/execution/ExecutionResult.js +12 -0
  8. package/lib/graphManager/action/execution/ExecutionResult.js.map +1 -1
  9. package/lib/index.d.ts +1 -1
  10. package/lib/index.d.ts.map +1 -1
  11. package/lib/index.js +1 -1
  12. package/lib/index.js.map +1 -1
  13. package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMapping.d.ts.map +1 -1
  14. package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMapping.js +2 -0
  15. package/lib/models/metamodels/pure/packageableElements/mapping/PropertyMapping.js.map +1 -1
  16. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementation.d.ts +18 -4
  17. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementation.d.ts.map +1 -1
  18. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementation.js +22 -0
  19. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementation.js.map +1 -1
  20. package/lib/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.d.ts +1 -1
  21. package/lib/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.d.ts.map +1 -1
  22. package/lib/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.js +2 -4
  23. package/lib/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.js.map +1 -1
  24. package/lib/models/metamodels/pure/packageableElements/store/relational/model/TableReference.d.ts +1 -1
  25. package/lib/models/metamodels/pure/packageableElements/store/relational/model/TableReference.d.ts.map +1 -1
  26. package/lib/models/metamodels/pure/packageableElements/store/relational/model/TableReference.js +2 -2
  27. package/lib/models/metamodels/pure/packageableElements/store/relational/model/TableReference.js.map +1 -1
  28. package/lib/models/metamodels/pure/packageableElements/store/relational/model/ViewReference.d.ts +1 -0
  29. package/lib/models/metamodels/pure/packageableElements/store/relational/model/ViewReference.d.ts.map +1 -1
  30. package/lib/models/metamodels/pure/packageableElements/store/relational/model/ViewReference.js +12 -0
  31. package/lib/models/metamodels/pure/packageableElements/store/relational/model/ViewReference.js.map +1 -1
  32. package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts +2 -2
  33. package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts.map +1 -1
  34. package/lib/models/protocols/pure/v1/V1_PureGraphManager.js +2 -2
  35. package/lib/models/protocols/pure/v1/V1_PureGraphManager.js.map +1 -1
  36. package/lib/models/protocols/pure/v1/engine/V1_Engine.d.ts +2 -1
  37. package/lib/models/protocols/pure/v1/engine/V1_Engine.d.ts.map +1 -1
  38. package/lib/models/protocols/pure/v1/engine/V1_Engine.js +9 -5
  39. package/lib/models/protocols/pure/v1/engine/V1_Engine.js.map +1 -1
  40. package/lib/models/protocols/pure/v1/engine/V1_EngineServerClient.d.ts +5 -1
  41. package/lib/models/protocols/pure/v1/engine/V1_EngineServerClient.d.ts.map +1 -1
  42. package/lib/models/protocols/pure/v1/engine/V1_EngineServerClient.js +3 -1
  43. package/lib/models/protocols/pure/v1/engine/V1_EngineServerClient.js.map +1 -1
  44. package/lib/models/protocols/pure/v1/engine/V1_ExecutionHelper.d.ts.map +1 -1
  45. package/lib/models/protocols/pure/v1/engine/V1_ExecutionHelper.js +5 -2
  46. package/lib/models/protocols/pure/v1/engine/V1_ExecutionHelper.js.map +1 -1
  47. package/lib/models/protocols/pure/v1/engine/execution/V1_ExecutionResult.d.ts +5 -1
  48. package/lib/models/protocols/pure/v1/engine/execution/V1_ExecutionResult.d.ts.map +1 -1
  49. package/lib/models/protocols/pure/v1/engine/execution/V1_ExecutionResult.js +11 -1
  50. package/lib/models/protocols/pure/v1/engine/execution/V1_ExecutionResult.js.map +1 -1
  51. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.d.ts +2 -1
  52. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.d.ts.map +1 -1
  53. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js +7 -2
  54. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js.map +1 -1
  55. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.js +3 -3
  56. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.js.map +1 -1
  57. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.js +2 -2
  58. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.js.map +1 -1
  59. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.d.ts +1 -1
  60. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.d.ts.map +1 -1
  61. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.js +14 -8
  62. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.js.map +1 -1
  63. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.d.ts +1 -1
  64. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.d.ts.map +1 -1
  65. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.js +7 -6
  66. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.js.map +1 -1
  67. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.js +1 -1
  68. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.js.map +1 -1
  69. package/package.json +8 -8
  70. package/src/graphManager/AbstractPureGraphManager.ts +14 -6
  71. package/src/graphManager/action/execution/ExecutionResult.ts +14 -0
  72. package/src/index.ts +2 -0
  73. package/src/models/metamodels/pure/packageableElements/mapping/PropertyMapping.ts +2 -0
  74. package/src/models/metamodels/pure/packageableElements/mapping/SetImplementation.ts +41 -4
  75. package/src/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.ts +3 -4
  76. package/src/models/metamodels/pure/packageableElements/store/relational/model/TableReference.ts +2 -2
  77. package/src/models/metamodels/pure/packageableElements/store/relational/model/ViewReference.ts +13 -0
  78. package/src/models/protocols/pure/v1/V1_PureGraphManager.ts +3 -2
  79. package/src/models/protocols/pure/v1/engine/V1_Engine.ts +11 -5
  80. package/src/models/protocols/pure/v1/engine/V1_EngineServerClient.ts +9 -3
  81. package/src/models/protocols/pure/v1/engine/V1_ExecutionHelper.ts +4 -0
  82. package/src/models/protocols/pure/v1/engine/execution/V1_ExecutionResult.ts +14 -1
  83. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.ts +13 -1
  84. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.ts +3 -3
  85. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.ts +2 -2
  86. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.ts +41 -17
  87. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.ts +9 -9
  88. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"V1_RelationalClassMappingBuilderHelper.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,uCAAuC,EAAE,MAAM,2HAA2H,CAAC;AACzL,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,uHAAuH,CAAC;AACjL,OAAO,KAAK,EAAE,2CAA2C,EAAE,MAAM,+HAA+H,CAAC;AACjM,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oFAAoF,CAAC;AAE5H,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0EAA0E,CAAC;AACxG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qFAAqF,CAAC;AAC9H,OAAO,EACL,KAAK,UAAU,EAEhB,MAAM,4GAA4G,CAAC;AAKpH,OAAO,EAAE,aAAa,EAAE,MAAM,iGAAiG,CAAC;AAChI,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gEAAgE,CAAC;AAC7G,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,0FAA0F,CAAC;AAC1I,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iFAAiF,CAAC;AAOxH,eAAO,MAAM,8BAA8B,2BACjB,yBAAyB,WACxC,sBAAsB,QACzB,mCAAmC,aAC9B,uCAAuC,iBACnC,OAAO,sCACc,2CAA2C,EAAE,uBAC5D,kBAAkB,EAAE,iBAC1B,IAAI,MAAM,EAAE,UAAU,CAAC,KACrC,iBAsBF,CAAC;AAEF,eAAO,MAAM,4BAA4B,mBACvB,uCAAuC,KACtD,IAwBF,CAAC;AAEF,eAAO,MAAM,+BAA+B,cAC/B,gBAAgB,WAClB,sBAAsB,KAC9B,aAcF,CAAC"}
1
+ {"version":3,"file":"V1_RelationalClassMappingBuilderHelper.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,uCAAuC,EAAE,MAAM,2HAA2H,CAAC;AACzL,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,uHAAuH,CAAC;AACjL,OAAO,KAAK,EAAE,2CAA2C,EAAE,MAAM,+HAA+H,CAAC;AACjM,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oFAAoF,CAAC;AAE5H,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0EAA0E,CAAC;AACxG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qFAAqF,CAAC;AAC9H,OAAO,EACL,KAAK,UAAU,EAEhB,MAAM,4GAA4G,CAAC;AAKpH,OAAO,EAAE,aAAa,EAAE,MAAM,iGAAiG,CAAC;AAChI,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gEAAgE,CAAC;AAC7G,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,0FAA0F,CAAC;AAC1I,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iFAAiF,CAAC;AAOxH,eAAO,MAAM,8BAA8B,2BACjB,yBAAyB,WACxC,sBAAsB,mBACd,mCAAmC,aACzC,uCAAuC,iBACnC,OAAO,sCACc,2CAA2C,EAAE,uBAC5D,kBAAkB,EAAE,iBAC1B,IAAI,MAAM,EAAE,UAAU,CAAC,KACrC,iBAsBF,CAAC;AAEF,eAAO,MAAM,4BAA4B,mBACvB,uCAAuC,KACtD,IAwBF,CAAC;AAEF,eAAO,MAAM,+BAA+B,cAC/B,gBAAgB,WAClB,sBAAsB,KAC9B,aAcF,CAAC"}
@@ -20,15 +20,16 @@ import { ColumnExplicitReference } from '../../../../../../../metamodels/pure/pa
20
20
  import { FilterMapping } from '../../../../../../../metamodels/pure/packageableElements/store/relational/mapping/FilterMapping';
21
21
  import { V1_ProtocolToMetaModelPropertyMappingBuilder } from '../../../../transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder';
22
22
  import { V1_buildElementWithJoinsJoinTreeNode, V1_buildRelationalOperationElement, } from './V1_DatabaseBuilderHelper';
23
- export const V1_buildRelationalClassMapping = (relationalClassMapping, context, base, topParent, parentMapping, embeddedRelationalPropertyMappings, enumerationMappings, tableAliasMap) => {
23
+ export const V1_buildRelationalClassMapping = (relationalClassMapping, context, immediateParent, topParent, parentMapping, embeddedRelationalPropertyMappings, enumerationMappings, tableAliasMap) => {
24
24
  const pureClass = relationalClassMapping.class
25
25
  ? context.resolveClass(relationalClassMapping.class)
26
- : base.class;
26
+ : immediateParent.class;
27
27
  // TODO localMappingProperties
28
- base.primaryKey = relationalClassMapping.primaryKey.map((key) => V1_buildRelationalOperationElement(key, context, tableAliasMap, []));
29
- base.propertyMappings = relationalClassMapping.propertyMappings.map((propertyMapping) => propertyMapping.accept_PropertyMappingVisitor(new V1_ProtocolToMetaModelPropertyMappingBuilder(context, base, topParent, enumerationMappings, tableAliasMap)));
30
- base.class = pureClass;
31
- return base;
28
+ immediateParent.primaryKey = relationalClassMapping.primaryKey.map((key) => V1_buildRelationalOperationElement(key, context, tableAliasMap, []));
29
+ immediateParent.propertyMappings =
30
+ relationalClassMapping.propertyMappings.map((propertyMapping) => propertyMapping.accept_PropertyMappingVisitor(new V1_ProtocolToMetaModelPropertyMappingBuilder(context, immediateParent, topParent, enumerationMappings, tableAliasMap)));
31
+ immediateParent.class = pureClass;
32
+ return immediateParent;
32
33
  };
33
34
  export const V1_buildRelationalPrimaryKey = (rootRelational) => {
34
35
  // TODO handle distinct
@@ -1 +1 @@
1
- {"version":3,"file":"V1_RelationalClassMappingBuilderHelper.js","sourceRoot":"","sources":["../../../../../../../../../src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"V1_RelationalClassMappingBuilderHelper.js","sourceRoot":"","sources":["../../../../../../../../../src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_RelationalClassMappingBuilderHelper.ts"],"names":[],"mappings":"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"}
@@ -205,7 +205,7 @@ class V1_ValueSpecificationPathResolver {
205
205
  }
206
206
  function V1_resolveElementPath(path, resolverFunc, resolver) {
207
207
  const resolvedPath = resolverFunc(path).value.path;
208
- // Note: this handles any system elements + primitve types already resolved. i.e String, ModelStore
208
+ // Note: this handles any system elements + primitive types already resolved. i.e String, ModelStore
209
209
  if (resolvedPath !== path) {
210
210
  resolver.hasModifiedLambda = true;
211
211
  }
@@ -1 +1 @@
1
- {"version":3,"file":"V1_ValueSpecificationPathResolver.js","sourceRoot":"","sources":["../../../../../../../../../src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"V1_ValueSpecificationPathResolver.js","sourceRoot":"","sources":["../../../../../../../../../src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-graph",
3
- "version": "1.0.5",
3
+ "version": "1.1.2",
4
4
  "description": "Legend metamodel graph",
5
5
  "keywords": [
6
6
  "legend",
@@ -38,18 +38,18 @@
38
38
  "test:watch": "jest --watch"
39
39
  },
40
40
  "dependencies": {
41
- "@finos/legend-model-storage": "0.0.16",
42
- "@finos/legend-shared": "1.1.2",
43
- "mobx": "6.3.13",
44
- "mobx-react-lite": "3.2.3",
41
+ "@finos/legend-model-storage": "0.0.19",
42
+ "@finos/legend-shared": "1.2.1",
43
+ "mobx": "6.4.1",
44
+ "mobx-react-lite": "3.3.0",
45
45
  "react": "17.0.2",
46
46
  "serializr": "2.0.5"
47
47
  },
48
48
  "devDependencies": {
49
- "@finos/legend-dev-utils": "0.3.8",
49
+ "@finos/legend-dev-utils": "0.3.10",
50
50
  "cross-env": "7.0.3",
51
- "eslint": "8.8.0",
52
- "jest": "27.4.7",
51
+ "eslint": "8.9.0",
52
+ "jest": "27.5.1",
53
53
  "npm-run-all": "4.1.5",
54
54
  "rimraf": "3.0.2",
55
55
  "typescript": "4.5.5"
@@ -14,7 +14,10 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import type { ExecutionResult } from './action/execution/ExecutionResult';
17
+ import type {
18
+ ExecutionResult,
19
+ EXECUTION_SERIALIZATION_FORMAT,
20
+ } from './action/execution/ExecutionResult';
18
21
  import type { ServiceRegistrationResult } from './action/service/ServiceRegistrationResult';
19
22
  import type { Service } from '../models/metamodels/pure/packageableElements/service/Service';
20
23
  import type {
@@ -73,6 +76,15 @@ export interface GraphBuilderOptions {
73
76
  TEMPORARY__disableRawLambdaResolver?: boolean;
74
77
  }
75
78
 
79
+ export interface ExecutionOptions {
80
+ /**
81
+ * Use lossless algorithm while parsing the execution result object.
82
+ * NOTE: This will result in numeric values being stored as object instead of primitive type number values.
83
+ */
84
+ useLosslessParse?: boolean | undefined;
85
+ serializationFormat?: EXECUTION_SERIALIZATION_FORMAT | undefined;
86
+ }
87
+
76
88
  export abstract class AbstractPureGraphManager {
77
89
  pluginManager: GraphPluginManager;
78
90
  log: Log;
@@ -249,11 +261,7 @@ export abstract class AbstractPureGraphManager {
249
261
  lambda: RawLambda,
250
262
  runtime: Runtime,
251
263
  clientVersion: string,
252
- /**
253
- * Use lossless algorithm while parsing the execution result object.
254
- * NOTE: This will result in numeric values being stored as object instead of primitive type number values.
255
- */
256
- lossless: boolean,
264
+ options?: ExecutionOptions,
257
265
  ): Promise<ExecutionResult>;
258
266
 
259
267
  abstract generateMappingTestData(
@@ -23,6 +23,11 @@ export enum BuilderType {
23
23
  JSON_BUILDER = 'json',
24
24
  }
25
25
 
26
+ // TODO: Refactor to use external format (https://github.com/finos/legend-studio/issues/732)
27
+ export enum EXECUTION_SERIALIZATION_FORMAT {
28
+ CSV = 'CSV',
29
+ }
30
+
26
31
  export class ResultBuilder {
27
32
  _type: BuilderType;
28
33
 
@@ -45,6 +50,15 @@ export class JsonExecutionResult extends ExecutionResult {
45
50
  values!: object;
46
51
  }
47
52
 
53
+ export class RawExecutionResult extends ExecutionResult {
54
+ value!: string;
55
+
56
+ constructor(content: string) {
57
+ super();
58
+ this.value = content;
59
+ }
60
+ }
61
+
48
62
  // TDS
49
63
  export class TDSColumn {
50
64
  name!: string;
package/src/index.ts CHANGED
@@ -181,6 +181,8 @@ export * from './graphManager/DSLGenerationSpecification_PureGraphManagerPlugin_
181
181
  export {
182
182
  ExecutionResult,
183
183
  TdsExecutionResult,
184
+ RawExecutionResult,
185
+ EXECUTION_SERIALIZATION_FORMAT,
184
186
  } from './graphManager/action/execution/ExecutionResult';
185
187
  export * from './graphManager/action/execution/ExecutionResultHelper';
186
188
  export * from './graphManager/PureGraphManagerPlugin';
@@ -67,9 +67,11 @@ export abstract class PropertyMapping implements Hashable, Stubable {
67
67
  owner: PropertyMappingsImplementation; // the immediate parent instance set implementation that holds the property mappings
68
68
  // NOTE: in case the holder of this property mapping is an embedded property mapping, that embedded property mapping is considered the source
69
69
  // otherwise, it is always the top/root `InstanceSetImplementation` that is considered the source implementation
70
+ // TODO: change this to use `SetImplemenetationReference`
70
71
  sourceSetImplementation: SetImplementation;
71
72
  // NOTE: in Pure, we actually only store `targetId` and `sourceId` instead of the reference
72
73
  // but for convenience and graph completeness validation purpose we will resolve to the actual set implementations here
74
+ // TODO: change this to use `OptionalSetImplemenetationReference`
73
75
  targetSetImplementation?: SetImplementation | undefined;
74
76
  localMappingProperty?: LocalMappingPropertyInfo | undefined;
75
77
  // store?: Store | undefined;
@@ -18,9 +18,12 @@ import { observable, action, computed, makeObservable } from 'mobx';
18
18
  import { hashArray, type Hashable } from '@finos/legend-shared';
19
19
  import { fromElementPathToMappingElementId } from '../../../../../MetaModelUtils';
20
20
  import { CORE_HASH_STRUCTURE } from '../../../../../MetaModelConst';
21
- import type { PackageableElementReference } from '../PackageableElementReference';
21
+ import {
22
+ PackageableElementExplicitReference,
23
+ type PackageableElementReference,
24
+ } from '../PackageableElementReference';
22
25
  import type { PropertyOwnerImplementation } from './PropertyOwnerImplementation';
23
- import type { Class } from '../domain/Class';
26
+ import { Class } from '../domain/Class';
24
27
  import type { Mapping, MappingElementLabel } from './Mapping';
25
28
  import type { Stubable } from '../../../../../helpers/Stubable';
26
29
  import type { OperationSetImplementation } from './OperationSetImplementation';
@@ -29,8 +32,14 @@ import type { FlatDataInstanceSetImplementation } from '../store/flatData/mappin
29
32
  import type { EmbeddedFlatDataPropertyMapping } from '../store/flatData/mapping/EmbeddedFlatDataPropertyMapping';
30
33
  import type { RelationalInstanceSetImplementation } from '../store/relational/mapping/RelationalInstanceSetImplementation';
31
34
  import type { RootRelationalInstanceSetImplementation } from '../store/relational/mapping/RootRelationalInstanceSetImplementation';
32
- import type { InferableMappingElementIdValue } from './InferableMappingElementId';
33
- import type { InferableMappingElementRoot } from './InferableMappingElementRoot';
35
+ import {
36
+ InferableMappingElementIdExplicitValue,
37
+ type InferableMappingElementIdValue,
38
+ } from './InferableMappingElementId';
39
+ import {
40
+ InferableMappingElementRootExplicitValue,
41
+ type InferableMappingElementRoot,
42
+ } from './InferableMappingElementRoot';
34
43
  import type { AggregationAwareSetImplementation } from './aggregationAware/AggregationAwareSetImplementation';
35
44
  import type { InstanceSetImplementation } from './InstanceSetImplementation';
36
45
 
@@ -58,6 +67,9 @@ export interface SetImplementationVisitor<T> {
58
67
  visit_AggregationAwareSetImplementation(
59
68
  setImplementation: AggregationAwareSetImplementation,
60
69
  ): T;
70
+ visit_TEMPORARY__UnresolvedSetImplementation(
71
+ setImplementation: TEMPORARY__UnresolvedSetImplementation,
72
+ ): T;
61
73
  }
62
74
 
63
75
  export abstract class SetImplementation
@@ -143,3 +155,28 @@ export enum SET_IMPLEMENTATION_TYPE {
143
155
  EMBEDDED_RELATIONAL = 'embeddedRelational',
144
156
  AGGREGATION_AWARE = 'aggregationAware',
145
157
  }
158
+
159
+ /* @MARKER: RELAXED GRAPH CHECK - See https://github.com/finos/legend-studio/issues/880 */
160
+ /**
161
+ * When set implementation cannot be resolved by ID,
162
+ * we try to avoid failing graph building for now
163
+ * instead, we will leave this loose end unresolved.
164
+ *
165
+ * NOTE: this is just a temporary solutions until we make this a hard-fail post migration.
166
+ *
167
+ * See https://github.com/finos/legend-studio/issues/880
168
+ */
169
+ export class TEMPORARY__UnresolvedSetImplementation extends SetImplementation {
170
+ constructor(id: string, parent: Mapping) {
171
+ super(
172
+ InferableMappingElementIdExplicitValue.create(id, ''),
173
+ parent,
174
+ PackageableElementExplicitReference.create(new Class('')),
175
+ InferableMappingElementRootExplicitValue.create(false),
176
+ );
177
+ }
178
+
179
+ accept_SetImplementationVisitor<T>(visitor: SetImplementationVisitor<T>): T {
180
+ return visitor.visit_TEMPORARY__UnresolvedSetImplementation(this);
181
+ }
182
+ }
@@ -24,7 +24,7 @@ import {
24
24
  import type { GroupByMapping } from '../mapping/GroupByMapping';
25
25
  import type { FilterMapping } from '../mapping/FilterMapping';
26
26
  import type { JoinReference } from './JoinReference';
27
- import { TableReference } from './TableReference';
27
+ import type { TableReference } from './TableReference';
28
28
  import type { ViewReference } from './ViewReference';
29
29
  import type { ColumnReference } from './ColumnReference';
30
30
  import type { Database } from './Database';
@@ -241,9 +241,8 @@ export class TableAliasColumn extends RelationalOperationElement {
241
241
  get hashCode(): string {
242
242
  return hashArray([
243
243
  CORE_HASH_STRUCTURE.RELATIONAL_OPERATION_TABLE_ALIAS_COLUMN,
244
- this.alias.isSelfJoinTarget &&
245
- this.alias.relation instanceof TableReference
246
- ? this.alias.relation.selJoinPointerHashCode
244
+ this.alias.isSelfJoinTarget
245
+ ? this.alias.relation.selfJoinPointerHashCode
247
246
  : this.alias.relation.pointerHashCode,
248
247
  this.alias.isSelfJoinTarget ? SELF_JOIN_TABLE_NAME : this.alias.name,
249
248
  this.column.value.name,
@@ -49,7 +49,7 @@ export abstract class TableReference extends NamedRelationalReference {
49
49
  value: observable,
50
50
  setValue: action,
51
51
  pointerHashCode: computed,
52
- selJoinPointerHashCode: computed,
52
+ selfJoinPointerHashCode: computed,
53
53
  });
54
54
 
55
55
  this.value = value;
@@ -71,7 +71,7 @@ export abstract class TableReference extends NamedRelationalReference {
71
71
  .join(',');
72
72
  }
73
73
 
74
- get selJoinPointerHashCode(): string {
74
+ get selfJoinPointerHashCode(): string {
75
75
  return [
76
76
  CORE_HASH_STRUCTURE.RELATIONAL_OPERATION_TABLE_POINTER,
77
77
  this.ownerReference.hashValue,
@@ -25,6 +25,7 @@ import {
25
25
  import type { Database } from './Database';
26
26
  import type { View } from './View';
27
27
  import { NamedRelationalReference } from './TableReference';
28
+ import { SELF_JOIN_SCHEMA_NAME, SELF_JOIN_TABLE_NAME } from './Join';
28
29
 
29
30
  export abstract class ViewReference extends NamedRelationalReference {
30
31
  value: View;
@@ -39,6 +40,7 @@ export abstract class ViewReference extends NamedRelationalReference {
39
40
  value: observable,
40
41
  setValue: action,
41
42
  pointerHashCode: computed,
43
+ selfJoinPointerHashCode: computed,
42
44
  });
43
45
 
44
46
  this.value = value;
@@ -59,6 +61,17 @@ export abstract class ViewReference extends NamedRelationalReference {
59
61
  .map(hashString)
60
62
  .join(',');
61
63
  }
64
+
65
+ get selfJoinPointerHashCode(): string {
66
+ return [
67
+ CORE_HASH_STRUCTURE.RELATIONAL_OPERATION_TABLE_POINTER,
68
+ this.ownerReference.hashValue,
69
+ SELF_JOIN_SCHEMA_NAME,
70
+ SELF_JOIN_TABLE_NAME,
71
+ ]
72
+ .map(hashString)
73
+ .join(',');
74
+ }
62
75
  }
63
76
 
64
77
  export class ViewExplicitReference extends ViewReference {
@@ -43,6 +43,7 @@ import {
43
43
  AbstractPureGraphManager,
44
44
  type TEMP__EngineSetupConfig,
45
45
  type GraphBuilderOptions,
46
+ type ExecutionOptions,
46
47
  } from '../../../../graphManager/AbstractPureGraphManager';
47
48
  import type { Mapping } from '../../../metamodels/pure/packageableElements/mapping/Mapping';
48
49
  import type { Runtime } from '../../../metamodels/pure/packageableElements/runtime/Runtime';
@@ -1852,7 +1853,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1852
1853
  lambda: RawLambda,
1853
1854
  runtime: Runtime,
1854
1855
  clientVersion: string,
1855
- useLosslessParse: boolean,
1856
+ options?: ExecutionOptions,
1856
1857
  ): Promise<ExecutionResult> {
1857
1858
  return V1_buildExecutionResult(
1858
1859
  await this.engine.executeMapping(
@@ -1863,7 +1864,7 @@ export class V1_PureGraphManager extends AbstractPureGraphManager {
1863
1864
  runtime,
1864
1865
  clientVersion,
1865
1866
  ),
1866
- useLosslessParse,
1867
+ options,
1867
1868
  ),
1868
1869
  );
1869
1870
  }
@@ -25,6 +25,7 @@ import {
25
25
  mergeObjects,
26
26
  HttpStatus,
27
27
  NetworkClientError,
28
+ returnUndefOnError,
28
29
  } from '@finos/legend-shared';
29
30
  import { GRAPH_MANAGER_LOG_EVENT } from '../../../../../graphManager/GraphManagerLogEvent';
30
31
  import {
@@ -90,6 +91,7 @@ import { serialize } from 'serializr';
90
91
  import { V1_ExecutionError } from './execution/V1_ExecutionError';
91
92
  import { V1_PureModelContextText } from '../model/context/V1_PureModelContextText';
92
93
  import { V1_QuerySearchSpecification } from './query/V1_QuerySearchSpecification';
94
+ import type { ExecutionOptions } from '../../../../../graphManager/AbstractPureGraphManager';
93
95
 
94
96
  class V1_EngineConfig extends TEMP__AbstractEngineConfig {
95
97
  private engine: V1_Engine;
@@ -403,20 +405,24 @@ export class V1_Engine {
403
405
 
404
406
  async executeMapping(
405
407
  input: V1_ExecuteInput,
406
- useLosslessParse: boolean,
408
+ options?: ExecutionOptions,
407
409
  ): Promise<V1_ExecutionResult> {
408
410
  try {
409
411
  const executionResultInText = await (
410
412
  (await this.engineServerClient.execute(
411
413
  V1_ExecuteInput.serialization.toJson(input),
412
- true,
414
+ {
415
+ returnResultAsText: true,
416
+ serializationFormat: options?.serializationFormat,
417
+ },
413
418
  )) as Response
414
419
  ).text();
415
- return V1_serializeExecutionResult(
416
- useLosslessParse
420
+ const rawExecutionResult = (returnUndefOnError(() =>
421
+ options?.useLosslessParse
417
422
  ? losslessParse(executionResultInText)
418
423
  : JSON.parse(executionResultInText),
419
- );
424
+ ) ?? executionResultInText) as PlainObject<V1_ExecutionResult> | string;
425
+ return V1_serializeExecutionResult(rawExecutionResult);
420
426
  } catch (error) {
421
427
  assertErrorThrown(error);
422
428
  if (error instanceof NetworkClientError) {
@@ -47,6 +47,7 @@ import type { V1_LightQuery, V1_Query } from './query/V1_Query';
47
47
  import type { V1_ServiceStorage } from './service/V1_ServiceStorage';
48
48
  import type { GenerationMode } from '../../../../../graphManager/action/generation/GenerationConfigurationDescription';
49
49
  import type { V1_QuerySearchSpecification } from './query/V1_QuerySearchSpecification';
50
+ import type { EXECUTION_SERIALIZATION_FORMAT } from '../../../../../graphManager/action/execution/ExecutionResult';
50
51
 
51
52
  enum CORE_ENGINE_TRACER_SPAN {
52
53
  GRAMMAR_TO_JSON = 'transform Pure code to protocol',
@@ -269,7 +270,10 @@ export class V1_EngineServerClient extends AbstractServerClient {
269
270
  _execution = (): string => `${this._pure()}/execution`;
270
271
  execute = (
271
272
  input: PlainObject<V1_ExecuteInput>,
272
- returnResultAsText?: boolean,
273
+ options?: {
274
+ returnResultAsText?: boolean;
275
+ serializationFormat?: EXECUTION_SERIALIZATION_FORMAT | undefined;
276
+ },
273
277
  ): Promise<PlainObject<V1_ExecutionResult> | Response> =>
274
278
  this.postWithTracing(
275
279
  this.getTraceData(CORE_ENGINE_TRACER_SPAN.EXECUTE),
@@ -277,9 +281,11 @@ export class V1_EngineServerClient extends AbstractServerClient {
277
281
  input,
278
282
  {},
279
283
  undefined,
280
- undefined,
284
+ {
285
+ serializationFormat: options?.serializationFormat,
286
+ },
281
287
  { enableCompression: true },
282
- { skipProcessing: Boolean(returnResultAsText) },
288
+ { skipProcessing: Boolean(options?.returnResultAsText) },
283
289
  );
284
290
 
285
291
  generatePlan = (
@@ -27,6 +27,7 @@ import {
27
27
  TdsExecutionResult,
28
28
  TdsBuilder,
29
29
  TDSColumn,
30
+ RawExecutionResult,
30
31
  } from '../../../../../graphManager/action/execution/ExecutionResult';
31
32
  import {
32
33
  type V1_ExecutionResult,
@@ -35,6 +36,7 @@ import {
35
36
  V1_JsonExecutionResult,
36
37
  V1_INTERNAL__UnknownExecutionResult,
37
38
  V1_TdsExecutionResult,
39
+ V1_RawExecutionResult,
38
40
  } from './execution/V1_ExecutionResult';
39
41
 
40
42
  const buildJSONExecutionResult = (
@@ -113,6 +115,8 @@ export const V1_buildExecutionResult = (
113
115
  return buildTDSExecutionResult(protocol);
114
116
  } else if (protocol instanceof V1_JsonExecutionResult) {
115
117
  return buildJSONExecutionResult(protocol);
118
+ } else if (protocol instanceof V1_RawExecutionResult) {
119
+ return new RawExecutionResult(protocol.value);
116
120
  } else if (protocol instanceof V1_INTERNAL__UnknownExecutionResult) {
117
121
  return new INTERNAL__UnknownExecutionResult(protocol.content);
118
122
  }
@@ -19,6 +19,7 @@ import {
19
19
  type PlainObject,
20
20
  SerializationFactory,
21
21
  usingModelSchema,
22
+ isString,
22
23
  } from '@finos/legend-shared';
23
24
  import { BuilderType } from '../../../../../../graphManager/action/execution/ExecutionResult';
24
25
 
@@ -101,6 +102,15 @@ export class V1_ClassExecutionResult extends V1_ExecutionResult {
101
102
  );
102
103
  }
103
104
 
105
+ export class V1_RawExecutionResult extends V1_ExecutionResult {
106
+ value: string;
107
+
108
+ constructor(value: string) {
109
+ super();
110
+ this.value = value;
111
+ }
112
+ }
113
+
104
114
  export class V1_INTERNAL__UnknownExecutionResult extends V1_ExecutionResult {
105
115
  content: object;
106
116
 
@@ -111,8 +121,11 @@ export class V1_INTERNAL__UnknownExecutionResult extends V1_ExecutionResult {
111
121
  }
112
122
 
113
123
  export const V1_serializeExecutionResult = (
114
- value: PlainObject<V1_ExecutionResult>,
124
+ value: PlainObject<V1_ExecutionResult> | string,
115
125
  ): V1_ExecutionResult => {
126
+ if (isString(value)) {
127
+ return new V1_RawExecutionResult(value);
128
+ }
116
129
  switch ((value.builder as PlainObject<V1_ResultBuilder>)._type) {
117
130
  case BuilderType.CLASS_BUILDER:
118
131
  return V1_ClassExecutionResult.serialization.fromJson(value);
@@ -15,6 +15,7 @@
15
15
  */
16
16
 
17
17
  import {
18
+ IllegalStateError,
18
19
  isNonNullable,
19
20
  recursiveOmit,
20
21
  UnsupportedOperationError,
@@ -23,6 +24,7 @@ import type { Mapping } from '../../../../../../metamodels/pure/packageableEleme
23
24
  import type {
24
25
  SetImplementationVisitor,
25
26
  SetImplementation,
27
+ TEMPORARY__UnresolvedSetImplementation,
26
28
  } from '../../../../../../metamodels/pure/packageableElements/mapping/SetImplementation';
27
29
  import type {
28
30
  PropertyMappingVisitor,
@@ -1058,7 +1060,8 @@ export class V1_SetImplementationTransformer
1058
1060
  visit_EmbeddedFlatDataSetImplementation(
1059
1061
  setImplementation: EmbeddedFlatDataPropertyMapping,
1060
1062
  ): V1_ClassMapping | undefined {
1061
- // FIXME?
1063
+ // NOTE: we currently don't support this and flat-data would probably be deprecated
1064
+ // in the future in favor of schema-set/binding
1062
1065
  return undefined;
1063
1066
  }
1064
1067
 
@@ -1080,6 +1083,15 @@ export class V1_SetImplementationTransformer
1080
1083
  this.context,
1081
1084
  );
1082
1085
  }
1086
+
1087
+ /* @MARKER: RELAXED GRAPH CHECK - See https://github.com/finos/legend-studio/issues/880 */
1088
+ visit_TEMPORARY__UnresolvedSetImplementation(
1089
+ setImplementation: TEMPORARY__UnresolvedSetImplementation,
1090
+ ): V1_ClassMapping | undefined {
1091
+ throw new IllegalStateError(
1092
+ `Can't transform unresolved set implementation. This type of set implementation should only show up in references.`,
1093
+ );
1094
+ }
1083
1095
  }
1084
1096
 
1085
1097
  function transformSetImplementation(
@@ -97,7 +97,7 @@ export class V1_ProtocolToMetaModelGraphSecondPassBuilder
97
97
  const uniqueStereotypes = new Set<string>();
98
98
  profile.stereotypes = element.stereotypes.map((stereotype) => {
99
99
  if (uniqueStereotypes.has(stereotype)) {
100
- /* @MARKER: Temporary until we resolve https://github.com/finos/legend-studio/issues/660 */
100
+ /* @MARKER: RELAXED GRAPH CHECK - See https://github.com/finos/legend-studio/issues/660 */
101
101
  this.context.log.warn(
102
102
  LogEvent.create(
103
103
  `Found duplicated stereotype '${stereotype}' in profile '${element.path}'`,
@@ -110,7 +110,7 @@ export class V1_ProtocolToMetaModelGraphSecondPassBuilder
110
110
  const uniqueTags = new Set<string>();
111
111
  profile.tags = element.tags.map((tag) => {
112
112
  if (uniqueTags.has(tag)) {
113
- /* @MARKER: Temporary until we resolve https://github.com/finos/legend-studio/issues/660 */
113
+ /* @MARKER: RELAXED GRAPH CHECK - See https://github.com/finos/legend-studio/issues/660 */
114
114
  this.context.log.warn(
115
115
  LogEvent.create(
116
116
  `Found duplicated tag '${tag}' in profile '${element.path}'`,
@@ -138,7 +138,7 @@ export class V1_ProtocolToMetaModelGraphSecondPassBuilder
138
138
  `Enum value 'value' field is missing or empty`,
139
139
  );
140
140
  if (uniqueEnumValues.has(enumValue.value)) {
141
- /* @MARKER: Temporary until we resolve https://github.com/finos/legend-studio/issues/660 */
141
+ /* @MARKER: RELAXED GRAPH CHECK - See https://github.com/finos/legend-studio/issues/660 */
142
142
  this.context.log.warn(
143
143
  LogEvent.create(
144
144
  `Found duplicated value '${enumValue.value}' in enumeration '${enumeration.path}'`,
@@ -109,7 +109,7 @@ export class V1_ProtocolToMetaModelGraphThirdPassBuilder
109
109
  const uniqueProperties = new Set<string>();
110
110
  element.properties.forEach((property) => {
111
111
  if (uniqueProperties.has(property.name)) {
112
- /* @MARKER: Temporary until we resolve https://github.com/finos/legend-studio/issues/660 */
112
+ /* @MARKER: RELAXED GRAPH CHECK - See https://github.com/finos/legend-studio/issues/660 */
113
113
  this.context.log.warn(
114
114
  LogEvent.create(
115
115
  `Found duplicated property '${property.name}' in class '${_class.path}'`,
@@ -132,7 +132,7 @@ export class V1_ProtocolToMetaModelGraphThirdPassBuilder
132
132
  const first = guaranteeNonNullable(element.properties[0]);
133
133
  const second = guaranteeNonNullable(element.properties[1]);
134
134
  if (first.name === second.name) {
135
- /* @MARKER: Temporary until we resolve https://github.com/finos/legend-studio/issues/660 */
135
+ /* @MARKER: RELAXED GRAPH CHECK - See https://github.com/finos/legend-studio/issues/660 */
136
136
  this.context.log.warn(
137
137
  LogEvent.create(
138
138
  `Found duplicated property '${element.properties[0]?.name}' in association '${element.name}'`,