clickhouse-connect-core 0.1.0__tar.gz
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.
- clickhouse_connect_core-0.1.0/Cargo.lock +139 -0
- clickhouse_connect_core-0.1.0/Cargo.toml +7 -0
- clickhouse_connect_core-0.1.0/PKG-INFO +42 -0
- clickhouse_connect_core-0.1.0/README.md +23 -0
- clickhouse_connect_core-0.1.0/ch-core-py/Cargo.toml +21 -0
- clickhouse_connect_core-0.1.0/ch-core-py/README.md +23 -0
- clickhouse_connect_core-0.1.0/ch-core-py/build.rs +4 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/batch.rs +518 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/decoder.rs +330 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/insert/containers.rs +840 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/insert/fastpath.rs +1387 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/insert/json.rs +350 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/insert/mod.rs +418 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/insert/qbit.rs +553 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/insert/scalar.rs +1692 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/insert/special.rs +932 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/insert/temporal.rs +1043 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/insert/variant.rs +376 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/lib.rs +21 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/pyval/containers.rs +226 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/pyval/ctx.rs +343 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/pyval/errors.rs +69 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/pyval/fixed.rs +472 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/pyval/json.rs +434 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/pyval/mod.rs +284 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/pyval/ptr.rs +93 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/pyval/qbit.rs +120 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/pyval/scalar.rs +592 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/pyval/temporal.rs +143 -0
- clickhouse_connect_core-0.1.0/ch-core-py/src/pyval/variant_dynamic.rs +417 -0
- clickhouse_connect_core-0.1.0/ch-core-py/tests/helpers.py +608 -0
- clickhouse_connect_core-0.1.0/ch-core-py/tests/test_containers.py +1427 -0
- clickhouse_connect_core-0.1.0/ch-core-py/tests/test_insert_fastpaths.py +409 -0
- clickhouse_connect_core-0.1.0/ch-core-py/tests/test_intake_exits.py +768 -0
- clickhouse_connect_core-0.1.0/ch-core-py/tests/test_json.py +473 -0
- clickhouse_connect_core-0.1.0/ch-core-py/tests/test_low_cardinality.py +230 -0
- clickhouse_connect_core-0.1.0/ch-core-py/tests/test_qbit.py +264 -0
- clickhouse_connect_core-0.1.0/ch-core-py/tests/test_scalars.py +447 -0
- clickhouse_connect_core-0.1.0/ch-core-py/tests/test_strings_special.py +843 -0
- clickhouse_connect_core-0.1.0/ch-core-py/tests/test_temporal.py +759 -0
- clickhouse_connect_core-0.1.0/ch-core-py/tests/test_variant_dynamic.py +593 -0
- clickhouse_connect_core-0.1.0/ch-core-py/tests/test_wide_int.py +263 -0
- clickhouse_connect_core-0.1.0/pyproject.toml +30 -0
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
# This file is automatically @generated by Cargo.
|
|
2
|
+
# It is not intended for manual editing.
|
|
3
|
+
version = 4
|
|
4
|
+
|
|
5
|
+
[[package]]
|
|
6
|
+
name = "ch-core-py"
|
|
7
|
+
version = "0.1.0"
|
|
8
|
+
dependencies = [
|
|
9
|
+
"ch-core-rs",
|
|
10
|
+
"pyo3",
|
|
11
|
+
"pyo3-build-config",
|
|
12
|
+
]
|
|
13
|
+
|
|
14
|
+
[[package]]
|
|
15
|
+
name = "ch-core-rs"
|
|
16
|
+
version = "0.1.1"
|
|
17
|
+
source = "git+https://github.com/ClickHouse/ch-core-rs?tag=v0.1.1#303c09fc5c064505ade7e2c7bd5a12cd308de549"
|
|
18
|
+
|
|
19
|
+
[[package]]
|
|
20
|
+
name = "heck"
|
|
21
|
+
version = "0.5.0"
|
|
22
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
23
|
+
checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
|
|
24
|
+
|
|
25
|
+
[[package]]
|
|
26
|
+
name = "libc"
|
|
27
|
+
version = "0.2.185"
|
|
28
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
29
|
+
checksum = "52ff2c0fe9bc6cb6b14a0592c2ff4fa9ceb83eea9db979b0487cd054946a2b8f"
|
|
30
|
+
|
|
31
|
+
[[package]]
|
|
32
|
+
name = "once_cell"
|
|
33
|
+
version = "1.21.4"
|
|
34
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
35
|
+
checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50"
|
|
36
|
+
|
|
37
|
+
[[package]]
|
|
38
|
+
name = "portable-atomic"
|
|
39
|
+
version = "1.13.1"
|
|
40
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
41
|
+
checksum = "c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49"
|
|
42
|
+
|
|
43
|
+
[[package]]
|
|
44
|
+
name = "proc-macro2"
|
|
45
|
+
version = "1.0.106"
|
|
46
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
47
|
+
checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934"
|
|
48
|
+
dependencies = [
|
|
49
|
+
"unicode-ident",
|
|
50
|
+
]
|
|
51
|
+
|
|
52
|
+
[[package]]
|
|
53
|
+
name = "pyo3"
|
|
54
|
+
version = "0.29.2"
|
|
55
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
56
|
+
checksum = "4688ddedf473e32662b9b067670129a8afb8c18e351482c70d62ba4a88171e8b"
|
|
57
|
+
dependencies = [
|
|
58
|
+
"libc",
|
|
59
|
+
"once_cell",
|
|
60
|
+
"portable-atomic",
|
|
61
|
+
"pyo3-build-config",
|
|
62
|
+
"pyo3-ffi",
|
|
63
|
+
"pyo3-macros",
|
|
64
|
+
]
|
|
65
|
+
|
|
66
|
+
[[package]]
|
|
67
|
+
name = "pyo3-build-config"
|
|
68
|
+
version = "0.29.2"
|
|
69
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
70
|
+
checksum = "f41027e41b4bd03f6e60f9f417fe24a6341a6bb744edd62b6f709f2a52ea30e9"
|
|
71
|
+
dependencies = [
|
|
72
|
+
"target-lexicon",
|
|
73
|
+
]
|
|
74
|
+
|
|
75
|
+
[[package]]
|
|
76
|
+
name = "pyo3-ffi"
|
|
77
|
+
version = "0.29.2"
|
|
78
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
79
|
+
checksum = "e591a95526fead067432c3b3a33fc74770b87b1e04e73671090d9c2055a2b327"
|
|
80
|
+
dependencies = [
|
|
81
|
+
"libc",
|
|
82
|
+
"pyo3-build-config",
|
|
83
|
+
]
|
|
84
|
+
|
|
85
|
+
[[package]]
|
|
86
|
+
name = "pyo3-macros"
|
|
87
|
+
version = "0.29.2"
|
|
88
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
89
|
+
checksum = "73225868fc1cd84eef2c3c230ddb91273bf1de46aeb8a4248da76d32a0924a1c"
|
|
90
|
+
dependencies = [
|
|
91
|
+
"proc-macro2",
|
|
92
|
+
"pyo3-macros-backend",
|
|
93
|
+
"quote",
|
|
94
|
+
"syn",
|
|
95
|
+
]
|
|
96
|
+
|
|
97
|
+
[[package]]
|
|
98
|
+
name = "pyo3-macros-backend"
|
|
99
|
+
version = "0.29.2"
|
|
100
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
101
|
+
checksum = "571575aa3749fa6216757dd47d2a3e7ef360f329a40f0666a9fbd14889024952"
|
|
102
|
+
dependencies = [
|
|
103
|
+
"heck",
|
|
104
|
+
"proc-macro2",
|
|
105
|
+
"quote",
|
|
106
|
+
"syn",
|
|
107
|
+
]
|
|
108
|
+
|
|
109
|
+
[[package]]
|
|
110
|
+
name = "quote"
|
|
111
|
+
version = "1.0.45"
|
|
112
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
113
|
+
checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924"
|
|
114
|
+
dependencies = [
|
|
115
|
+
"proc-macro2",
|
|
116
|
+
]
|
|
117
|
+
|
|
118
|
+
[[package]]
|
|
119
|
+
name = "syn"
|
|
120
|
+
version = "2.0.117"
|
|
121
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
122
|
+
checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99"
|
|
123
|
+
dependencies = [
|
|
124
|
+
"proc-macro2",
|
|
125
|
+
"quote",
|
|
126
|
+
"unicode-ident",
|
|
127
|
+
]
|
|
128
|
+
|
|
129
|
+
[[package]]
|
|
130
|
+
name = "target-lexicon"
|
|
131
|
+
version = "0.13.5"
|
|
132
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
133
|
+
checksum = "adb6935a6f5c20170eeceb1a3835a49e12e19d792f6dd344ccc76a985ca5a6ca"
|
|
134
|
+
|
|
135
|
+
[[package]]
|
|
136
|
+
name = "unicode-ident"
|
|
137
|
+
version = "1.0.24"
|
|
138
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
139
|
+
checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75"
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: clickhouse-connect-core
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
5
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
6
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
7
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
8
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
9
|
+
Classifier: Programming Language :: Rust
|
|
10
|
+
Summary: Compiled Rust native-format codec for clickhouse-connect
|
|
11
|
+
License-Expression: Apache-2.0
|
|
12
|
+
Requires-Python: >=3.10
|
|
13
|
+
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
|
|
14
|
+
Project-URL: Documentation, https://clickhouse.com/docs/integrations/language-clients/python/rust-codec
|
|
15
|
+
Project-URL: Homepage, https://github.com/ClickHouse/clickhouse-connect
|
|
16
|
+
Project-URL: Issues, https://github.com/ClickHouse/clickhouse-connect/issues
|
|
17
|
+
Project-URL: Repository, https://github.com/ClickHouse/clickhouse-connect
|
|
18
|
+
|
|
19
|
+
# clickhouse-connect-core
|
|
20
|
+
|
|
21
|
+
Compiled Rust codec for [clickhouse-connect](https://pypi.org/project/clickhouse-connect/). This wheel provides the `_ch_core` extension module that decodes ClickHouse `FORMAT Native` query results and encodes inserts.
|
|
22
|
+
|
|
23
|
+
This package is not meant to be used directly. Install it through the `rust` extra of the main driver:
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
pip install "clickhouse-connect[rust]"
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Then enable the codec on a client:
|
|
30
|
+
|
|
31
|
+
```python
|
|
32
|
+
import clickhouse_connect
|
|
33
|
+
|
|
34
|
+
client = clickhouse_connect.get_client(host="localhost", native_codec="rust")
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
The codec is experimental and opt in. See the [clickhouse-connect documentation](https://clickhouse.com/docs/integrations/language-clients/python/rust-codec) for supported values, fallback rules, and version compatibility.
|
|
38
|
+
|
|
39
|
+
The `_ch_core` module has no public API contract. Its interface exists solely for the clickhouse-connect driver, which checks a binding API version at client creation and tells you when this wheel needs an upgrade.
|
|
40
|
+
|
|
41
|
+
Issues and source live in the [clickhouse-connect repository](https://github.com/ClickHouse/clickhouse-connect) under `rust/ch-core-py`. The decoding core itself is [ch-core-rs](https://github.com/ClickHouse/ch-core-rs).
|
|
42
|
+
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# clickhouse-connect-core
|
|
2
|
+
|
|
3
|
+
Compiled Rust codec for [clickhouse-connect](https://pypi.org/project/clickhouse-connect/). This wheel provides the `_ch_core` extension module that decodes ClickHouse `FORMAT Native` query results and encodes inserts.
|
|
4
|
+
|
|
5
|
+
This package is not meant to be used directly. Install it through the `rust` extra of the main driver:
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
pip install "clickhouse-connect[rust]"
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Then enable the codec on a client:
|
|
12
|
+
|
|
13
|
+
```python
|
|
14
|
+
import clickhouse_connect
|
|
15
|
+
|
|
16
|
+
client = clickhouse_connect.get_client(host="localhost", native_codec="rust")
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
The codec is experimental and opt in. See the [clickhouse-connect documentation](https://clickhouse.com/docs/integrations/language-clients/python/rust-codec) for supported values, fallback rules, and version compatibility.
|
|
20
|
+
|
|
21
|
+
The `_ch_core` module has no public API contract. Its interface exists solely for the clickhouse-connect driver, which checks a binding API version at client creation and tells you when this wheel needs an upgrade.
|
|
22
|
+
|
|
23
|
+
Issues and source live in the [clickhouse-connect repository](https://github.com/ClickHouse/clickhouse-connect) under `rust/ch-core-py`. The decoding core itself is [ch-core-rs](https://github.com/ClickHouse/ch-core-rs).
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
[package]
|
|
2
|
+
name = "ch-core-py"
|
|
3
|
+
version = "0.1.0"
|
|
4
|
+
edition = "2021"
|
|
5
|
+
description = "PyO3 binding crate for the clickhouse-connect-core wheel"
|
|
6
|
+
license = "Apache-2.0"
|
|
7
|
+
repository = "https://github.com/ClickHouse/clickhouse-connect"
|
|
8
|
+
readme = "README.md"
|
|
9
|
+
|
|
10
|
+
[lib]
|
|
11
|
+
name = "_ch_core"
|
|
12
|
+
crate-type = ["cdylib"]
|
|
13
|
+
|
|
14
|
+
[dependencies]
|
|
15
|
+
ch-core-rs = { git = "https://github.com/ClickHouse/ch-core-rs", tag = "v0.1.1" }
|
|
16
|
+
# generate-import-lib synthesizes the CPython import library when
|
|
17
|
+
# cross-compiling to Windows targets with no local interpreter
|
|
18
|
+
pyo3 = { version = "0.29", features = ["extension-module", "generate-import-lib"] }
|
|
19
|
+
|
|
20
|
+
[build-dependencies]
|
|
21
|
+
pyo3-build-config = { version = "0.29", features = ["resolve-config"] }
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# clickhouse-connect-core
|
|
2
|
+
|
|
3
|
+
Compiled Rust codec for [clickhouse-connect](https://pypi.org/project/clickhouse-connect/). This wheel provides the `_ch_core` extension module that decodes ClickHouse `FORMAT Native` query results and encodes inserts.
|
|
4
|
+
|
|
5
|
+
This package is not meant to be used directly. Install it through the `rust` extra of the main driver:
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
pip install "clickhouse-connect[rust]"
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Then enable the codec on a client:
|
|
12
|
+
|
|
13
|
+
```python
|
|
14
|
+
import clickhouse_connect
|
|
15
|
+
|
|
16
|
+
client = clickhouse_connect.get_client(host="localhost", native_codec="rust")
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
The codec is experimental and opt in. See the [clickhouse-connect documentation](https://clickhouse.com/docs/integrations/language-clients/python/rust-codec) for supported values, fallback rules, and version compatibility.
|
|
20
|
+
|
|
21
|
+
The `_ch_core` module has no public API contract. Its interface exists solely for the clickhouse-connect driver, which checks a binding API version at client creation and tells you when this wheel needs an upgrade.
|
|
22
|
+
|
|
23
|
+
Issues and source live in the [clickhouse-connect repository](https://github.com/ClickHouse/clickhouse-connect) under `rust/ch-core-py`. The decoding core itself is [ch-core-rs](https://github.com/ClickHouse/ch-core-rs).
|