pytrilogy 0.0.2.50__py3-none-any.whl → 0.0.2.51__py3-none-any.whl
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.
Potentially problematic release.
This version of pytrilogy might be problematic. Click here for more details.
- {pytrilogy-0.0.2.50.dist-info → pytrilogy-0.0.2.51.dist-info}/METADATA +1 -1
- {pytrilogy-0.0.2.50.dist-info → pytrilogy-0.0.2.51.dist-info}/RECORD +27 -25
- trilogy/__init__.py +1 -1
- trilogy/core/internal.py +5 -1
- trilogy/core/models.py +124 -263
- trilogy/core/processing/concept_strategies_v3.py +14 -4
- trilogy/core/processing/node_generators/basic_node.py +7 -3
- trilogy/core/processing/node_generators/common.py +8 -3
- trilogy/core/processing/node_generators/filter_node.py +5 -5
- trilogy/core/processing/node_generators/group_node.py +24 -8
- trilogy/core/processing/node_generators/multiselect_node.py +4 -3
- trilogy/core/processing/node_generators/node_merge_node.py +14 -2
- trilogy/core/processing/node_generators/rowset_node.py +3 -4
- trilogy/core/processing/node_generators/select_helpers/__init__.py +0 -0
- trilogy/core/processing/node_generators/select_helpers/datasource_injection.py +203 -0
- trilogy/core/processing/node_generators/select_merge_node.py +17 -9
- trilogy/core/processing/nodes/base_node.py +2 -33
- trilogy/core/processing/nodes/group_node.py +19 -10
- trilogy/core/processing/nodes/merge_node.py +2 -2
- trilogy/hooks/graph_hook.py +3 -1
- trilogy/parsing/common.py +54 -12
- trilogy/parsing/parse_engine.py +39 -20
- trilogy/parsing/render.py +8 -1
- {pytrilogy-0.0.2.50.dist-info → pytrilogy-0.0.2.51.dist-info}/LICENSE.md +0 -0
- {pytrilogy-0.0.2.50.dist-info → pytrilogy-0.0.2.51.dist-info}/WHEEL +0 -0
- {pytrilogy-0.0.2.50.dist-info → pytrilogy-0.0.2.51.dist-info}/entry_points.txt +0 -0
- {pytrilogy-0.0.2.50.dist-info → pytrilogy-0.0.2.51.dist-info}/top_level.txt +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
trilogy/__init__.py,sha256=
|
|
1
|
+
trilogy/__init__.py,sha256=TMbpm0ynWcQ4tG8lUyLaIHKjUOj4LeFA9xtKRoLmrOc,291
|
|
2
2
|
trilogy/compiler.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
3
3
|
trilogy/constants.py,sha256=qZ1d0hoKPPV2HHCoFwPYTVB7b6bXjpWvXd3lE-zEhy8,1494
|
|
4
4
|
trilogy/engine.py,sha256=yOPnR7XCjWG82Gym_LLZBkYKKJdLCvqdCyt8zguNcnM,1103
|
|
@@ -15,8 +15,8 @@ trilogy/core/ergonomics.py,sha256=ASLDd0RqKWrZiG3XcKHo8nyTjaB_8xfE9t4NZ1UvGpc,16
|
|
|
15
15
|
trilogy/core/exceptions.py,sha256=1c1lQCwSw4_5CQS3q7scOkXU8GQvullJXfPHubprl90,617
|
|
16
16
|
trilogy/core/functions.py,sha256=hDlwLxQUskT9iRcIic1lfACQnxMLNM5ASdHRPi0ghyw,10835
|
|
17
17
|
trilogy/core/graph_models.py,sha256=mameUTiuCajtihDw_2-W218xyJlvTusOWrEKP1yAWgk,2003
|
|
18
|
-
trilogy/core/internal.py,sha256
|
|
19
|
-
trilogy/core/models.py,sha256=
|
|
18
|
+
trilogy/core/internal.py,sha256=FQWbuETKPfzjALMmdXJwlOMlESfm2Z5gmErSsq3BX9c,1173
|
|
19
|
+
trilogy/core/models.py,sha256=1d9Li5gQymKDl2U9PWweEYctxgxaKORIggsQhUibefM,162044
|
|
20
20
|
trilogy/core/optimization.py,sha256=Jy3tVJNeqhpK6VSyTvgIWKCao6y-VCZ7mYA69MIF6L0,7989
|
|
21
21
|
trilogy/core/query_processor.py,sha256=V-TqybYO0kCY8O7Nk58OBhb7_eRPs_EqAwaQv-EYLSY,18615
|
|
22
22
|
trilogy/core/optimizations/__init__.py,sha256=EBanqTXEzf1ZEYjAneIWoIcxtMDite5-n2dQ5xcfUtg,356
|
|
@@ -25,28 +25,30 @@ trilogy/core/optimizations/inline_constant.py,sha256=c-YHOg6eAufL4EaCf4-0PbY_D4s
|
|
|
25
25
|
trilogy/core/optimizations/inline_datasource.py,sha256=LsngRKBy-LYcx1sfo1-rnDym_ly73YV9WkEngSjpFx8,3943
|
|
26
26
|
trilogy/core/optimizations/predicate_pushdown.py,sha256=XPWEBv8jXnc0OL2JDPNwFvJ5AtOE7dLzJK0LzdmdZMo,9252
|
|
27
27
|
trilogy/core/processing/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
28
|
-
trilogy/core/processing/concept_strategies_v3.py,sha256=
|
|
28
|
+
trilogy/core/processing/concept_strategies_v3.py,sha256=TrkaE8bY0AU7XiLP47rLqqFqkfiinrNF3v6C6DtZiY4,37474
|
|
29
29
|
trilogy/core/processing/graph_utils.py,sha256=stbYnDxnK-1kbo9L4XNU85FQhWCP-oZYO7LCXhAdC5M,1198
|
|
30
30
|
trilogy/core/processing/utility.py,sha256=STqSHP8fWTVmaIUCfHAb9Hke_fzOG2pTbmWIdYS4cvc,18787
|
|
31
31
|
trilogy/core/processing/node_generators/__init__.py,sha256=s_YV1OYc336DuS9591259qjI_K_CtOCuhkf4t2aOgYs,733
|
|
32
|
-
trilogy/core/processing/node_generators/basic_node.py,sha256=
|
|
33
|
-
trilogy/core/processing/node_generators/common.py,sha256=
|
|
34
|
-
trilogy/core/processing/node_generators/filter_node.py,sha256=
|
|
35
|
-
trilogy/core/processing/node_generators/group_node.py,sha256=
|
|
32
|
+
trilogy/core/processing/node_generators/basic_node.py,sha256=dz7i0BSn4qRv6SBIS_JnVAm09-nkNizoAHrznmqnJXY,3074
|
|
33
|
+
trilogy/core/processing/node_generators/common.py,sha256=2TeYHZzUkLbQh0602IWilLd2yyfoorhc1zAkpTluyHU,9033
|
|
34
|
+
trilogy/core/processing/node_generators/filter_node.py,sha256=NAI5gDQap8ygk905lTuPh6UxoWy--PpChEjgSJl5jKA,7567
|
|
35
|
+
trilogy/core/processing/node_generators/group_node.py,sha256=k57SVWHSVvTqCd47tyLUGCsSZaP7UQqMCJYTSz1S7oQ,5566
|
|
36
36
|
trilogy/core/processing/node_generators/group_to_node.py,sha256=8ToptIWQoJttquEPrRTMvU33jCJQI-VJxVObN8W8QJk,2511
|
|
37
|
-
trilogy/core/processing/node_generators/multiselect_node.py,sha256=
|
|
38
|
-
trilogy/core/processing/node_generators/node_merge_node.py,sha256=
|
|
39
|
-
trilogy/core/processing/node_generators/rowset_node.py,sha256=
|
|
40
|
-
trilogy/core/processing/node_generators/select_merge_node.py,sha256=
|
|
37
|
+
trilogy/core/processing/node_generators/multiselect_node.py,sha256=se-cHRYRPskxq2Wq9bw5LkUFSCN1rhk8_05-OTezLz0,6421
|
|
38
|
+
trilogy/core/processing/node_generators/node_merge_node.py,sha256=3GzuiTiorFVe9MyLhoz2PDyI0x9XL7bQ8ucEbV54le8,14627
|
|
39
|
+
trilogy/core/processing/node_generators/rowset_node.py,sha256=cLEfhjQPpnxc1_34j_1A7lmsGcbi89F2cMqDYls4Oh0,5199
|
|
40
|
+
trilogy/core/processing/node_generators/select_merge_node.py,sha256=YW0H81IpE9B6f0SK75QH2DVSfr8d3oA9AbbqP44Jhnc,15746
|
|
41
41
|
trilogy/core/processing/node_generators/select_node.py,sha256=bjTylBa-vYbmzpuSpphmIo_Oi78YZpI8ppHnN9KDYDk,1795
|
|
42
42
|
trilogy/core/processing/node_generators/union_node.py,sha256=MfJjF2m0ARl0oUH9QT1awzPv0e3yA3mXK1XqAvUTgKw,2504
|
|
43
43
|
trilogy/core/processing/node_generators/unnest_node.py,sha256=8El2B1mzC9vIUSk-m94xHvaJwAf5GtCAGfTxGDSiqmU,2229
|
|
44
44
|
trilogy/core/processing/node_generators/window_node.py,sha256=5htRRxaxw6EnS-2TVoQIiy4bkNSoBefBpj2DVBtBo-w,3484
|
|
45
|
+
trilogy/core/processing/node_generators/select_helpers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
46
|
+
trilogy/core/processing/node_generators/select_helpers/datasource_injection.py,sha256=hJZS7GT0dl7sK0riweEwVAVRv5LCXOnMD1hF0XY9hpE,6548
|
|
45
47
|
trilogy/core/processing/nodes/__init__.py,sha256=WNUmYmZF3uqF2qiJ1L7y0u9qiVD9YnluKds0wA5opJE,4813
|
|
46
|
-
trilogy/core/processing/nodes/base_node.py,sha256=
|
|
48
|
+
trilogy/core/processing/nodes/base_node.py,sha256=KFk6sKNS3lEA_JyimHqdry4-QNEntnMO0GBBC_oA1bs,15552
|
|
47
49
|
trilogy/core/processing/nodes/filter_node.py,sha256=j7icDAXJ7oFPkHTOQVmm9QbZxrhhYEUGJj2lSiguXKA,2292
|
|
48
|
-
trilogy/core/processing/nodes/group_node.py,sha256=
|
|
49
|
-
trilogy/core/processing/nodes/merge_node.py,sha256=
|
|
50
|
+
trilogy/core/processing/nodes/group_node.py,sha256=C2U4kyfYnM0Gy1b_C5K-uh-s-9Kncr5olFxMuF0G7zQ,7852
|
|
51
|
+
trilogy/core/processing/nodes/merge_node.py,sha256=p9KoJmOoPqXlehYWj5pF_VuP5ZESTr5dAjAOQbf66O8,14875
|
|
50
52
|
trilogy/core/processing/nodes/select_node_v2.py,sha256=t3ln9Kxeml8mVTnLgtNPvavb5TLTRtfkJ0nyxh7UYUs,8212
|
|
51
53
|
trilogy/core/processing/nodes/union_node.py,sha256=1QgOWkjJ-ADFdanoRzi0EM5buhuzJbmlda9BAUGp4mM,1352
|
|
52
54
|
trilogy/core/processing/nodes/unnest_node.py,sha256=0TFANwqVPaVpUR6SF5uweGTlXfEnagXRBBZU6dUwtcY,2101
|
|
@@ -64,22 +66,22 @@ trilogy/dialect/snowflake.py,sha256=wmao9p26jX5yIX5SC8sRAZTXkPGTvq6ixO693QTfhz8,
|
|
|
64
66
|
trilogy/dialect/sql_server.py,sha256=7iFpo2xztQ4ZJVwJ5n8kntWreymRzz035iClGZp3Nyc,3117
|
|
65
67
|
trilogy/hooks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
66
68
|
trilogy/hooks/base_hook.py,sha256=gD6_sjzTzchpLIn3CvJzkM9IvaWNfQUra3yDh9-s8qQ,1125
|
|
67
|
-
trilogy/hooks/graph_hook.py,sha256=
|
|
69
|
+
trilogy/hooks/graph_hook.py,sha256=c-vC-IXoJ_jDmKQjxQyIxyXPOuUcLIURB573gCsAfzQ,2940
|
|
68
70
|
trilogy/hooks/query_debugger.py,sha256=FoDh2bu2NiwLusVhKa5El_l8EKaqfET7zn55GP0TkOE,4644
|
|
69
71
|
trilogy/metadata/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
70
72
|
trilogy/parsing/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
71
|
-
trilogy/parsing/common.py,sha256=
|
|
73
|
+
trilogy/parsing/common.py,sha256=ZVYF8sOzSa1bkUp7y_fwEmRPfsnVJ2kmbUuUg8TpHRY,12062
|
|
72
74
|
trilogy/parsing/config.py,sha256=Z-DaefdKhPDmSXLgg5V4pebhSB0h590vI0_VtHnlukI,111
|
|
73
75
|
trilogy/parsing/exceptions.py,sha256=92E5i2frv5hj9wxObJZsZqj5T6bglvPzvdvco_vW1Zk,38
|
|
74
76
|
trilogy/parsing/helpers.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
75
|
-
trilogy/parsing/parse_engine.py,sha256=
|
|
76
|
-
trilogy/parsing/render.py,sha256=
|
|
77
|
+
trilogy/parsing/parse_engine.py,sha256=GgImj-mtDHOctDQWC1SDuSANPR0S_nXTJOhmOuHyD5g,69332
|
|
78
|
+
trilogy/parsing/render.py,sha256=NM6Bprz2g4mPG-RjlgMcc7W5F38wpRR_v7kOGd5gQak,15866
|
|
77
79
|
trilogy/parsing/trilogy.lark,sha256=EazfEvYPuvkPkNjUnVzFi0uD9baavugbSI8CyfawShk,12573
|
|
78
80
|
trilogy/scripts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
79
81
|
trilogy/scripts/trilogy.py,sha256=DQDW81E5mDMWFP8oPw8q-IyrR2JGxQSDWgUWe2VTSRQ,3731
|
|
80
|
-
pytrilogy-0.0.2.
|
|
81
|
-
pytrilogy-0.0.2.
|
|
82
|
-
pytrilogy-0.0.2.
|
|
83
|
-
pytrilogy-0.0.2.
|
|
84
|
-
pytrilogy-0.0.2.
|
|
85
|
-
pytrilogy-0.0.2.
|
|
82
|
+
pytrilogy-0.0.2.51.dist-info/LICENSE.md,sha256=5ZRvtTyCCFwz1THxDTjAu3Lidds9WjPvvzgVwPSYNDo,1042
|
|
83
|
+
pytrilogy-0.0.2.51.dist-info/METADATA,sha256=IG65EoMo0Wfj2WScfAt60Iqm8rEjNqKX5ZfEpdjoiDw,8426
|
|
84
|
+
pytrilogy-0.0.2.51.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
|
|
85
|
+
pytrilogy-0.0.2.51.dist-info/entry_points.txt,sha256=0petKryjvvtEfTlbZC1AuMFumH_WQ9v8A19LvoS6G6c,54
|
|
86
|
+
pytrilogy-0.0.2.51.dist-info/top_level.txt,sha256=cAy__NW_eMAa_yT9UnUNlZLFfxcg6eimUAZ184cdNiE,8
|
|
87
|
+
pytrilogy-0.0.2.51.dist-info/RECORD,,
|
trilogy/__init__.py
CHANGED
trilogy/core/internal.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from trilogy.core.constants import ALL_ROWS_CONCEPT, INTERNAL_NAMESPACE
|
|
2
2
|
from trilogy.core.enums import FunctionType, Purpose
|
|
3
|
-
from trilogy.core.models import Concept, DataType, Function
|
|
3
|
+
from trilogy.core.models import Concept, DataType, Function, Grain
|
|
4
4
|
|
|
5
5
|
DEFAULT_CONCEPTS = {
|
|
6
6
|
ALL_ROWS_CONCEPT: Concept(
|
|
@@ -8,6 +8,7 @@ DEFAULT_CONCEPTS = {
|
|
|
8
8
|
namespace=INTERNAL_NAMESPACE,
|
|
9
9
|
datatype=DataType.INTEGER,
|
|
10
10
|
purpose=Purpose.CONSTANT,
|
|
11
|
+
grain=Grain(),
|
|
11
12
|
lineage=Function(
|
|
12
13
|
operator=FunctionType.CONSTANT,
|
|
13
14
|
arguments=[1],
|
|
@@ -20,17 +21,20 @@ DEFAULT_CONCEPTS = {
|
|
|
20
21
|
namespace=INTERNAL_NAMESPACE,
|
|
21
22
|
datatype=DataType.STRING,
|
|
22
23
|
purpose=Purpose.KEY,
|
|
24
|
+
grain=Grain(),
|
|
23
25
|
),
|
|
24
26
|
"datasource": Concept(
|
|
25
27
|
name="datasource",
|
|
26
28
|
namespace=INTERNAL_NAMESPACE,
|
|
27
29
|
datatype=DataType.STRING,
|
|
28
30
|
purpose=Purpose.KEY,
|
|
31
|
+
grain=Grain(),
|
|
29
32
|
),
|
|
30
33
|
"query_text": Concept(
|
|
31
34
|
name="query_text",
|
|
32
35
|
namespace=INTERNAL_NAMESPACE,
|
|
33
36
|
datatype=DataType.STRING,
|
|
34
37
|
purpose=Purpose.KEY,
|
|
38
|
+
grain=Grain(),
|
|
35
39
|
),
|
|
36
40
|
}
|