Skip to content

Commit 5deb81b

Browse files
committed
refactor: adopt crates/ + python workspace layout
1 parent 37b154f commit 5deb81b

15 files changed

Lines changed: 242 additions & 23 deletions

File tree

Lines changed: 120 additions & 11 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
[workspace]
2+
members = [
3+
"crates/lance-context-core",
4+
"crates/lance-context",
5+
"python",
6+
]
7+
resolver = "2"
8+
9+
[workspace.package]
10+
edition = "2021"
11+
license = "Apache-2.0"
12+
13+
[workspace.metadata]
14+
# reserved for future use

README.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,10 @@ Key motivations inspired by the broader Lance roadmap<sup>[1](https://github.com
2323
## Project layout
2424

2525
```
26-
rust/lance-context # Core Rust crate (ContextStore, schema, serialization)
27-
python/ # Python bindings, wheel build, and pytest suite
28-
python/tests/ # High-level integration tests
26+
crates/lance-context-core # Pure Rust context engine (no Python deps)
27+
crates/lance-context # Re-export crate consumed by downstream clients/bindings
28+
python/ # PyO3 bindings, wheel build, and pytest suite
29+
python/tests/ # High-level integration tests
2930
```
3031

3132
## Getting started
@@ -99,7 +100,7 @@ println!("Current version {}", store.version());
99100
## Testing
100101

101102
- `make test` – Python pytest suite (including persistence integration tests).
102-
- `cargo test --manifest-path rust/lance-context/Cargo.toml` – Rust unit tests.
103+
- `cargo test --manifest-path crates/lance-context-core/Cargo.toml` – Rust unit tests.
103104
- `python/.venv/bin/ruff check python/` and `python/.venv/bin/pyright` – linting/type checks.
104105

105106
## Roadmap
@@ -121,7 +122,7 @@ Contributions are welcome—feel free to comment on the issues above or open you
121122
make venv # creates python/.venv using uv
122123
make install # installs the package in editable mode with test extras
123124
make test # runs pytest (python/tests/)
124-
cargo test --manifest-path rust/lance-context/Cargo.toml
125+
cargo test --manifest-path crates/lance-context-core/Cargo.toml
125126
```
126127
4. Run linting/type checks: `python/.venv/bin/ruff check python/`, `python/.venv/bin/pyright`, and `~/.cargo/bin/cargo fmt -- --check`.
127128
5. Open a Pull Request with a clear summary of the change.
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
[package]
2-
name = "lance-context"
2+
name = "lance-context-core"
33
version = "0.1.0"
44
edition = "2021"
55
license = "Apache-2.0"
66
authors = ["Lance Devs <dev@lancedb.com>"]
77
repository = "https://github.com/lancedb/lance-context"
8-
readme = "README.md"
8+
readme = "../../README.md"
99
description = "Multimodal, versioned context storage for agentic workflows"
1010
keywords = ["context", "multimodal", "lance", "agents", "storage"]
1111
categories = ["database", "data-structures", "science"]
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# lance-context-core
2+
3+
Pure Rust engine for the lance-context project. This crate is free of Python
4+
dependencies and is re-exported by the `lance-context` wrapper crate.

0 commit comments

Comments
 (0)