mplang-nightly 0.1.dev151__py3-none-any.whl → 0.1.dev152__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.
- mplang/kernels/sql_duckdb.py +5 -0
- mplang/ops/base.py +2 -2
- mplang/ops/ibis_cc.py +1 -0
- mplang/ops/sql.py +2 -1
- {mplang_nightly-0.1.dev151.dist-info → mplang_nightly-0.1.dev152.dist-info}/METADATA +1 -1
- {mplang_nightly-0.1.dev151.dist-info → mplang_nightly-0.1.dev152.dist-info}/RECORD +9 -9
- {mplang_nightly-0.1.dev151.dist-info → mplang_nightly-0.1.dev152.dist-info}/WHEEL +0 -0
- {mplang_nightly-0.1.dev151.dist-info → mplang_nightly-0.1.dev152.dist-info}/entry_points.txt +0 -0
- {mplang_nightly-0.1.dev151.dist-info → mplang_nightly-0.1.dev152.dist-info}/licenses/LICENSE +0 -0
mplang/kernels/sql_duckdb.py
CHANGED
@@ -25,6 +25,11 @@ def _duckdb_sql(pfunc: PFunction, *args: Any) -> Any:
|
|
25
25
|
import duckdb
|
26
26
|
import pandas as pd
|
27
27
|
|
28
|
+
# TODO: maybe we could translate the sql to duckdb dialect
|
29
|
+
# instead of raising an exception
|
30
|
+
if pfunc.attrs.get("dialect") != "duckdb":
|
31
|
+
raise ValueError("duckdb.run_sql must have dialect=duckdb attr")
|
32
|
+
|
28
33
|
conn = duckdb.connect(":memory:")
|
29
34
|
if args:
|
30
35
|
in_names = pfunc.attrs.get("in_names")
|
mplang/ops/base.py
CHANGED
@@ -30,7 +30,7 @@ from mplang.core.tensor import TensorType
|
|
30
30
|
# The standard return contract for frontend operations (FeOperation.trace).
|
31
31
|
#
|
32
32
|
# Triad := (PFunction, list[MPObject], PyTreeDef)
|
33
|
-
# - PFunction: Captures fn_type (routing key, e.g., "mlir.stablehlo", "sql.
|
33
|
+
# - PFunction: Captures fn_type (routing key, e.g., "mlir.stablehlo", "sql.run"),
|
34
34
|
# input/output MPTypes and optional attributes.
|
35
35
|
# - list[MPObject]: The flat positional MPObjects captured under the current
|
36
36
|
# context (Trace/Interp). Order matches pfunc.ins_info.
|
@@ -422,6 +422,6 @@ def list_ops(module: str | None = None) -> dict[tuple[str, str], FeOperation]:
|
|
422
422
|
# - For type-only kernels, use @module.typed_op(pfunc_name)(kernel). The op name is derived from the kernel function name.
|
423
423
|
# - For complex ops (with Python callables/closures), subclass FeOperation and register
|
424
424
|
# using get_registry().register_op(module, name, op_instance) or use @module.feop with InlineFeOperation.
|
425
|
-
# - Ensure PFunction.fn_type is set as the routing key (e.g., "mlir.stablehlo", "sql.
|
425
|
+
# - Ensure PFunction.fn_type is set as the routing key (e.g., "mlir.stablehlo", "sql.run").
|
426
426
|
# - Keep device selection/routing out of frontend code; only set fn_type and attributes.
|
427
427
|
# - Avoid moving MPObjects across contexts directly; capture within current ctx in trace().
|
mplang/ops/ibis_cc.py
CHANGED
mplang/ops/sql.py
CHANGED
@@ -46,12 +46,13 @@ class SqlFE(FeOperation):
|
|
46
46
|
in_vars.append(tbl)
|
47
47
|
|
48
48
|
pfn = PFunction(
|
49
|
-
fn_type=
|
49
|
+
fn_type="sql.run",
|
50
50
|
fn_name="",
|
51
51
|
fn_text=sql,
|
52
52
|
ins_info=tuple(ins_info),
|
53
53
|
outs_info=(out_type,),
|
54
54
|
in_names=tuple(in_names),
|
55
|
+
dialect=self._dialect,
|
55
56
|
)
|
56
57
|
_, treedef = tree_flatten(out_type)
|
57
58
|
return pfn, in_vars, treedef
|
@@ -34,17 +34,17 @@ mplang/kernels/crypto.py,sha256=TWixli1uRQ_7OjA49qQXUXa2ldHDEwaCMXXPSHdAPi8,3812
|
|
34
34
|
mplang/kernels/mock_tee.py,sha256=ifVqb03FgQ5EDK8r14PMpZKMMaSeqMDorcpGLiy00mM,2233
|
35
35
|
mplang/kernels/phe.py,sha256=8-_1IFPOaGECGj9mbYja8XoqbMYnYqfpDNVyMJd8J1Y,65247
|
36
36
|
mplang/kernels/spu.py,sha256=Kkg1ZQbmklXl7YkIeBfxqs3o4wX7ygBE8hXLpx90L9Y,9307
|
37
|
-
mplang/kernels/sql_duckdb.py,sha256=
|
37
|
+
mplang/kernels/sql_duckdb.py,sha256=UN1Ev6-MxF_-65zMExUsLScC9PlmEIEcN8YziIoX_rY,1724
|
38
38
|
mplang/kernels/stablehlo.py,sha256=jDsu-lIHRAm94FcUcxZgK02c6BhFJpbO8cf2hP2DFgk,2937
|
39
39
|
mplang/ops/__init__.py,sha256=dpe7WWiYapOFzJeGoKFYBr5mnd6P5SdOyvdYaM2Nhm0,1408
|
40
|
-
mplang/ops/base.py,sha256=
|
40
|
+
mplang/ops/base.py,sha256=h67_SHWNZGUuTCuMll-9kDgGvlPhlFov7WAQCHTmUvw,18258
|
41
41
|
mplang/ops/builtin.py,sha256=D7T8rRF9g05VIw9T72lsncF5cDQqaT37eapBieRKvRI,9363
|
42
42
|
mplang/ops/crypto.py,sha256=9CeFJrYmvjmgx-3WQl6jHXh8VafRpT4QBunbzsPF8Uc,3646
|
43
|
-
mplang/ops/ibis_cc.py,sha256=
|
43
|
+
mplang/ops/ibis_cc.py,sha256=G8TobBlkyT_IxOWXmMm4APPUnj6sH9bJ-1STfw4kIcw,4256
|
44
44
|
mplang/ops/jax_cc.py,sha256=42czYg3hNQbI_nUebXnshlU8ULwM-oBDe_TQoApLNVA,7802
|
45
45
|
mplang/ops/phe.py,sha256=SatswExjZWPed8y3qA33BCwIWbvsgHCuCAz_pv2RLLw,6790
|
46
46
|
mplang/ops/spu.py,sha256=UHr5DSoqG08xDYER_11OsMVjGGNXXxsvkFoVvXU8uik,4989
|
47
|
-
mplang/ops/sql.py,sha256=
|
47
|
+
mplang/ops/sql.py,sha256=HyY2i5aGC5W7r62JryFSjQCUDXH3kQz82YADwn4z5uc,2015
|
48
48
|
mplang/ops/tee.py,sha256=gwzP81y2idH-d-Du84H6oNZpLaGD-3fEgm8G1uxWpUA,1388
|
49
49
|
mplang/protos/v1alpha1/mpir_pb2.py,sha256=Bros37t-4LMJbuUYVSM65rImUYTtZDhNTIADGbZCKp0,7522
|
50
50
|
mplang/protos/v1alpha1/mpir_pb2.pyi,sha256=GwXR4wPB_kB_36iYS9x-cGI9KDKFMq89KhdLhW_xmvE,19342
|
@@ -70,8 +70,8 @@ mplang/utils/crypto.py,sha256=rvPomBFtznRHc3RPi6Aip9lsU8zW2oxBqGv1K3vn7Rs,1052
|
|
70
70
|
mplang/utils/func_utils.py,sha256=vCJcZmu0bEbqhOQKdpttV2_MBllIcPSN0b8U4WjNGGo,5164
|
71
71
|
mplang/utils/spu_utils.py,sha256=S3L9RBkBe2AvSuMSQQ12cBY5Y1NPthubvErSX_7nj1A,4158
|
72
72
|
mplang/utils/table_utils.py,sha256=aC-IZOKkSmFkpr3NZchLM0Wt0GOn-rg_xHBHREWBwAU,2202
|
73
|
-
mplang_nightly-0.1.
|
74
|
-
mplang_nightly-0.1.
|
75
|
-
mplang_nightly-0.1.
|
76
|
-
mplang_nightly-0.1.
|
77
|
-
mplang_nightly-0.1.
|
73
|
+
mplang_nightly-0.1.dev152.dist-info/METADATA,sha256=5Mt-R98IyuopKWLvWdxbCio3Yo8KmmmYqs92FyETS5M,16547
|
74
|
+
mplang_nightly-0.1.dev152.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
75
|
+
mplang_nightly-0.1.dev152.dist-info/entry_points.txt,sha256=mG1oJT-GAjQR834a62_QIWb7litzWPPyVnwFqm-rWuY,55
|
76
|
+
mplang_nightly-0.1.dev152.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
77
|
+
mplang_nightly-0.1.dev152.dist-info/RECORD,,
|
File without changes
|
{mplang_nightly-0.1.dev151.dist-info → mplang_nightly-0.1.dev152.dist-info}/entry_points.txt
RENAMED
File without changes
|
{mplang_nightly-0.1.dev151.dist-info → mplang_nightly-0.1.dev152.dist-info}/licenses/LICENSE
RENAMED
File without changes
|