Change8

python-v0.26.0

Breaking Changes
📦 lancedbView on GitHub →
2 breaking17 features🐛 4 fixes🔧 2 symbols

Summary

This release introduces significant new features, including async namespace support, stable row IDs, and IVF SQ index support, while deprecating macOS x86 support and refactoring namespace handling.

⚠️ Breaking Changes

  • Support for macOS x86 architecture has been deprecated.
  • Namespace operations now use namespace models directly, requiring updates to how namespaces are handled.

Migration Steps

  1. Review usage of namespace operations to align with the direct use of namespace models.
  2. If targeting macOS x86, plan migration to a supported architecture.

✨ New Features

  • Documentation has been pared down to only show API references.
  • Lance version bumped to 0.40-0-beta.2.
  • Lance now determines the default value for the num_partitions parameter.
  • Support added for namespace credentials vending.
  • Added num_attempts parameter to merge insert result.
  • Support for `to_pydantic` in async operations in Python.
  • Support for async namespace connection.
  • Implemented head() functionality for remote tables.
  • Updated the codex URL key.
  • Removed remote default features on lance-namespace-impls.
  • Support for stable row IDs via storage_options.
  • Support for namespace server-side query.
  • Added IVF SQ index support and HNSW aliases.
  • Used REST namespace for lancedb Java SDK.
  • Made the Java client builder generic.
  • Vector type is now inferred as float32 if input integers are outside the uint8 range.
  • Upgraded lance-namespace Python package to 0.3.2.

🐛 Bug Fixes

  • Fixed an issue where schema metadata was not being converted to strings for JsonArrowSchema.
  • Used None as the default value for namespace.
  • Fixed an issue where .phrase_query() was not working.
  • Resolved an error with table_names at the root namespace.

🔧 Affected Symbols

lance-namespace-impls.phrase_query()