Releases: ZeusDB/zeusdb
Version 0.0.8
Changed
- Updated dependency:
zeusdb-vector-databasefrom0.4.0to0.4.1to ensure critical overwrite and memory leak fixes are applied.
Fixed
- Critical: Fixed duplicate document bug where
overwrite=Truecreated multiple entries instead of replacing existing ones - Fixed memory leak from accumulated duplicate vectors in HNSW graph during overwrites
- Fixed Product Quantization codes and training state not properly cleaned up during document removal
- Fixed vector count inconsistencies when removing documents during overwrite operations
Removed
- Legacy overwrite behavior that created duplicates instead of proper replacements
Version 0.0.7
Added
- New logging guide added to documentation
Changed
- Updated minimum required version of
zeusdb-vector-databaseto v0.4.0
Version 0.0.6
Added
-
Comprehensive API documentation with detailed examples and parameter references
-
Read the Docs integration with custom domain (docs.zeusdb.com)
-
Documentation pages for Create, Add Data, Search, and Persistence operations
-
Product Quantization configuration guide with usage examples
-
Sphinx-based documentation system with MyST parser and pydata theme
-
Interactive code examples with expected outputs for all core operations
-
Documentation badge in README linking to hosted docs
Version 0.0.5
Changed
- Updated the
README.mdto include a revised Quick Start example that better reflects the current ZeusDB Vector Database API - Updated dependency to require
zeusdb-vector-database>=0.3.0inpyproject.toml
Version 0.0.4
Added
- Introduced a plugin architecture in
__init__.pyusing_PACKAGE_MAPfor dynamic class resolution. - Implemented lazy loading via
__getattr__()to import database modules only when accessed. - Automatically synced
__all__with available plugin names for static analyzers and IDE tab-completion. - Enhanced
ImportErrormessages with actionable install instructions (uvandpip). - Added
__dir__()override to improve developer experience when exploring the package interactively.
Changed
__init__.pyis now fully self-contained and no longer relies on_utils.py.- Removed runtime version checking in favor of relying on proper dependency management through
pyproject.toml.
Fixed
- Future plugins can be added to
_PACKAGE_MAPwithout changing the core logic - The package now avoids all network operations during import
Removed
- Removed
_utils.pyand all related logic:- Version checking logic against PyPI (
get_latest_pypi_version,check_package_version) - Environment variable support for disabling version checks (
ZEUSDB_SKIP_VERSION_CHECK,CI, etc.) - PyPI network dependency on import
- Version checking logic against PyPI (
Version 0.0.3
Added
-
Introduced modular
__init__.pyusing__getattr__()for PEP 562-style lazy loading of database backends likeVectorDatabase. This change improves robustness for partial installations and prepares the master package for a plugin-based or modular architecture. -
Added version constant
__version__ = "0.0.3". -
Implemented module-level
__getattr__to support lazy loading of database backends (PEP 562). -
Added
__dir__()for better introspection and tab-completion in REPLs and IDEs. -
Included clear and actionable error messages when optional submodules are accessed but not installed.
-
Added helpful runtime warnings when installed packages are outdated compared to PyPI.
-
Added
import_database_class()to dynamically import database classes based on configuration. -
Added
_utils.pycontaining:get_latest_pypi_version()for cached PyPI version retrieval.check_package_version()for installed package validation and warning if outdated.should_check_versions()to suppress version checks in CI, offline, or env-flagged contexts.ZEUSDB_PACKAGESregistry to manage and extend backend database support.
-
Added
test_missing_modules.pywith tests covering:- AttributeError messaging for undefined database types.
- Case sensitivity of attribute access.
- Expected attributes in
__all__and__dir__.
Changed
-
Replaced eager
try/except ImportErrorblock-based loading with centralized, dynamic imports usingimport_database_class()from_utils.py. -
Reorganized
__all__to be static and Pylance-compatible, with type hints provided separately for static analysis. -
Suppressed Pyright warnings using
# pyright: reportUnsupportedDunderAll=falseto support dynamic symbol declarations. -
VectorDatabaseremains the only active backend; additional backends (RelationalDatabase,GraphDatabase,DocumentDatabase) are included as placeholders in configuration and docstrings for future expansion.
Fixed
Removed
- Removed outdated eager import logic from
__init__.py, reducing import-time overhead and making the package plugin-friendly.
Version 0.0.2
Added
- Declared zeusdb-vector-database>=0.0.1 as a required dependency in pyproject.toml to ensure correct module availability during import.
Fixed
- Fixed and clarified the code example in the README.
Version 0.0.1
Added
- Initial project structure and configuration.
pyproject.tomlwith Hatchling build backend and project metadata..gitignorefor Python, build, and editor artifacts.- GitHub Actions workflows:
publish-pypi.ymlfor trusted publishing to PyPI.publish-check.ymlfor build verification without publishing.
CHANGELOG.mdfollowing Keep a Changelog format.