@finos/legend-graph 32.1.52 → 32.1.54
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/lib/__lib__/GraphManagerEvent.d.ts +2 -1
- package/lib/__lib__/GraphManagerEvent.d.ts.map +1 -1
- package/lib/__lib__/GraphManagerEvent.js +1 -0
- package/lib/__lib__/GraphManagerEvent.js.map +1 -1
- package/lib/graph/metamodel/pure/lineage/LineageModel.d.ts +85 -0
- package/lib/graph/metamodel/pure/lineage/LineageModel.d.ts.map +1 -0
- package/lib/graph/metamodel/pure/lineage/LineageModel.js +154 -0
- package/lib/graph/metamodel/pure/lineage/LineageModel.js.map +1 -0
- package/lib/graph-manager/AbstractPureGraphManager.d.ts +3 -0
- package/lib/graph-manager/AbstractPureGraphManager.d.ts.map +1 -1
- package/lib/graph-manager/AbstractPureGraphManager.js.map +1 -1
- package/lib/graph-manager/action/changeDetection/DataProductObserveHelper.d.ts.map +1 -1
- package/lib/graph-manager/action/changeDetection/DataProductObserveHelper.js +1 -0
- package/lib/graph-manager/action/changeDetection/DataProductObserveHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.d.ts +5 -0
- package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.js +28 -0
- package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/engine/V1_EngineServerClient.d.ts +2 -0
- package/lib/graph-manager/protocol/pure/v1/engine/V1_EngineServerClient.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/engine/V1_EngineServerClient.js +2 -0
- package/lib/graph-manager/protocol/pure/v1/engine/V1_EngineServerClient.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/engine/V1_GraphManagerEngine.d.ts +2 -0
- package/lib/graph-manager/protocol/pure/v1/engine/V1_GraphManagerEngine.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/engine/V1_RemoteEngine.d.ts +2 -0
- package/lib/graph-manager/protocol/pure/v1/engine/V1_RemoteEngine.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/engine/V1_RemoteEngine.js +4 -0
- package/lib/graph-manager/protocol/pure/v1/engine/V1_RemoteEngine.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_ConsumerEntitlements.d.ts +8 -0
- package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_ConsumerEntitlements.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_ConsumerEntitlements.js +9 -0
- package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_ConsumerEntitlements.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/lineage/V1_Lineage.d.ts +34 -0
- package/lib/graph-manager/protocol/pure/v1/model/lineage/V1_Lineage.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/model/lineage/V1_Lineage.js +40 -0
- package/lib/graph-manager/protocol/pure/v1/model/lineage/V1_Lineage.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DataProductTransformer.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DataProductTransformer.js +1 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DataProductTransformer.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DataProductSerializationHelper.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DataProductSerializationHelper.js +1 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DataProductSerializationHelper.js.map +1 -1
- package/lib/index.d.ts +3 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +3 -1
- package/lib/index.js.map +1 -1
- package/lib/package.json +1 -1
- package/package.json +1 -1
- package/src/__lib__/GraphManagerEvent.ts +1 -0
- package/src/graph/metamodel/pure/lineage/LineageModel.ts +186 -0
- package/src/graph-manager/AbstractPureGraphManager.ts +14 -0
- package/src/graph-manager/action/changeDetection/DataProductObserveHelper.ts +1 -0
- package/src/graph-manager/protocol/pure/v1/V1_PureGraphManager.ts +65 -0
- package/src/graph-manager/protocol/pure/v1/engine/V1_EngineServerClient.ts +15 -1
- package/src/graph-manager/protocol/pure/v1/engine/V1_GraphManagerEngine.ts +8 -0
- package/src/graph-manager/protocol/pure/v1/engine/V1_RemoteEngine.ts +12 -0
- package/src/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_ConsumerEntitlements.ts +9 -0
- package/src/graph-manager/protocol/pure/v1/model/lineage/V1_Lineage.ts +60 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DataProductTransformer.ts +1 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DataProductSerializationHelper.ts +1 -0
- package/src/index.ts +3 -1
- package/tsconfig.json +2 -0
|
@@ -90,6 +90,7 @@ import type { V1_CompleteCodeInput } from './compilation/V1_CompleteCodeInput.js
|
|
|
90
90
|
import type { DeploymentResult } from '../../../../action/DeploymentResult.js';
|
|
91
91
|
import type { PersistentDataCube } from '../../../../action/query/PersistentDataCube.js';
|
|
92
92
|
import { type V1_LambdaTdsToRelationInput } from './pureProtocol/V1_LambdaTdsToRelationInput.js';
|
|
93
|
+
import type { V1_RawLineageModel } from '../model/lineage/V1_Lineage.js';
|
|
93
94
|
|
|
94
95
|
enum CORE_ENGINE_ACTIVITY_TRACE {
|
|
95
96
|
GRAMMAR_TO_JSON = 'transform Pure code to protocol',
|
|
@@ -109,7 +110,7 @@ enum CORE_ENGINE_ACTIVITY_TRACE {
|
|
|
109
110
|
|
|
110
111
|
EXECUTE = 'execute',
|
|
111
112
|
GENERATE_EXECUTION_PLAN = 'generate execution plan',
|
|
112
|
-
|
|
113
|
+
GENERATE_LINEAGE = 'generate lineage',
|
|
113
114
|
GENERATE_ARTIFACTS = 'generate artifacts',
|
|
114
115
|
|
|
115
116
|
REGISTER_SERVICE = 'register service',
|
|
@@ -744,6 +745,19 @@ export class V1_EngineServerClient extends AbstractServerClient {
|
|
|
744
745
|
{ skipProcessing: Boolean(options?.returnAsResponse) },
|
|
745
746
|
);
|
|
746
747
|
|
|
748
|
+
generateLineage = (
|
|
749
|
+
input: PlainObject<V1_ExecuteInput>,
|
|
750
|
+
): Promise<PlainObject<V1_RawLineageModel>> =>
|
|
751
|
+
this.postWithTracing(
|
|
752
|
+
this.getTraceData(CORE_ENGINE_ACTIVITY_TRACE.GENERATE_LINEAGE),
|
|
753
|
+
`${this.baseUrl}/lineage/v1/function/fullAnalytics`,
|
|
754
|
+
this.debugPayload(input, CORE_ENGINE_ACTIVITY_TRACE.GENERATE_LINEAGE),
|
|
755
|
+
{},
|
|
756
|
+
undefined,
|
|
757
|
+
undefined,
|
|
758
|
+
{ enableCompression: true },
|
|
759
|
+
);
|
|
760
|
+
|
|
747
761
|
generatePlan = (
|
|
748
762
|
input: PlainObject<V1_ExecuteInput>,
|
|
749
763
|
): Promise<PlainObject<V1_ExecutionPlan>> =>
|
|
@@ -95,6 +95,10 @@ import type {
|
|
|
95
95
|
LightPersistentDataCube,
|
|
96
96
|
PersistentDataCube,
|
|
97
97
|
} from '../../../../action/query/PersistentDataCube.js';
|
|
98
|
+
import type {
|
|
99
|
+
V1_LineageInput,
|
|
100
|
+
V1_RawLineageModel,
|
|
101
|
+
} from '../model/lineage/V1_Lineage.js';
|
|
98
102
|
|
|
99
103
|
export interface V1_GraphManagerEngine {
|
|
100
104
|
config: TEMPORARY__AbstractEngineConfig;
|
|
@@ -237,6 +241,10 @@ export interface V1_GraphManagerEngine {
|
|
|
237
241
|
input: V1_ExecuteInput,
|
|
238
242
|
) => Promise<PlainObject<V1_ExecutionPlan>>;
|
|
239
243
|
|
|
244
|
+
generateLineage: (
|
|
245
|
+
input: V1_LineageInput,
|
|
246
|
+
) => Promise<PlainObject<V1_RawLineageModel>>;
|
|
247
|
+
|
|
240
248
|
debugExecutionPlanGeneration: (
|
|
241
249
|
input: V1_ExecuteInput,
|
|
242
250
|
) => Promise<{ plan: PlainObject<V1_ExecutionPlan>; debug: string[] }>;
|
|
@@ -168,6 +168,10 @@ import {
|
|
|
168
168
|
} from '../../../../action/query/PersistentDataCube.js';
|
|
169
169
|
import { V1_getGenericTypeFullPath } from '../helpers/V1_DomainHelper.js';
|
|
170
170
|
import { V1_relationTypeModelSchema } from '../transformation/pureProtocol/serializationHelpers/V1_TypeSerializationHelper.js';
|
|
171
|
+
import {
|
|
172
|
+
type V1_RawLineageModel,
|
|
173
|
+
V1_LineageInput,
|
|
174
|
+
} from '../model/lineage/V1_Lineage.js';
|
|
171
175
|
|
|
172
176
|
class V1_RemoteEngineConfig extends TEMPORARY__AbstractEngineConfig {
|
|
173
177
|
private engine: V1_RemoteEngine;
|
|
@@ -910,6 +914,14 @@ export class V1_RemoteEngine implements V1_GraphManagerEngine {
|
|
|
910
914
|
);
|
|
911
915
|
}
|
|
912
916
|
|
|
917
|
+
generateLineage(
|
|
918
|
+
input: V1_LineageInput,
|
|
919
|
+
): Promise<PlainObject<V1_RawLineageModel>> {
|
|
920
|
+
return this.engineServerClient.generateLineage(
|
|
921
|
+
V1_LineageInput.serialization.toJson(input),
|
|
922
|
+
);
|
|
923
|
+
}
|
|
924
|
+
|
|
913
925
|
debugExecutionPlanGeneration(
|
|
914
926
|
input: V1_ExecuteInput,
|
|
915
927
|
): Promise<{ plan: PlainObject<V1_ExecutionPlan>; debug: string[] }> {
|
package/src/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_ConsumerEntitlements.ts
CHANGED
|
@@ -91,6 +91,15 @@ export enum V1_UserApprovalStatus {
|
|
|
91
91
|
CLOSED = 'CLOSED',
|
|
92
92
|
}
|
|
93
93
|
|
|
94
|
+
export enum V1_EnrichedUserApprovalStatus {
|
|
95
|
+
PENDING_CONSUMER_PRIVILEGE_MANAGER_APPROVAL = 'PENDING_CONSUMER_PRIVILEGE_MANAGER_APPROVAL',
|
|
96
|
+
PENDING_DATA_OWNER_APPROVAL = 'PENDING_DATA_OWNER_APPROVAL',
|
|
97
|
+
APPROVED = 'APPROVED',
|
|
98
|
+
DENIED = 'DENIED',
|
|
99
|
+
REVOKED = 'REVOKED',
|
|
100
|
+
CLOSED = 'CLOSED',
|
|
101
|
+
}
|
|
102
|
+
|
|
94
103
|
export enum V1_ContractState {
|
|
95
104
|
DRAFT = 'DRAFT',
|
|
96
105
|
PENDING_DATA_OWNER_APPROVAL = 'PENDING_DATA_OWNER_APPROVAL',
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2020-present, Goldman Sachs
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
import { SerializationFactory, usingModelSchema } from '@finos/legend-shared';
|
|
18
|
+
import type { V1_PureModelContext } from '../context/V1_PureModelContext.js';
|
|
19
|
+
import type { V1_Runtime } from '../packageableElements/runtime/V1_Runtime.js';
|
|
20
|
+
import type { V1_RawLambda } from '../rawValueSpecification/V1_RawLambda.js';
|
|
21
|
+
import {
|
|
22
|
+
createModelSchema,
|
|
23
|
+
custom,
|
|
24
|
+
optional,
|
|
25
|
+
primitive,
|
|
26
|
+
SKIP,
|
|
27
|
+
} from 'serializr';
|
|
28
|
+
import { V1_pureModelContextPropSchema } from '../../transformation/pureProtocol/V1_PureProtocolSerialization.js';
|
|
29
|
+
import {
|
|
30
|
+
V1_deserializeRuntime,
|
|
31
|
+
V1_serializeRuntime,
|
|
32
|
+
} from '../../transformation/pureProtocol/serializationHelpers/V1_RuntimeSerializationHelper.js';
|
|
33
|
+
import { V1_rawLambdaModelSchema } from '../../transformation/pureProtocol/serializationHelpers/V1_RawValueSpecificationSerializationHelper.js';
|
|
34
|
+
|
|
35
|
+
export type V1_RawLineageModel = object;
|
|
36
|
+
export class V1_LineageInput {
|
|
37
|
+
clientVersion: string | undefined;
|
|
38
|
+
/**
|
|
39
|
+
* Studio does not process value specification, they are left in raw JSON form
|
|
40
|
+
*
|
|
41
|
+
* @discrepancy model
|
|
42
|
+
*/
|
|
43
|
+
function!: V1_RawLambda;
|
|
44
|
+
mapping: string | undefined;
|
|
45
|
+
model!: V1_PureModelContext;
|
|
46
|
+
runtime: V1_Runtime | undefined;
|
|
47
|
+
|
|
48
|
+
static readonly serialization = new SerializationFactory(
|
|
49
|
+
createModelSchema(V1_LineageInput, {
|
|
50
|
+
clientVersion: optional(primitive()),
|
|
51
|
+
function: usingModelSchema(V1_rawLambdaModelSchema),
|
|
52
|
+
mapping: optional(primitive()),
|
|
53
|
+
model: V1_pureModelContextPropSchema,
|
|
54
|
+
runtime: custom(
|
|
55
|
+
(val) => (val ? V1_serializeRuntime(val) : SKIP),
|
|
56
|
+
(val) => (val ? V1_deserializeRuntime(val) : SKIP),
|
|
57
|
+
),
|
|
58
|
+
}),
|
|
59
|
+
);
|
|
60
|
+
}
|
|
@@ -45,6 +45,7 @@ const transformAccessPoint = (
|
|
|
45
45
|
lake.func = V1_transformRawLambda(ap.func, context);
|
|
46
46
|
lake.targetEnvironment = ap.targetEnvironment;
|
|
47
47
|
lake.classification = ap.classification;
|
|
48
|
+
lake.reproducible = ap.reproducible;
|
|
48
49
|
return lake;
|
|
49
50
|
} else if (ap instanceof UnknownAccessPoint) {
|
|
50
51
|
const un = new V1_UnknownAccessPoint();
|
package/src/index.ts
CHANGED
|
@@ -280,6 +280,7 @@ export {
|
|
|
280
280
|
V1_DataContract,
|
|
281
281
|
V1_DataContractApprovedUsersResponse,
|
|
282
282
|
V1_DataContractsResponse,
|
|
283
|
+
V1_EnrichedUserApprovalStatus,
|
|
283
284
|
V1_PendingTasksRespond,
|
|
284
285
|
V1_ResourceType,
|
|
285
286
|
V1_TaskMetadata,
|
|
@@ -340,6 +341,7 @@ export {
|
|
|
340
341
|
V1_DataSubscriptionResponseModelSchema,
|
|
341
342
|
} from './graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_SubscriptionSerializationHelper.js';
|
|
342
343
|
export { V1_deserializeIngestEnvironment } from './graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_IngestSerializationHelper.js';
|
|
344
|
+
export * from './graph-manager/protocol/pure/v1/model/lineage/V1_Lineage.js';
|
|
343
345
|
|
|
344
346
|
// --------------------------------------------- EXECUTION PLAN --------------------------------------------------
|
|
345
347
|
|
|
@@ -350,7 +352,7 @@ export {
|
|
|
350
352
|
PersistentDataCube,
|
|
351
353
|
LightPersistentDataCube,
|
|
352
354
|
} from './graph-manager/action/query/PersistentDataCube.js';
|
|
353
|
-
|
|
355
|
+
export * from './graph/metamodel/pure/lineage/LineageModel.js';
|
|
354
356
|
export * from './graph/metamodel/pure/executionPlan/ExecutionPlan.js';
|
|
355
357
|
export { ExecutionNode } from './graph/metamodel/pure/executionPlan/nodes/ExecutionNode.js';
|
|
356
358
|
export { FunctionParametersValidationNode } from './graph/metamodel/pure/executionPlan/nodes/FunctionParametersValidationNode.js';
|
package/tsconfig.json
CHANGED
|
@@ -140,6 +140,7 @@
|
|
|
140
140
|
"./src/graph/metamodel/pure/functionActivator/PostDeploymentProperties.ts",
|
|
141
141
|
"./src/graph/metamodel/pure/functionActivator/SnowflakeAppDeploymentConfiguration.ts",
|
|
142
142
|
"./src/graph/metamodel/pure/functionActivator/SnowflakeM2MUdfDeploymentConfiguration.ts",
|
|
143
|
+
"./src/graph/metamodel/pure/lineage/LineageModel.ts",
|
|
143
144
|
"./src/graph/metamodel/pure/packageableElements/INTERNAL__UnknownElement.ts",
|
|
144
145
|
"./src/graph/metamodel/pure/packageableElements/INTERNAL__UnknownPackageableElement.ts",
|
|
145
146
|
"./src/graph/metamodel/pure/packageableElements/PackageableElement.ts",
|
|
@@ -565,6 +566,7 @@
|
|
|
565
566
|
"./src/graph-manager/protocol/pure/v1/model/executionPlan/results/V1_TDSColumn.ts",
|
|
566
567
|
"./src/graph-manager/protocol/pure/v1/model/executionPlan/results/V1_TDSResultType.ts",
|
|
567
568
|
"./src/graph-manager/protocol/pure/v1/model/executionPlan/results/V1_VoidResultType.ts",
|
|
569
|
+
"./src/graph-manager/protocol/pure/v1/model/lineage/V1_Lineage.ts",
|
|
568
570
|
"./src/graph-manager/protocol/pure/v1/model/packageableElements/V1_INTERNAL__UnknownElement.ts",
|
|
569
571
|
"./src/graph-manager/protocol/pure/v1/model/packageableElements/V1_INTERNAL__UnknownPackageableElement.ts",
|
|
570
572
|
"./src/graph-manager/protocol/pure/v1/model/packageableElements/V1_PackageableElement.ts",
|