Repository navigation
Restore LanceDB backend wiring and packaging metadata - #37
Open
Nitjsefnie wants to merge 2 commits into
Open
Nitjsefnie wants to merge 2 commits into
Nitjsefnie wants to merge 2 commits into
Conversation
The LanceDB backend module (src/mnema/backends/lancedb.py) still ships, but the wiring around it was lost when the pgvector cherry-pick (af4bc31) rewrote pyproject.toml, config.py, and the backend factory. Restore, using the last good upstream revision (1f5d8f4) as the source of truth: - the `lancedb` optional-dependency group (lancedb>=0.10) and its inclusion in the `all` extra - the `lancedb` project keyword, mypy override module entry, and pytest marker - `lancedb` in the BackendName literal - the `lancedb` factory branch in make_backend Add regression tests covering both packaging metadata and runtime wiring (offline fake for the lancedb module; no network/credentials). Co-Authored-By: Kimi K3 <noreply@kimi.com>
The new regression test module imported stdlib tomllib, which exists only on Python 3.11+, so the test file could not even be collected on the supported 3.10 CI leg. Gate the import on sys.version_info and declare the tomli backport in the dev extra for Python < 3.11. Co-Authored-By: Kimi K3 <noreply@kimi.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Restore the LanceDB backend wiring and package metadata that were lost during an earlier cherry-pick, including Python 3.10-compatible regression coverage.
Related issue
Closes #34
Changes
lancedboptional dependency,allmembership, package keyword, mypy override, and pytest markerlancedbas a valid configured backend and route it through the lazy backend factorytomlionly on Python 3.10 so the regression tests collect across the supported Python matrixChecklist
ruff check .is cleanpytestpasses (with the relevant[extra]installed if you touched a backend)README.md,SKILL.md,docs/) if user-facing behavior changed__init__.py::make_*), added an[extra]inpyproject.toml, and added a test classNotes for reviewer
Fork CI ran the full Python 3.10–3.13 matrix at
d88b15f1d7185fbe51a6af4d6e29707c902f021a: all four jobs passed with 158 tests passing and 16 pre-existing skips per interpreter. The tests keep LanceDB I/O hermetic while still installing the reallancedbextra in CI.Generated by Kimi K3 (implementation, verification), GPT-5.6 Sol (brief, review)