corvid-python 0.3.4__tar.gz → 0.4.1__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.
Files changed (42) hide show
  1. {corvid_python-0.3.4 → corvid_python-0.4.1}/Cargo.lock +2 -2
  2. {corvid_python-0.3.4 → corvid_python-0.4.1}/Cargo.toml +1 -1
  3. {corvid_python-0.3.4 → corvid_python-0.4.1}/PKG-INFO +17 -21
  4. {corvid_python-0.3.4 → corvid_python-0.4.1}/README.md +16 -20
  5. {corvid_python-0.3.4 → corvid_python-0.4.1}/docs/PLAN.md +3 -3
  6. {corvid_python-0.3.4 → corvid_python-0.4.1}/pyproject.toml +1 -1
  7. {corvid_python-0.3.4 → corvid_python-0.4.1}/.cargo/config.toml +0 -0
  8. {corvid_python-0.3.4 → corvid_python-0.4.1}/.github/workflows/ci.yml +0 -0
  9. {corvid_python-0.3.4 → corvid_python-0.4.1}/.github/workflows/release.yml +0 -0
  10. {corvid_python-0.3.4 → corvid_python-0.4.1}/.gitignore +0 -0
  11. {corvid_python-0.3.4 → corvid_python-0.4.1}/LICENSE +0 -0
  12. {corvid_python-0.3.4 → corvid_python-0.4.1}/docs/SURFACE.tsv +0 -0
  13. {corvid_python-0.3.4 → corvid_python-0.4.1}/examples/geo.py +0 -0
  14. {corvid_python-0.3.4 → corvid_python-0.4.1}/examples/graph.py +0 -0
  15. {corvid_python-0.3.4 → corvid_python-0.4.1}/examples/hybrid.py +0 -0
  16. {corvid_python-0.3.4 → corvid_python-0.4.1}/examples/quickstart.py +0 -0
  17. {corvid_python-0.3.4 → corvid_python-0.4.1}/examples/text_search.py +0 -0
  18. {corvid_python-0.3.4 → corvid_python-0.4.1}/examples/vector_index.py +0 -0
  19. {corvid_python-0.3.4 → corvid_python-0.4.1}/python/corvid/__init__.py +0 -0
  20. {corvid_python-0.3.4 → corvid_python-0.4.1}/python/corvid/__init__.pyi +0 -0
  21. {corvid_python-0.3.4 → corvid_python-0.4.1}/python/corvid/py.typed +0 -0
  22. {corvid_python-0.3.4 → corvid_python-0.4.1}/scripts/surface-gate.sh +0 -0
  23. {corvid_python-0.3.4 → corvid_python-0.4.1}/src/collection.rs +0 -0
  24. {corvid_python-0.3.4 → corvid_python-0.4.1}/src/db.rs +0 -0
  25. {corvid_python-0.3.4 → corvid_python-0.4.1}/src/error.rs +0 -0
  26. {corvid_python-0.3.4 → corvid_python-0.4.1}/src/lib.rs +0 -0
  27. {corvid_python-0.3.4 → corvid_python-0.4.1}/src/pred.rs +0 -0
  28. {corvid_python-0.3.4 → corvid_python-0.4.1}/src/query.rs +0 -0
  29. {corvid_python-0.3.4 → corvid_python-0.4.1}/src/types.rs +0 -0
  30. {corvid_python-0.3.4 → corvid_python-0.4.1}/src/value.rs +0 -0
  31. {corvid_python-0.3.4 → corvid_python-0.4.1}/tests/golden/admin.txt +0 -0
  32. {corvid_python-0.3.4 → corvid_python-0.4.1}/tests/golden/geo.txt +0 -0
  33. {corvid_python-0.3.4 → corvid_python-0.4.1}/tests/golden/graph.txt +0 -0
  34. {corvid_python-0.3.4 → corvid_python-0.4.1}/tests/golden/mutations.txt +0 -0
  35. {corvid_python-0.3.4 → corvid_python-0.4.1}/tests/golden/persist.txt +0 -0
  36. {corvid_python-0.3.4 → corvid_python-0.4.1}/tests/golden/queries.txt +0 -0
  37. {corvid_python-0.3.4 → corvid_python-0.4.1}/tests/golden/schema.txt +0 -0
  38. {corvid_python-0.3.4 → corvid_python-0.4.1}/tests/golden/values.txt +0 -0
  39. {corvid_python-0.3.4 → corvid_python-0.4.1}/tests/test_context_managers.py +0 -0
  40. {corvid_python-0.3.4 → corvid_python-0.4.1}/tests/test_error_code.py +0 -0
  41. {corvid_python-0.3.4 → corvid_python-0.4.1}/tests/test_golden.py +0 -0
  42. {corvid_python-0.3.4 → corvid_python-0.4.1}/tests/test_value_mapping.py +0 -0
@@ -4,8 +4,8 @@ version = 4
4
4
 
5
5
  [[package]]
6
6
  name = "corvid-db"
7
- version = "0.3.2"
8
- source = "git+https://github.com/corvid-db/corvid.git?tag=v0.3.4#b726ac5a1ebace9f94dc12007a4e06927241cf4c"
7
+ version = "0.4.1"
8
+ source = "git+https://github.com/corvid-db/corvid.git?tag=v0.4.1#0b7f4bcaff93976c7ea8463c4b57f9cd7c55bbfd"
9
9
  dependencies = [
10
10
  "redb",
11
11
  "thiserror",
@@ -24,7 +24,7 @@ pyo3 = { version = "0.29", features = ["abi3-py311"] }
24
24
  # binding pins exact engine tags; the engine PACKAGE is corvid-db —
25
25
  # bare `corvid` is an unrelated crates.io crate — its LIB ident is
26
26
  # corvid, so `use corvid::…` is unchanged).
27
- corvid-db = { git = "https://github.com/corvid-db/corvid.git", tag = "v0.3.4" }
27
+ corvid-db = { git = "https://github.com/corvid-db/corvid.git", tag = "v0.4.1" }
28
28
 
29
29
  [dev-dependencies]
30
30
  # Test-only: the variant-inventory snapshot test (src/error.rs)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: corvid-python
3
- Version: 0.3.4
3
+ Version: 0.4.1
4
4
  Classifier: Development Status :: 3 - Alpha
5
5
  Classifier: Intended Audience :: Developers
6
6
  Classifier: License :: OSI Approved :: MIT License
@@ -40,22 +40,21 @@ against this binding's public API on every CI run
40
40
 
41
41
  ## Install
42
42
 
43
- Pending first publish: the package is **not on PyPI yet** — everything
44
- is prepared (maturin wheel config, one abi3 wheel per platform), and
45
- publishing waits on the first release tag (docs/PLAN.md §6). Until
46
- then, build from source — Python 3.11–3.14 (the floor is 3.11; CI
47
- exercises 3.14/3.13/3.12/3.11 on every wheel platform), Rust 1.88,
48
- and a C toolchain:
43
+ ```sh
44
+ pip install corvid-python
45
+ ```
46
+
47
+ Published to PyPI by the release workflow (maturin-built abi3 wheels,
48
+ one `cp311` wheel per platform covering every Python ≥ 3.11; the
49
+ matrix ships `linux-x64` / `linux-arm64` / `macos-arm64` /
50
+ `windows-x64`). To build from source instead — Python 3.11–3.14 (CI
51
+ exercises 3.14/3.13/3.12/3.11), Rust ≥ 1.88, and a C toolchain:
49
52
 
50
53
  ```sh
51
54
  pip install maturin
52
55
  maturin develop --release # into the active venv
53
56
  ```
54
57
 
55
- The wheel is abi3 (cp311), so one wheel per platform covers every
56
- Python ≥ 3.11. Planned platform matrix: `linux-x64` /
57
- `linux-arm64` / `macos-arm64` / `windows-x64`.
58
-
59
58
  ## Usage
60
59
 
61
60
  ```python
@@ -106,16 +105,13 @@ public API is fully typed.
106
105
  ## Examples
107
106
 
108
107
  Six runnable programs in [`examples/`](examples/) — one per concept,
109
- deterministic output, executed on every CI leg:
110
-
111
- | File | What it shows |
112
- | --- | --- |
113
- | `quickstart.py` | open, insert 3 docs, kNN vector query, print |
114
- | `hybrid.py` | filter + vector + BM25, RRF fusion, MMR rerank, limit |
115
- | `vector_index.py` | in-memory / on-disk / binary-quantized HNSW vs exact, reopen |
116
- | `text_search.py` | BM25 ranking, English + CJK (bigram segmentation) |
117
- | `graph.py` | link/neighbors/traverse + the delete cascade |
118
- | `geo.py` | radius / bbox / nearest-k over real coordinates (haversine km) |
108
+ with deterministic output, executed on every CI leg: the quickstart
109
+ (open, insert, kNN), **hybrid** (filter + vector + BM25, RRF fusion,
110
+ MMR rerank), **vector-index** (in-memory / on-disk /
111
+ binary-quantized HNSW vs exact, across a reopen), **text-search**
112
+ (BM25, English + CJK bigram segmentation), **graph**
113
+ (link/neighbors/traverse + the delete cascade), and **geo**
114
+ (radius / bbox / nearest-k over real coordinates).
119
115
 
120
116
  ```sh
121
117
  maturin develop && python examples/hybrid.py
@@ -15,22 +15,21 @@ against this binding's public API on every CI run
15
15
 
16
16
  ## Install
17
17
 
18
- Pending first publish: the package is **not on PyPI yet** — everything
19
- is prepared (maturin wheel config, one abi3 wheel per platform), and
20
- publishing waits on the first release tag (docs/PLAN.md §6). Until
21
- then, build from source — Python 3.11–3.14 (the floor is 3.11; CI
22
- exercises 3.14/3.13/3.12/3.11 on every wheel platform), Rust 1.88,
23
- and a C toolchain:
18
+ ```sh
19
+ pip install corvid-python
20
+ ```
21
+
22
+ Published to PyPI by the release workflow (maturin-built abi3 wheels,
23
+ one `cp311` wheel per platform covering every Python ≥ 3.11; the
24
+ matrix ships `linux-x64` / `linux-arm64` / `macos-arm64` /
25
+ `windows-x64`). To build from source instead — Python 3.11–3.14 (CI
26
+ exercises 3.14/3.13/3.12/3.11), Rust ≥ 1.88, and a C toolchain:
24
27
 
25
28
  ```sh
26
29
  pip install maturin
27
30
  maturin develop --release # into the active venv
28
31
  ```
29
32
 
30
- The wheel is abi3 (cp311), so one wheel per platform covers every
31
- Python ≥ 3.11. Planned platform matrix: `linux-x64` /
32
- `linux-arm64` / `macos-arm64` / `windows-x64`.
33
-
34
33
  ## Usage
35
34
 
36
35
  ```python
@@ -81,16 +80,13 @@ public API is fully typed.
81
80
  ## Examples
82
81
 
83
82
  Six runnable programs in [`examples/`](examples/) — one per concept,
84
- deterministic output, executed on every CI leg:
85
-
86
- | File | What it shows |
87
- | --- | --- |
88
- | `quickstart.py` | open, insert 3 docs, kNN vector query, print |
89
- | `hybrid.py` | filter + vector + BM25, RRF fusion, MMR rerank, limit |
90
- | `vector_index.py` | in-memory / on-disk / binary-quantized HNSW vs exact, reopen |
91
- | `text_search.py` | BM25 ranking, English + CJK (bigram segmentation) |
92
- | `graph.py` | link/neighbors/traverse + the delete cascade |
93
- | `geo.py` | radius / bbox / nearest-k over real coordinates (haversine km) |
83
+ with deterministic output, executed on every CI leg: the quickstart
84
+ (open, insert, kNN), **hybrid** (filter + vector + BM25, RRF fusion,
85
+ MMR rerank), **vector-index** (in-memory / on-disk /
86
+ binary-quantized HNSW vs exact, across a reopen), **text-search**
87
+ (BM25, English + CJK bigram segmentation), **graph**
88
+ (link/neighbors/traverse + the delete cascade), and **geo**
89
+ (radius / bbox / nearest-k over real coordinates).
94
90
 
95
91
  ```sh
96
92
  maturin develop && python examples/hybrid.py
@@ -18,7 +18,7 @@ variants are additive later, decided by the FFI bench).
18
18
  | --- | --- |
19
19
  | The pyo3 crate (engine-binding layer AND idiom layer — see §3) | `src/*.rs` — `DbPy`/`CollectionPy`/`QueryPy`, value mapping, error mapping, predicates |
20
20
  | The public package | `python/corvid/__init__.py` re-exports `corvid._native`; `__init__.pyi` + `py.typed` carry the full typing |
21
- | The golden-suite port | `tests/test_golden.py` driving `tests/golden/*.txt` (vendored byte-identical from the v0.3.4 release — the pinned engine tag; the same fixtures the C smoke suite and corvid-node run) |
21
+ | The golden-suite port | `tests/test_golden.py` driving `tests/golden/*.txt` (vendored byte-identical from the v0.4.1 release — the pinned engine tag; the same fixtures the C smoke suite and corvid-node run) |
22
22
  | Packaging | `pyproject.toml` (maturin, one cp311-abi3 wheel per platform), README (install-pending note), LICENSE (MIT), `.gitignore` |
23
23
  | CI | `.github/workflows/ci.yml` — surface gate + lint + golden suite × 4 platform legs (linux-x64/arm64, macos-arm64, windows-x64) × {3.14, 3.13, 3.12, 3.11} + `maturin build` smoke |
24
24
 
@@ -35,7 +35,7 @@ totals test pre-scans all files for exactly 267).
35
35
  Two architectures were on the table:
36
36
 
37
37
  1. **(chosen)** A Rust pyo3 crate that links the engine crate directly
38
- (`corvid-db = { git = "https://github.com/corvid-db/corvid.git", tag = "v0.3.4" }`
38
+ (`corvid-db = { git = "https://github.com/corvid-db/corvid.git", tag = "v0.4.1" }`
39
39
  — the engine package is `corvid-db` with lib ident `corvid`; bare
40
40
  `corvid` on crates.io is an unrelated crate) and exposes the OOP
41
41
  surface through native pyo3 classes, built into a Python extension
@@ -222,4 +222,4 @@ Documented corners:
222
222
  | Variadic `and_`/`or_` (trailing underscores) | Python keywords; mirrors the JS binding's variadic `and`/`or` |
223
223
  | Counter + Arc exclusivity for `compact` | mirrors the ABI §4.13 gate exactly; pinned by admin.txt |
224
224
  | pyo3 0.29, maturin 1.x | current crates.io stable lines |
225
- | Vendored golden fixtures (byte-identical to the v0.3.4 tag — the pinned engine version) | stable text; the suite must run offline and per-PR (verified identical to `crates/corvid-ffi/golden/`) |
225
+ | Vendored golden fixtures (byte-identical to the v0.4.1 tag — the pinned engine version) | stable text; the suite must run offline and per-PR (verified identical to `crates/corvid-ffi/golden/`) |
@@ -4,7 +4,7 @@ build-backend = "maturin"
4
4
 
5
5
  [project]
6
6
  name = "corvid-python"
7
- version = "0.3.4"
7
+ version = "0.4.1"
8
8
  description = "Python binding for the corvid embedded database — the engine compiled in via pyo3, exposed as idiomatic OOP"
9
9
  readme = "README.md"
10
10
  license = "MIT"
File without changes
File without changes
File without changes
File without changes
File without changes