Prepare NumPy Vector Store 0.7.0 for release - #30
Merged
Conversation
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.
Overview
This PR prepares NumPy Vector Store 0.7.0 for release after the three planned contract-closure PRs were reviewed and squash merged. It sets the package version, records the complete user-visible release story, updates current-version references, and marks the 0.7 roadmap milestone complete.
Version 0.7 is the adoption release for the API and compatibility policy intended to become stable in 1.0. It hardens existing behavior rather than expanding the library into a larger vector-database abstraction.
What changes
numpy_vector_store.__version__to0.7.0, which also supplies the version embedded by Hatchling in the wheel and source distribution.Why this release is ready
The 0.7 roadmap work is complete: mixed Boolean row selectors and complex numeric inputs can no longer be accepted through lossy NumPy coercion, a relative archive binding cannot be redirected by a later working-directory change, and the intended 1.x public API and compatibility policy are now both documented and enforced by repository checks.
The release does not introduce a new public feature family, remove documented API, alter ranking behavior, add a runtime dependency, or change format-version-1 archives. Shipping these decisions as 0.7 gives users a normal release cycle to exercise the proposed stable contract before 1.0.
User impact and upgrade guidance
Most applications can upgrade from 0.6 without code changes or archive migration. Python 3.11 through 3.14 and NumPy 1.23.2 or newer remain supported, and valid format-version-1 archives remain readable and writable.
Applications should review code that deliberately used Boolean values inside
within_rows, supplied complex vectors or queries, comparedfile_pathwith a relative path, or relied on changing the process working directory to redirect a later pathlesssave()orreload(). The changelog explains the direct replacements and resulting standard exceptions.Verification
uv lock --checkuv run --locked ruff check .uv run --locked ruff format --check .uv run --locked mypy src/ benchmarks/ tools/v0.7.0and passedtwine check.py.typed, distribution metadata, and the MIT license; the source distribution includes the release documentation and maintenance tools while excluding private.codexstate.Release process
Merging this PR does not publish anything by itself. After the maintainer squash merges it, the exact resulting
maincommit can be taggedv0.7.0and used to publish the GitHub release. Publishing that release triggers the validated trusted-publishing workflow, which rebuilds the artifacts, checks source/tag/wheel/sdist version agreement, runs Twine validation, and then uploads to PyPI with OIDC.