humemdb 0.1.0.dev1__tar.gz → 0.1.0.dev2__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.
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/PKG-INFO +28 -5
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/README.md +27 -4
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/docs/development/documentation.md +1 -1
- humemdb-0.1.0.dev2/docs/development/licensing.md +44 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/docs/development/release.md +1 -1
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/docs/getting-started/installation.md +15 -7
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/mkdocs.yml +1 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/.github/workflows/build-docs.yml +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/.github/workflows/deploy-docs.yml +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/.github/workflows/publish-pypi.yml +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/.github/workflows/test-examples.yml +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/.github/workflows/test.yml +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/.gitignore +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/.pre-commit-config.yaml +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/.python-version +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/LICENSE +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/docs/examples/01_sql_basics.md +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/docs/examples/02_cypher_social_graph.md +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/docs/examples/03_vector_search.md +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/docs/examples/index.md +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/docs/getting-started/quickstart.md +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/docs/guide/benchmarks.md +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/docs/guide/query-surfaces.md +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/docs/guide/routing.md +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/docs/guide/transactions.md +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/docs/guide/vectors.md +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/docs/index.md +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/docs/stylesheets/extra.css +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/examples/01_sql_basics.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/examples/02_cypher_social_graph.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/examples/03_vector_search.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/examples/README.md +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/pyproject.toml +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/pyrightconfig.json +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/scripts/README.md +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/scripts/benchmarks/README.md +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/scripts/benchmarks/cypher_graph_path.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/scripts/benchmarks/duckdb_direct_read.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/scripts/benchmarks/results/ivfflat_boundary_150k_400k_dims256_384.json +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/scripts/benchmarks/results/ivfflat_crossover_100k_1m_dims256_384.json +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/scripts/benchmarks/results/ivfflat_crossover_100k_1m_dims768_1024.json +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/scripts/benchmarks/results/ivfhnswsq_crossover_100k_1m_dims256_384.json +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/scripts/benchmarks/results/ivfpq_100k_384.json +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/scripts/benchmarks/results/vector_search_sweep_tuned_threads4_queries100_rows2k-100k_dims256-1024_topk10.json +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/scripts/benchmarks/vector_search.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/scripts/benchmarks/vector_search_sweep.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/scripts/benchmarks/vector_search_tune_lancedb.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/scripts/dev/README.md +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/scripts/fix_markdown.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/scripts/release/README.md +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/scripts/release/run_examples.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/src/humemdb/__init__.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/src/humemdb/cypher.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/src/humemdb/db.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/src/humemdb/engines.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/src/humemdb/runtime.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/src/humemdb/sql.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/src/humemdb/types.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/src/humemdb/vector.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/tests/test_db.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/tests/test_vector.py +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/things-to-do.md +0 -0
- {humemdb-0.1.0.dev1 → humemdb-0.1.0.dev2}/uv.lock +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: humemdb
|
|
3
|
-
Version: 0.1.0.
|
|
3
|
+
Version: 0.1.0.dev2
|
|
4
4
|
Summary: Embedded multi-model database orchestration over SQLite, DuckDB, Cypher, and exact and ANN vector search
|
|
5
5
|
Project-URL: Homepage, https://github.com/humemai/humemdb
|
|
6
6
|
Project-URL: Documentation, https://docs.humem.ai/humemdb/
|
|
@@ -104,6 +104,8 @@ Current behavior is intentionally explicit:
|
|
|
104
104
|
|
|
105
105
|
## Install
|
|
106
106
|
|
|
107
|
+
HumemDB supports Python 3.10 and newer.
|
|
108
|
+
|
|
107
109
|
Install from source:
|
|
108
110
|
|
|
109
111
|
```bash
|
|
@@ -135,6 +137,21 @@ uv sync
|
|
|
135
137
|
`uv lock` updates the lockfile with exact resolved versions. `uv sync` installs that
|
|
136
138
|
exact environment.
|
|
137
139
|
|
|
140
|
+
## Libraries HumemDB relies on
|
|
141
|
+
|
|
142
|
+
HumemDB is a pure Python orchestration layer, but it relies on a small set of core
|
|
143
|
+
Python libraries and embedded engines:
|
|
144
|
+
|
|
145
|
+
- `sqlite3` from the Python standard library for the canonical local write path.
|
|
146
|
+
- `duckdb` for analytical reads over the SQLite-backed source-of-truth database.
|
|
147
|
+
- `numpy` for the exact in-memory vector search baseline.
|
|
148
|
+
- `sqlglot[c]` for the current PostgreSQL-like SQL translation layer.
|
|
149
|
+
- `lancedb` for benchmark work and future indexed ANN paths.
|
|
150
|
+
- `threadpoolctl` for thread-pool coordination around compute-heavy dependencies.
|
|
151
|
+
|
|
152
|
+
Those dependencies are part of the public runtime story. HumemDB does not try to hide
|
|
153
|
+
them behind a fake "single engine" narrative.
|
|
154
|
+
|
|
138
155
|
## 🧠 What is supported today
|
|
139
156
|
|
|
140
157
|
### SQL
|
|
@@ -191,7 +208,7 @@ More examples live in [examples/](examples/) and in the docs site.
|
|
|
191
208
|
- Docs: [docs.humem.ai/humemdb](https://docs.humem.ai/humemdb/)
|
|
192
209
|
- Repository: [github.com/humemai/humemdb](https://github.com/humemai/humemdb)
|
|
193
210
|
- Issues: [github.com/humemai/humemdb/issues](https://github.com/humemai/humemdb/issues)
|
|
194
|
-
- Internal
|
|
211
|
+
- Internal roadmap notes: [things-to-do.md](things-to-do.md)
|
|
195
212
|
|
|
196
213
|
## 📦 Packaging
|
|
197
214
|
|
|
@@ -201,9 +218,15 @@ side.
|
|
|
201
218
|
|
|
202
219
|
## 🗺️ Planning
|
|
203
220
|
|
|
204
|
-
|
|
205
|
-
of this README.
|
|
221
|
+
Detailed internal roadmap notes now live in `things-to-do.md` instead of this README.
|
|
206
222
|
|
|
207
223
|
## 📄 License
|
|
208
224
|
|
|
209
|
-
MIT.
|
|
225
|
+
HumemDB's own source code is licensed under MIT. See [LICENSE](LICENSE).
|
|
226
|
+
|
|
227
|
+
Third-party dependencies keep their own licenses. Installing HumemDB may also install
|
|
228
|
+
third-party Python packages and, in some cases, their native wheels. Those components
|
|
229
|
+
are not relicensed under MIT just because HumemDB depends on them.
|
|
230
|
+
|
|
231
|
+
For the concrete dependency set, see [pyproject.toml](pyproject.toml) and
|
|
232
|
+
[uv.lock](uv.lock).
|
|
@@ -52,6 +52,8 @@ Current behavior is intentionally explicit:
|
|
|
52
52
|
|
|
53
53
|
## Install
|
|
54
54
|
|
|
55
|
+
HumemDB supports Python 3.10 and newer.
|
|
56
|
+
|
|
55
57
|
Install from source:
|
|
56
58
|
|
|
57
59
|
```bash
|
|
@@ -83,6 +85,21 @@ uv sync
|
|
|
83
85
|
`uv lock` updates the lockfile with exact resolved versions. `uv sync` installs that
|
|
84
86
|
exact environment.
|
|
85
87
|
|
|
88
|
+
## Libraries HumemDB relies on
|
|
89
|
+
|
|
90
|
+
HumemDB is a pure Python orchestration layer, but it relies on a small set of core
|
|
91
|
+
Python libraries and embedded engines:
|
|
92
|
+
|
|
93
|
+
- `sqlite3` from the Python standard library for the canonical local write path.
|
|
94
|
+
- `duckdb` for analytical reads over the SQLite-backed source-of-truth database.
|
|
95
|
+
- `numpy` for the exact in-memory vector search baseline.
|
|
96
|
+
- `sqlglot[c]` for the current PostgreSQL-like SQL translation layer.
|
|
97
|
+
- `lancedb` for benchmark work and future indexed ANN paths.
|
|
98
|
+
- `threadpoolctl` for thread-pool coordination around compute-heavy dependencies.
|
|
99
|
+
|
|
100
|
+
Those dependencies are part of the public runtime story. HumemDB does not try to hide
|
|
101
|
+
them behind a fake "single engine" narrative.
|
|
102
|
+
|
|
86
103
|
## 🧠 What is supported today
|
|
87
104
|
|
|
88
105
|
### SQL
|
|
@@ -139,7 +156,7 @@ More examples live in [examples/](examples/) and in the docs site.
|
|
|
139
156
|
- Docs: [docs.humem.ai/humemdb](https://docs.humem.ai/humemdb/)
|
|
140
157
|
- Repository: [github.com/humemai/humemdb](https://github.com/humemai/humemdb)
|
|
141
158
|
- Issues: [github.com/humemai/humemdb/issues](https://github.com/humemai/humemdb/issues)
|
|
142
|
-
- Internal
|
|
159
|
+
- Internal roadmap notes: [things-to-do.md](things-to-do.md)
|
|
143
160
|
|
|
144
161
|
## 📦 Packaging
|
|
145
162
|
|
|
@@ -149,9 +166,15 @@ side.
|
|
|
149
166
|
|
|
150
167
|
## 🗺️ Planning
|
|
151
168
|
|
|
152
|
-
|
|
153
|
-
of this README.
|
|
169
|
+
Detailed internal roadmap notes now live in `things-to-do.md` instead of this README.
|
|
154
170
|
|
|
155
171
|
## 📄 License
|
|
156
172
|
|
|
157
|
-
MIT.
|
|
173
|
+
HumemDB's own source code is licensed under MIT. See [LICENSE](LICENSE).
|
|
174
|
+
|
|
175
|
+
Third-party dependencies keep their own licenses. Installing HumemDB may also install
|
|
176
|
+
third-party Python packages and, in some cases, their native wheels. Those components
|
|
177
|
+
are not relicensed under MIT just because HumemDB depends on them.
|
|
178
|
+
|
|
179
|
+
For the concrete dependency set, see [pyproject.toml](pyproject.toml) and
|
|
180
|
+
[uv.lock](uv.lock).
|
|
@@ -22,7 +22,7 @@ The docs site is published into the shared `humemai-docs` repository under the
|
|
|
22
22
|
|
|
23
23
|
`mike` manages versioned documentation aliases such as `latest`.
|
|
24
24
|
|
|
25
|
-
## Writing rules
|
|
25
|
+
## Writing rules
|
|
26
26
|
|
|
27
27
|
- keep the docs aligned with the actual `v0` runtime surface
|
|
28
28
|
- prefer clear boundaries over aspirational claims
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# Licensing
|
|
2
|
+
|
|
3
|
+
## HumemDB license
|
|
4
|
+
|
|
5
|
+
HumemDB's own source code is licensed under MIT.
|
|
6
|
+
|
|
7
|
+
- Repository license file:
|
|
8
|
+
[LICENSE]({{ config.repo_url }}/blob/{{ config.extra.version_tag }}/LICENSE)
|
|
9
|
+
- Package metadata:
|
|
10
|
+
[pyproject.toml]({{ config.repo_url }}/blob/{{ config.extra.version_tag }}/pyproject.toml)
|
|
11
|
+
|
|
12
|
+
That MIT grant applies to HumemDB's code and documentation in this repository. It does
|
|
13
|
+
not automatically relicense third-party dependencies.
|
|
14
|
+
|
|
15
|
+
## Runtime libraries HumemDB relies on
|
|
16
|
+
|
|
17
|
+
The current runtime depends on a small set of explicit Python libraries and embedded
|
|
18
|
+
engines:
|
|
19
|
+
|
|
20
|
+
- `sqlite3` from the Python standard library for the canonical local write path
|
|
21
|
+
- `duckdb` for analytical reads
|
|
22
|
+
- `numpy` for the exact in-memory vector search baseline
|
|
23
|
+
- `sqlglot[c]` for the SQL translation layer
|
|
24
|
+
- `lancedb` for benchmark work and future indexed ANN paths
|
|
25
|
+
- `threadpoolctl` for thread-pool coordination
|
|
26
|
+
|
|
27
|
+
HumemDB intentionally presents those libraries as part of the implementation story
|
|
28
|
+
instead of pretending everything comes from one hidden backend.
|
|
29
|
+
|
|
30
|
+
## Third-party licenses
|
|
31
|
+
|
|
32
|
+
Third-party dependencies keep their own licenses and distribution terms.
|
|
33
|
+
|
|
34
|
+
- Installing HumemDB may download third-party wheels or source distributions.
|
|
35
|
+
- Some of those dependencies may include native code or platform-specific wheels.
|
|
36
|
+
- Those components remain under their upstream licenses.
|
|
37
|
+
|
|
38
|
+
For the concrete dependency set used by this project, see:
|
|
39
|
+
|
|
40
|
+
- [pyproject.toml]({{ config.repo_url }}/blob/{{ config.extra.version_tag }}/pyproject.toml)
|
|
41
|
+
- [uv.lock]({{ config.repo_url }}/blob/{{ config.extra.version_tag }}/uv.lock)
|
|
42
|
+
|
|
43
|
+
If you need a formal license review for a deployment, review the resolved dependency
|
|
44
|
+
set from the lockfile rather than only the top-level MIT license.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
## Requirements
|
|
4
4
|
|
|
5
|
-
- Python 3.
|
|
5
|
+
- Python 3.10 or newer.
|
|
6
6
|
- A normal local Python environment managed with `uv`.
|
|
7
7
|
|
|
8
8
|
## Install from source
|
|
@@ -43,11 +43,19 @@ uv sync --group docs
|
|
|
43
43
|
|
|
44
44
|
## Installed runtime dependencies
|
|
45
45
|
|
|
46
|
-
- `
|
|
47
|
-
- `
|
|
48
|
-
- `numpy`
|
|
49
|
-
- `sqlglot[c]`
|
|
50
|
-
- `
|
|
46
|
+
- `sqlite3` from the Python standard library for the canonical local write path.
|
|
47
|
+
- `duckdb` for analytical reads.
|
|
48
|
+
- `numpy` for the exact vector search baseline.
|
|
49
|
+
- `sqlglot[c]` for PostgreSQL-like SQL translation.
|
|
50
|
+
- `lancedb` for benchmark work and future indexed ANN paths.
|
|
51
|
+
- `threadpoolctl` for thread-pool coordination.
|
|
51
52
|
|
|
52
53
|
LanceDB is present for benchmark and later accelerated vector work, but the shipped
|
|
53
|
-
default vector runtime today is still the exact SQLite plus NumPy path.
|
|
54
|
+
default vector runtime today is still the exact SQLite plus NumPy path.
|
|
55
|
+
|
|
56
|
+
## Licensing note
|
|
57
|
+
|
|
58
|
+
HumemDB's own code is MIT-licensed, but installed dependencies keep their own licenses.
|
|
59
|
+
See the project [LICENSE]({{ config.repo_url }}/blob/{{ config.extra.version_tag
|
|
60
|
+
}}/LICENSE) for HumemDB itself and the lockfile plus package metadata for the concrete
|
|
61
|
+
third-party dependency set.
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|