relationalai 0.12.7__py3-none-any.whl → 0.12.9__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.
- relationalai/clients/snowflake.py +37 -5
- relationalai/clients/use_index_poller.py +11 -1
- relationalai/semantics/internal/internal.py +29 -7
- relationalai/semantics/lqp/compiler.py +1 -1
- relationalai/semantics/lqp/constructors.py +6 -0
- relationalai/semantics/lqp/executor.py +23 -38
- relationalai/semantics/lqp/intrinsics.py +4 -3
- relationalai/semantics/lqp/model2lqp.py +6 -12
- relationalai/semantics/lqp/passes.py +4 -2
- relationalai/semantics/lqp/rewrite/__init__.py +2 -1
- relationalai/semantics/lqp/rewrite/function_annotations.py +91 -56
- relationalai/semantics/lqp/rewrite/functional_dependencies.py +282 -0
- relationalai/semantics/metamodel/builtins.py +6 -0
- relationalai/semantics/metamodel/rewrite/__init__.py +2 -1
- relationalai/semantics/metamodel/rewrite/dnf_union_splitter.py +1 -1
- relationalai/semantics/metamodel/rewrite/extract_nested_logicals.py +9 -9
- relationalai/semantics/metamodel/rewrite/flatten.py +18 -149
- relationalai/semantics/metamodel/rewrite/format_outputs.py +165 -0
- relationalai/semantics/reasoners/graph/core.py +98 -70
- relationalai/semantics/reasoners/optimization/__init__.py +55 -10
- relationalai/semantics/reasoners/optimization/common.py +63 -8
- relationalai/semantics/reasoners/optimization/solvers_dev.py +39 -33
- relationalai/semantics/reasoners/optimization/solvers_pb.py +1033 -385
- relationalai/semantics/rel/compiler.py +21 -2
- relationalai/semantics/tests/test_snapshot_abstract.py +3 -0
- relationalai/tools/cli.py +10 -0
- relationalai/tools/cli_controls.py +15 -0
- relationalai/util/otel_handler.py +10 -4
- {relationalai-0.12.7.dist-info → relationalai-0.12.9.dist-info}/METADATA +1 -1
- {relationalai-0.12.7.dist-info → relationalai-0.12.9.dist-info}/RECORD +33 -31
- {relationalai-0.12.7.dist-info → relationalai-0.12.9.dist-info}/WHEEL +0 -0
- {relationalai-0.12.7.dist-info → relationalai-0.12.9.dist-info}/entry_points.txt +0 -0
- {relationalai-0.12.7.dist-info → relationalai-0.12.9.dist-info}/licenses/LICENSE +0 -0
|
@@ -11,8 +11,8 @@ from relationalai.semantics.metamodel.util import OrderedSet, group_by, NameCach
|
|
|
11
11
|
|
|
12
12
|
from relationalai.semantics.rel import rel, rel_utils as u, builtins as rel_bt
|
|
13
13
|
|
|
14
|
-
from ..metamodel.rewrite import (Flatten, ExtractNestedLogicals, DNFUnionSplitter, DischargeConstraints)
|
|
15
|
-
from ..lqp.rewrite import CDC, ExtractCommon, ExtractKeys, FunctionAnnotations, QuantifyVars, Splinter
|
|
14
|
+
from ..metamodel.rewrite import (Flatten, ExtractNestedLogicals, DNFUnionSplitter, DischargeConstraints, FormatOutputs)
|
|
15
|
+
from ..lqp.rewrite import CDC, ExtractCommon, ExtractKeys, FunctionAnnotations, QuantifyVars, Splinter, SplitMultiCheckRequires
|
|
16
16
|
|
|
17
17
|
import math
|
|
18
18
|
|
|
@@ -24,6 +24,7 @@ import math
|
|
|
24
24
|
class Compiler(c.Compiler):
|
|
25
25
|
def __init__(self):
|
|
26
26
|
super().__init__([
|
|
27
|
+
SplitMultiCheckRequires(),
|
|
27
28
|
FunctionAnnotations(),
|
|
28
29
|
DischargeConstraints(),
|
|
29
30
|
Checker(),
|
|
@@ -33,6 +34,7 @@ class Compiler(c.Compiler):
|
|
|
33
34
|
DNFUnionSplitter(),
|
|
34
35
|
ExtractKeys(),
|
|
35
36
|
ExtractCommon(),
|
|
37
|
+
FormatOutputs(),
|
|
36
38
|
Flatten(),
|
|
37
39
|
Splinter(),
|
|
38
40
|
QuantifyVars(),
|
|
@@ -695,7 +697,24 @@ class ModelToRel:
|
|
|
695
697
|
rel_annos = cast(Tuple[rel.Annotation, ...], self.handle_list(filtered_annos))
|
|
696
698
|
return rel_annos
|
|
697
699
|
|
|
700
|
+
# standard handling mistreats the integer arg of ranked `@function(:checked, k)`
|
|
701
|
+
def handle_ranked_function_annotation(self, n: ir.Annotation):
|
|
702
|
+
assert n.relation == bt.function_ranked and len(n.args) == 2
|
|
703
|
+
checked_lit = n.args[0]
|
|
704
|
+
rank_lit = n.args[1]
|
|
705
|
+
assert isinstance(checked_lit, ir.Literal) and isinstance(rank_lit, ir.Literal)
|
|
706
|
+
checked = rel.MetaValue(checked_lit.value)
|
|
707
|
+
rank = rank_lit.value
|
|
708
|
+
return rel.Annotation(
|
|
709
|
+
n.relation.name,
|
|
710
|
+
(checked, rank)
|
|
711
|
+
)
|
|
712
|
+
|
|
698
713
|
def handle_annotation(self, n: ir.Annotation):
|
|
714
|
+
# special treatment for (ranked) @function(:checked, k)
|
|
715
|
+
if n.relation == bt.function_ranked:
|
|
716
|
+
return self.handle_ranked_function_annotation(n)
|
|
717
|
+
|
|
699
718
|
# we know that annotations won't have vars, so we can ignore that type warning
|
|
700
719
|
return rel.Annotation(
|
|
701
720
|
n.relation.name,
|
|
@@ -2,6 +2,7 @@ import logging
|
|
|
2
2
|
import os
|
|
3
3
|
import uuid
|
|
4
4
|
import sys
|
|
5
|
+
import datetime
|
|
5
6
|
from abc import abstractmethod, ABC
|
|
6
7
|
|
|
7
8
|
from relationalai.semantics.tests.logging import Capturer
|
|
@@ -47,6 +48,8 @@ class AbstractSnapshotTest(ABC):
|
|
|
47
48
|
'use_sql': use_sql,
|
|
48
49
|
'reasoner.rule.use_lqp': use_lqp,
|
|
49
50
|
'keep_model': False,
|
|
51
|
+
# fix the current time to keep snapshots stable
|
|
52
|
+
'datetime_now': datetime.datetime.fromisoformat("2025-12-01T12:00:00+00:00"),
|
|
50
53
|
}
|
|
51
54
|
if use_direct_access:
|
|
52
55
|
# for direct access we can not use user/password authentication
|
relationalai/tools/cli.py
CHANGED
|
@@ -242,6 +242,16 @@ def snowflake_flow(cfg:config.Config):
|
|
|
242
242
|
)
|
|
243
243
|
cfg.set("engine_size", engine_size)
|
|
244
244
|
|
|
245
|
+
# init SF specific configuration
|
|
246
|
+
if not pyrel_config or cfg.get("data_freshness_mins", None) is None:
|
|
247
|
+
data_freshness_mins = controls.number(
|
|
248
|
+
"How often should data in RAI be refreshed (minutes)?\n(30 minutes recommended for development, otherwise 0 for data to refreshed on each program execution):",
|
|
249
|
+
default=30,
|
|
250
|
+
min_allowed=0,
|
|
251
|
+
float_allowed=False,
|
|
252
|
+
)
|
|
253
|
+
cfg.set("data_freshness_mins", int(data_freshness_mins))
|
|
254
|
+
|
|
245
255
|
return account
|
|
246
256
|
|
|
247
257
|
def mfa_passcode_flow(cfg:config.Config):
|
|
@@ -332,6 +332,21 @@ def password(message:str, default:str|None = None, validator:Callable|None = Non
|
|
|
332
332
|
except KeyboardInterrupt:
|
|
333
333
|
return abort()
|
|
334
334
|
|
|
335
|
+
def number(message:str, default:float|int|None = None, validator:Callable|None = None, invalid_message:str|None = None, **kwargs) -> float|int:
|
|
336
|
+
if not invalid_message:
|
|
337
|
+
invalid_message = "Invalid input"
|
|
338
|
+
try:
|
|
339
|
+
return inquirer.number(
|
|
340
|
+
message,
|
|
341
|
+
default=default or 0,
|
|
342
|
+
keybindings=default_bindings,
|
|
343
|
+
validate=validator,
|
|
344
|
+
invalid_message=invalid_message,
|
|
345
|
+
**kwargs
|
|
346
|
+
).execute()
|
|
347
|
+
except KeyboardInterrupt:
|
|
348
|
+
return abort()
|
|
349
|
+
|
|
335
350
|
def file(message: str, start_path:Path|None = None, allow_freeform=False, **kwargs) -> str|None:
|
|
336
351
|
try:
|
|
337
352
|
return FuzzyFile(message, start_path, allow_freeform=allow_freeform, max_height=8, border=True, style=STYLE, **kwargs).execute()
|
|
@@ -20,6 +20,7 @@ from relationalai.debugging import logger, Span, filter_span_attrs, otel_traceid
|
|
|
20
20
|
from relationalai.clients.snowflake import Resources
|
|
21
21
|
|
|
22
22
|
MAX_PAYLOAD_SIZE = 25*1024 # 25KB
|
|
23
|
+
MAX_ATTRIBUTE_LENGTH = 1000
|
|
23
24
|
_otel_initialized = False
|
|
24
25
|
|
|
25
26
|
|
|
@@ -44,8 +45,6 @@ class CachedSpanExporter(SpanExporter):
|
|
|
44
45
|
|
|
45
46
|
def get_spans(self):
|
|
46
47
|
return self.spans
|
|
47
|
-
|
|
48
|
-
|
|
49
48
|
class NativeAppSpanExporter(SpanExporter):
|
|
50
49
|
def __init__(self, resource:Resources, app_name:str):
|
|
51
50
|
self.resource = resource
|
|
@@ -252,6 +251,12 @@ def encode_otlp_attribute(k, v):
|
|
|
252
251
|
try:
|
|
253
252
|
valueObj = {}
|
|
254
253
|
if isinstance(v, str):
|
|
254
|
+
# Truncate metamodel attribute value if it's too large
|
|
255
|
+
if k == "metamodel" and len(v) > MAX_ATTRIBUTE_LENGTH:
|
|
256
|
+
original_length = len(v)
|
|
257
|
+
v = v[:MAX_ATTRIBUTE_LENGTH] + f"... (truncated from {original_length} chars)"
|
|
258
|
+
logging.warning(f"{k} attribute truncated from {original_length} to {MAX_ATTRIBUTE_LENGTH} characters")
|
|
259
|
+
|
|
255
260
|
valueObj = {
|
|
256
261
|
"stringValue": html.escape(v).replace("\n", "; ")
|
|
257
262
|
}
|
|
@@ -369,7 +374,7 @@ def encode_spans_to_otlp_json(spans: Sequence[ReadableSpan], max_bytes: int) ->
|
|
|
369
374
|
except Exception as e:
|
|
370
375
|
logging.warning(f"Error encoding resource to OTLP JSON: {e}")
|
|
371
376
|
return "", spans # Return the unencoded spans if resource encoding fails
|
|
372
|
-
|
|
377
|
+
|
|
373
378
|
# TODO encode pyrel version for real
|
|
374
379
|
header_str = f'{{"resourceSpans": [{{"resource":{resource_str}, "scopeSpans": [{{"scope":{{"name":"pyrel", "version":"v0.4.0"}},"spans":['
|
|
375
380
|
footer_str = ']}]}]}'
|
|
@@ -378,7 +383,7 @@ def encode_spans_to_otlp_json(spans: Sequence[ReadableSpan], max_bytes: int) ->
|
|
|
378
383
|
encoded_spans = []
|
|
379
384
|
for span in spans:
|
|
380
385
|
try:
|
|
381
|
-
span_str = encode_span_to_otlp_json(span)
|
|
386
|
+
span_str = encode_span_to_otlp_json(span)
|
|
382
387
|
except Exception as e:
|
|
383
388
|
logging.warning(f"Error encoding span {span}: {e}")
|
|
384
389
|
continue # Skip this span if encoding fails
|
|
@@ -460,6 +465,7 @@ def enable_otel_export(client_resources: Resources, app_name):
|
|
|
460
465
|
if _otel_initialized:
|
|
461
466
|
logging.warning("OTel already initialized, skipping.")
|
|
462
467
|
return
|
|
468
|
+
|
|
463
469
|
_otel_initialized = True
|
|
464
470
|
|
|
465
471
|
if TRACE_PROVIDER is None:
|
|
@@ -28,9 +28,9 @@ relationalai/clients/export_procedure.py.jinja,sha256=nhvVcs5hQyWExFDuROQbi1VyYz
|
|
|
28
28
|
relationalai/clients/hash_util.py,sha256=pZVR1FX3q4G_19p_r6wpIR2tIM8_WUlfAR7AVZJjIYM,1495
|
|
29
29
|
relationalai/clients/profile_polling.py,sha256=pUH7WKH4nYDD0SlQtg3wsWdj0K7qt6nZqUw8jTthCBs,2565
|
|
30
30
|
relationalai/clients/result_helpers.py,sha256=wDSD02Ngx6W-YQqBIGKnpXD4Ju3pA1e9Nz6ORRI6SRI,17808
|
|
31
|
-
relationalai/clients/snowflake.py,sha256=
|
|
31
|
+
relationalai/clients/snowflake.py,sha256=QPJrRolINDkjZb8xyuvaLJIWOEYXdeALLSNqIAAXUEY,166006
|
|
32
32
|
relationalai/clients/types.py,sha256=eNo6akcMTbnBFbBbHd5IgVeY-zuAgtXlOs8Bo1SWmVU,2890
|
|
33
|
-
relationalai/clients/use_index_poller.py,sha256=
|
|
33
|
+
relationalai/clients/use_index_poller.py,sha256=rrkg35xiHqY0-2dZlPkgixEGENrIrl7bf_2TboX_qew,46794
|
|
34
34
|
relationalai/clients/util.py,sha256=NJC8fnrWHR01NydwESPSetIHRWf7jQJURYpaWJjmDyE,12311
|
|
35
35
|
relationalai/early_access/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
36
36
|
relationalai/early_access/builder/__init__.py,sha256=mrR-aGLPquUGc_e9-DOkVCCCo8QRE5A56GTTtgILNa4,993
|
|
@@ -302,32 +302,33 @@ relationalai/semantics/devtools/compilation_manager.py,sha256=XBqG_nYWtK3s_J6MeC
|
|
|
302
302
|
relationalai/semantics/devtools/extract_lqp.py,sha256=gxI3EvPUTPAkwgnkCKAkEm2vA6QkLfoM8AXXiVz0c34,3696
|
|
303
303
|
relationalai/semantics/internal/__init__.py,sha256=JXrpFaL-fdZrvKpWTEn1UoLXITOoTGnAYwmgeiglhSk,774
|
|
304
304
|
relationalai/semantics/internal/annotations.py,sha256=PkrRN-gHO2ksh1hDKB1VVIB39dONvLdTd8_Y0rCR3fE,367
|
|
305
|
-
relationalai/semantics/internal/internal.py,sha256=
|
|
305
|
+
relationalai/semantics/internal/internal.py,sha256=hElTyxtnTfNsmX9kJZ2I5yU4yA3udFyu2xk-qq8G3T0,149986
|
|
306
306
|
relationalai/semantics/internal/snowflake.py,sha256=8D6WYDFKtt8R-sc9o1Oxgtl6Xwehs2Txw_lKNBid7UA,13467
|
|
307
307
|
relationalai/semantics/lqp/__init__.py,sha256=XgcQZxK-zz_LqPDVtwREhsIvjTuUIt4BZhIedCeMY-s,48
|
|
308
308
|
relationalai/semantics/lqp/builtins.py,sha256=IWRYJ1J-HGEQqBn8QVOyjZvgEiq6W9tZ0nBLdHz5wjA,576
|
|
309
|
-
relationalai/semantics/lqp/compiler.py,sha256=
|
|
310
|
-
relationalai/semantics/lqp/constructors.py,sha256=
|
|
311
|
-
relationalai/semantics/lqp/executor.py,sha256=
|
|
312
|
-
relationalai/semantics/lqp/intrinsics.py,sha256=
|
|
309
|
+
relationalai/semantics/lqp/compiler.py,sha256=oOGlN03NVvltKN5KSDOqvb0TsAER_igUe9CnOcHAuoY,943
|
|
310
|
+
relationalai/semantics/lqp/constructors.py,sha256=KWXW3OxpZE8E-OYYjrjE_uFAXRekuGHn0TNSPPQyY7g,2336
|
|
311
|
+
relationalai/semantics/lqp/executor.py,sha256=7Jk2eKlGZ0H4wXInjnHKZehDVGOq09W6zY1mFALwIyE,21160
|
|
312
|
+
relationalai/semantics/lqp/intrinsics.py,sha256=oKPIcW8PYgU-yPTO21iSF00RBsFKPFFP5MICe6izjKk,871
|
|
313
313
|
relationalai/semantics/lqp/ir.py,sha256=DUw0ltul0AS9CRjntNlmllWTwXpxMyYg4iJ9t7NFYMA,1791
|
|
314
|
-
relationalai/semantics/lqp/model2lqp.py,sha256=
|
|
315
|
-
relationalai/semantics/lqp/passes.py,sha256=
|
|
314
|
+
relationalai/semantics/lqp/model2lqp.py,sha256=mtxXXOMWTMrLYyB84x0OqdmwAACfQ7au1IhiKZ2_lqY,35262
|
|
315
|
+
relationalai/semantics/lqp/passes.py,sha256=WNVuGxf1jU-UYyoEW5XvnREwJ-NW4_iMECW-Gaphaq8,28531
|
|
316
316
|
relationalai/semantics/lqp/pragmas.py,sha256=FzzldrJEAZ1AIcEw6D-FfaVg3CoahRYgPCFo7xHfg1g,375
|
|
317
317
|
relationalai/semantics/lqp/primitives.py,sha256=9Hjow-Yp06jt0xatuUrH1dw0ErnzknIr9K0TB_AwdjU,11029
|
|
318
318
|
relationalai/semantics/lqp/result_helpers.py,sha256=oYpLoTBnzsiyOVIWA2rLMHlgs7P7BoEkqthQ2aMosnk,10123
|
|
319
319
|
relationalai/semantics/lqp/types.py,sha256=3TZ61ybwNV8lDyUMujZIWNFz3Fgn4uifsJb8ExfoMDg,4508
|
|
320
320
|
relationalai/semantics/lqp/utils.py,sha256=iOoS-f8kyFjrgAnpK4cWDvAA-WmPgDRggSKUXm_JdTc,6317
|
|
321
321
|
relationalai/semantics/lqp/validators.py,sha256=YO_ciSgEVNILWUbkxIagKpIxI4oqV0fRSTO2Ok0rPJk,1526
|
|
322
|
-
relationalai/semantics/lqp/rewrite/__init__.py,sha256=
|
|
322
|
+
relationalai/semantics/lqp/rewrite/__init__.py,sha256=3LxYHZm6-vaqs-5Co9DQ8awxk838f5huiR5OEaLc8Ww,411
|
|
323
323
|
relationalai/semantics/lqp/rewrite/cdc.py,sha256=I6DeMOZScx-3UAVoSCMn9cuOgLzwdvJVKNwsgFa6R_k,10390
|
|
324
324
|
relationalai/semantics/lqp/rewrite/extract_common.py,sha256=sbihURqk4wtc1ekDWXWltq9LrO42XTLfOHl5D6nT5vw,18371
|
|
325
325
|
relationalai/semantics/lqp/rewrite/extract_keys.py,sha256=dSr5SVkYmrhiR0XPY5eRAnWD66dcZYgXdilXcERv634,18682
|
|
326
|
-
relationalai/semantics/lqp/rewrite/function_annotations.py,sha256=
|
|
326
|
+
relationalai/semantics/lqp/rewrite/function_annotations.py,sha256=9ZzLASvXh_OgQ04eup0AyoMIh2HxWHkoRETLm1-XtWs,4660
|
|
327
|
+
relationalai/semantics/lqp/rewrite/functional_dependencies.py,sha256=pQo7a7oS1wsep3ObdxPPaV962RlR0iBWzBmd7lCzCvQ,11564
|
|
327
328
|
relationalai/semantics/lqp/rewrite/quantify_vars.py,sha256=wYMEXzCW_D_Y_1rSLvuAAqw9KN1oIOn_vIMxELzRVb4,11568
|
|
328
329
|
relationalai/semantics/lqp/rewrite/splinter.py,sha256=oeDjP_F2PVLVexAKFn8w7CLtO9oy-R-tS2IOmzw_Ujk,3199
|
|
329
330
|
relationalai/semantics/metamodel/__init__.py,sha256=I-XqQAGycD0nKkKYvnF3G9d0QK_1LIM4xXICw8g8fBA,805
|
|
330
|
-
relationalai/semantics/metamodel/builtins.py,sha256=
|
|
331
|
+
relationalai/semantics/metamodel/builtins.py,sha256=lW8VdaSICyr8gxhFzaE-fD8wHSLBuErDOzntEC9FNL0,38407
|
|
331
332
|
relationalai/semantics/metamodel/compiler.py,sha256=XBsAnbFwgZ_TcRry6yXGWLyw_MaO2WJDp1EnC_ubhps,4525
|
|
332
333
|
relationalai/semantics/metamodel/dataflow.py,sha256=wfj1tARrR4yEAaTwUTrAcxEcz81VkUal4U_AX1esovk,3929
|
|
333
334
|
relationalai/semantics/metamodel/dependency.py,sha256=iJLx-w_zqde7CtbGcXxLxZBdUKZYl7AUykezPI9ccck,33926
|
|
@@ -338,11 +339,12 @@ relationalai/semantics/metamodel/ir.py,sha256=4Xl3oc92Q7_s33axtrZUXr-GL8VGJsKc7y
|
|
|
338
339
|
relationalai/semantics/metamodel/types.py,sha256=m3NolF3B_fBSnkQKA9o1feEawaW7RhR-t6W9OSxSFfc,11492
|
|
339
340
|
relationalai/semantics/metamodel/util.py,sha256=cmSmeww34JVMqcFudwVAY820IPM2ETSELJylwJ3GRJk,16654
|
|
340
341
|
relationalai/semantics/metamodel/visitor.py,sha256=DFY0DACLhxlZ0e4p0vWqbK6ZJr_GWEvH66CU_HVuoTk,35527
|
|
341
|
-
relationalai/semantics/metamodel/rewrite/__init__.py,sha256=
|
|
342
|
+
relationalai/semantics/metamodel/rewrite/__init__.py,sha256=9ONWFSdMPHkWpObDMSljt8DywhpFf4Ehsq1aT3fTPt8,344
|
|
342
343
|
relationalai/semantics/metamodel/rewrite/discharge_constraints.py,sha256=0v613BqCLlo4sgWuZjcLSxxakp3d34mYWbG4ldhzGno,1949
|
|
343
|
-
relationalai/semantics/metamodel/rewrite/dnf_union_splitter.py,sha256=
|
|
344
|
-
relationalai/semantics/metamodel/rewrite/extract_nested_logicals.py,sha256=
|
|
345
|
-
relationalai/semantics/metamodel/rewrite/flatten.py,sha256=
|
|
344
|
+
relationalai/semantics/metamodel/rewrite/dnf_union_splitter.py,sha256=ZXX190gCKXhdB-Iyi4MGowc4FS9P0PIJTtTT0LrTr6A,7970
|
|
345
|
+
relationalai/semantics/metamodel/rewrite/extract_nested_logicals.py,sha256=vQ0-7t_GORskB1ZG50KuzM4phm6YNPvehfFn3v_LbgI,3354
|
|
346
|
+
relationalai/semantics/metamodel/rewrite/flatten.py,sha256=uw7pKBGdrGqGYZU9NewAjvqRuhJk7As49hA_Wcwfp2k,21918
|
|
347
|
+
relationalai/semantics/metamodel/rewrite/format_outputs.py,sha256=n0IxC3RL3UMly6MWsq342EGfL2yGj3vOgVG_wg7kt-o,6225
|
|
346
348
|
relationalai/semantics/metamodel/typer/__init__.py,sha256=E3ydmhWRdm-cAqWsNR24_Qd3NcwiHx8ElO2tzNysAXc,143
|
|
347
349
|
relationalai/semantics/metamodel/typer/checker.py,sha256=frY0gilDO6skbDiYFiIpDUOWyt9s9jAJsRBs848DcG0,19184
|
|
348
350
|
relationalai/semantics/metamodel/typer/typer.py,sha256=7kD5o08Q1bv9M5aUn9diDM5AfiuiRYi37xplqcVyLT8,62363
|
|
@@ -350,16 +352,16 @@ relationalai/semantics/reasoners/__init__.py,sha256=cLrGNKFX859EdPjk2n6MdYLvueaF
|
|
|
350
352
|
relationalai/semantics/reasoners/experimental/__init__.py,sha256=ZWXb3Oun7m_G2c3ijKnqxbEsAzTMVa7ciBXjdi4dCNI,144
|
|
351
353
|
relationalai/semantics/reasoners/graph/README.md,sha256=QgKEXTllp5PO-yK8oDfMx1PNTYF2uVoneMRKsWTY5GU,23953
|
|
352
354
|
relationalai/semantics/reasoners/graph/__init__.py,sha256=jSXR6J05SQZdjxQ5Y-ovqFqGTAXCOWeQDcvpfoBYgDA,1282
|
|
353
|
-
relationalai/semantics/reasoners/graph/core.py,sha256=
|
|
355
|
+
relationalai/semantics/reasoners/graph/core.py,sha256=CBerRlgcNoiur8kIJTRnLFllibK7pBFrfViY1yfRXfI,400039
|
|
354
356
|
relationalai/semantics/reasoners/graph/design/beyond_demand_transform.md,sha256=Givh0W6B6Hlow6TpmK-8adpEYd8b3O_WmdgMOQIyKs0,55749
|
|
355
357
|
relationalai/semantics/reasoners/graph/tests/README.md,sha256=XbauTzt6VA_YEOcrlZwsu4WOW5UoWV8M6F57wmxe5QU,1023
|
|
356
|
-
relationalai/semantics/reasoners/optimization/__init__.py,sha256=
|
|
357
|
-
relationalai/semantics/reasoners/optimization/common.py,sha256=
|
|
358
|
-
relationalai/semantics/reasoners/optimization/solvers_dev.py,sha256=
|
|
359
|
-
relationalai/semantics/reasoners/optimization/solvers_pb.py,sha256=
|
|
358
|
+
relationalai/semantics/reasoners/optimization/__init__.py,sha256=lpavly1Qa3VKvLgrbpp-tsxY9hcqHL6buxuekgKPakw,2212
|
|
359
|
+
relationalai/semantics/reasoners/optimization/common.py,sha256=V0c9eGHJKI-gt0X-q9o0bIkgBCdWFdjWq2NQITKwmXg,3124
|
|
360
|
+
relationalai/semantics/reasoners/optimization/solvers_dev.py,sha256=lbw3c8Z6PlHRDm7TdAhICPShlGoab9uR_4uacMPvpBw,24493
|
|
361
|
+
relationalai/semantics/reasoners/optimization/solvers_pb.py,sha256=ESwraHU9c4NCEVRZ16tnBZsUCmJg7lUhy-v0-GGq0qo,48000
|
|
360
362
|
relationalai/semantics/rel/__init__.py,sha256=pMlVTC_TbQ45mP1LpzwFBBgPxpKc0H3uJDvvDXEWzvs,55
|
|
361
363
|
relationalai/semantics/rel/builtins.py,sha256=kQToiELc4NnvCmXyFtu9CsGZNdTQtSzTB-nuyIfQcsM,1562
|
|
362
|
-
relationalai/semantics/rel/compiler.py,sha256
|
|
364
|
+
relationalai/semantics/rel/compiler.py,sha256=-gyu_kL1p4Z-SXI2fwLXSbGfUy-ejQcKVrc66rVvOyg,43044
|
|
363
365
|
relationalai/semantics/rel/executor.py,sha256=v-yHl9R8AV0AA2xnm5YZDzue83pr8j2Q97Ky1MKkU70,17309
|
|
364
366
|
relationalai/semantics/rel/rel.py,sha256=9I_V6dQ83QRaLzq04Tt-KjBWhmNxNO3tFzeornBK4zc,15738
|
|
365
367
|
relationalai/semantics/rel/rel_utils.py,sha256=EH-NBROA4vIJXajLKniapt4Dxt7cXSqY4NEjD-wD8Mc,9566
|
|
@@ -389,7 +391,7 @@ relationalai/semantics/std/std.py,sha256=Ql27y2Rs0d1kluktWi-t6_M_uYIxQUfO94GjlVf
|
|
|
389
391
|
relationalai/semantics/std/strings.py,sha256=Q_7kvx5dud6gppNURHOi4SMvgZNPRuWwEKDIPSEIOJI,2702
|
|
390
392
|
relationalai/semantics/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
391
393
|
relationalai/semantics/tests/logging.py,sha256=oJTrUS_Bq6WxqqO8QLtrjdkUB02Uu5erZ7FTl__-lNY,1432
|
|
392
|
-
relationalai/semantics/tests/test_snapshot_abstract.py,sha256=
|
|
394
|
+
relationalai/semantics/tests/test_snapshot_abstract.py,sha256=ob_5p43CQzz9nfB7Q9W1geKqwNmLyUmQx-mpJfTOwhg,6305
|
|
393
395
|
relationalai/semantics/tests/test_snapshot_base.py,sha256=vlqqSyQf_IsDb7feDnkiHZKSCsJqDq0Ep4V3CKtKWns,466
|
|
394
396
|
relationalai/semantics/tests/utils.py,sha256=h4GPNCJGmAWvwskGWxc523BtFEd2ayff4zfBNHapoCo,1825
|
|
395
397
|
relationalai/std/__init__.py,sha256=U8-DpdOcxeGXVSf3LqJl9mSXKztNgB9iwropQcXp960,2178
|
|
@@ -402,8 +404,8 @@ relationalai/std/re.py,sha256=7B0dPaYyEdIlEgZfDzs7HJ_MTqccYTfIZieqst6MHbk,4457
|
|
|
402
404
|
relationalai/std/strings.py,sha256=vHvex_W5GHhhsVws6Dfyl4w1EHdbDE3nPjT09DnpvSE,4260
|
|
403
405
|
relationalai/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
404
406
|
relationalai/tools/cleanup_snapshots.py,sha256=s1q1ophi1RmiTZ9QQolQ6q1K9ZwseCaOuDtI1Rm99MQ,3434
|
|
405
|
-
relationalai/tools/cli.py,sha256=
|
|
406
|
-
relationalai/tools/cli_controls.py,sha256=
|
|
407
|
+
relationalai/tools/cli.py,sha256=EBrPdJQsltUQGClQTYaEDVmEmm4w_UGdb8fT_DKIeOQ,77017
|
|
408
|
+
relationalai/tools/cli_controls.py,sha256=84K0sjfsVwqi9C8ZlpvPi6XZPhjyW-R06Pir9Ex_Xtg,70468
|
|
407
409
|
relationalai/tools/cli_helpers.py,sha256=r-gJnWnb3d6yIn_ccyp3qx_Vpqh-FINCFMyPBVCA-Jg,14041
|
|
408
410
|
relationalai/tools/constants.py,sha256=A8Qz0CPs2cRUs5xaZ-Y7BCyvqmI6RLvipzwLDYZ3_PU,4505
|
|
409
411
|
relationalai/tools/debugger.py,sha256=yb03qO8ENHG2rBOPOF-rPKHGrJmaNy6iWXijg6T0dUI,6881
|
|
@@ -421,7 +423,7 @@ relationalai/util/format.py,sha256=fLRovumUa2cu0_2gy3O5vaEbpND4p9_IIgr-vDaIGDc,3
|
|
|
421
423
|
relationalai/util/graph.py,sha256=eT8s0yCiJIu6D1T1fjZsLSPCcuQb2Mzl6qnljtQ5TuA,1504
|
|
422
424
|
relationalai/util/list_databases.py,sha256=xJZGHzE0VLaDItWo5XvQSx75OwV045h2rjCBBnhNB3o,152
|
|
423
425
|
relationalai/util/otel_configuration.py,sha256=SV1SFqdKm8q-OD1TsmiIB0x5VxtAFsBRyTwD8zNtnQc,1066
|
|
424
|
-
relationalai/util/otel_handler.py,sha256=
|
|
426
|
+
relationalai/util/otel_handler.py,sha256=2h3ROnra798RRRPLTlEBxEcj-jXXk1ri_l10RAFaiWk,18109
|
|
425
427
|
relationalai/util/snowflake_handler.py,sha256=8HUo6eU5wPxa6m_EocYuEZD_XpVIh9EqBnGwaS06Usw,2942
|
|
426
428
|
relationalai/util/span_format_test.py,sha256=1rU-M3RXhRt8vCX6rtuIJogEVkB164N3qiKcTmb-sl8,1345
|
|
427
429
|
relationalai/util/span_tracker.py,sha256=SKj4UB43clUxWShq3lFChl3dZ4JGRhcnY_xAh-7Xzvg,7888
|
|
@@ -437,8 +439,8 @@ frontend/debugger/dist/index.html,sha256=0wIQ1Pm7BclVV1wna6Mj8OmgU73B9rSEGPVX-Wo
|
|
|
437
439
|
frontend/debugger/dist/assets/favicon-Dy0ZgA6N.png,sha256=tPXOEhOrM4tJyZVJQVBO_yFgNAlgooY38ZsjyrFstgg,620
|
|
438
440
|
frontend/debugger/dist/assets/index-Cssla-O7.js,sha256=MxgIGfdKQyBWgufck1xYggQNhW5nj6BPjCF6Wleo-f0,298886
|
|
439
441
|
frontend/debugger/dist/assets/index-DlHsYx1V.css,sha256=21pZtAjKCcHLFjbjfBQTF6y7QmOic-4FYaKNmwdNZVE,60141
|
|
440
|
-
relationalai-0.12.
|
|
441
|
-
relationalai-0.12.
|
|
442
|
-
relationalai-0.12.
|
|
443
|
-
relationalai-0.12.
|
|
444
|
-
relationalai-0.12.
|
|
442
|
+
relationalai-0.12.9.dist-info/METADATA,sha256=r7ebl7OUAHSnHZxFdPUL8woKPut0wWKjJ6Z1wvHc6Ko,2562
|
|
443
|
+
relationalai-0.12.9.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
444
|
+
relationalai-0.12.9.dist-info/entry_points.txt,sha256=fo_oLFJih3PUgYuHXsk7RnCjBm9cqRNR--ab6DgI6-0,88
|
|
445
|
+
relationalai-0.12.9.dist-info/licenses/LICENSE,sha256=pPyTVXFYhirkEW9VsnHIgUjT0Vg8_xsE6olrF5SIgpc,11343
|
|
446
|
+
relationalai-0.12.9.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|