Skip to content

v0.2.0: Full v0.5.0 Weaviate Client Support

Choose a tag to compare

@iampersistent iampersistent released this 07 Aug 01:20
· 18 commits to main since this release

πŸš€ EdgeBinder Weaviate Adapter v0.2.0

Major Release: Full v0.5.0 Weaviate Client Support with Complete Query Functionality

This release transforms the EdgeBinder Weaviate Adapter from a basic storage-only implementation to a fully functional relationship query system, enabling core EdgeBinder features that were previously blocked.

🎯 Critical Fixes

  • βœ… FIXED: EdgeBinder relationship queries now fully functional (was completely broken)
  • βœ… REMOVED: All "Phase 2 client enhancements" placeholder exceptions
  • βœ… ENABLED: "My Workspaces", organization membership, and access control queries

πŸ†• Major New Features

Complete Query Functionality

  • βœ… executeQuery() - Execute complex queries with v0.5.0 Filter API support
  • βœ… findByEntity() - Find all bindings involving a specific entity (source or target)
  • βœ… findBetweenEntities() - Find bindings between two specific entities with optional type filtering
  • βœ… count() - Count bindings matching query criteria
  • βœ… BasicWeaviateQueryBuilder::get() - Full query execution with callback mechanism

Advanced Query Features

  • βœ… Complex filtering with Filter::byProperty(), Filter::allOf(), Filter::anyOf()
  • βœ… Query conversion helpers for EdgeBinder to Weaviate format translation
  • βœ… Proper result handling with returnProperties() calls for complete data retrieval

⚠️ Breaking Changes

  • BREAKING: Requires zestic/weaviate-php-client >=0.5.0 <1.0 (was v0.4.0)
  • BREAKING: Requires edgebinder/edgebinder >=0.4.0 <1.0 for better version constraints

πŸ”§ Improvements

  • βœ… Enhanced test coverage - 128 tests with 446 assertions, all passing
  • βœ… Integration test for count() method functionality
  • βœ… Fixed PHPStan configuration - Removed deprecated options, clean analysis
  • βœ… Improved test isolation - Fixed WeaviateAdapterQueryTest property usage
  • βœ… Removed inappropriate tests - Registry behavior testing moved to core

πŸ“Š Business Impact

Before v0.2.0:

  • ❌ EdgeBinder relationship queries threw exceptions
  • ❌ "My Workspaces" functionality blocked
  • ❌ Organization membership queries impossible
  • ❌ Access control checks non-functional

After v0.2.0:

  • βœ… Full relationship querying functionality
  • βœ… "My Workspaces" feature enabled
  • βœ… Organization membership queries working
  • βœ… Access control checks functional
  • βœ… Complete EdgeBinder potential unlocked

πŸ§ͺ Quality Assurance

  • βœ… All Tests Passing: 128 tests, 446 assertions
  • βœ… PHPStan Clean: Level 8 static analysis with no errors
  • βœ… Integration Tested: Real Weaviate instance testing
  • βœ… Backward Compatible: Existing code continues to work

πŸ“š Documentation

  • βœ… Comprehensive changelog with detailed migration notes
  • βœ… Updated examples reflecting new capabilities
  • βœ… API documentation for all new methods

πŸ”„ Migration Guide

Dependency Updates

composer update edgebinder/weaviate-adapter

Code Changes

No code changes required! All existing EdgeBinder code will continue to work. The difference is that methods that previously threw exceptions now work correctly.

Before (v0.1.x):

// This would throw "Phase 2 client enhancements" exception
$results = $adapter->executeQuery($query);

After (v0.2.0):

// This now works and returns actual results!
$results = $adapter->executeQuery($query);

πŸŽ‰ What's Next

With v0.2.0, the EdgeBinder Weaviate Adapter is now production-ready for relationship management. Future releases will focus on:

  • Vector similarity search (Phase 2)
  • Semantic concept queries
  • Advanced GraphQL queries
  • AI/ML integration features

Full Changelog: https://github.com/EdgeBinder/weaviate-adapter/blob/v0.2.0/CHANGELOG.md