Changelog¶
0.2.3 - 2025-05-29¶
Added¶
- Field Families and Common Patterns Library (Issue #114): Introduced a comprehensive field system with:
FieldTemplate
: Reusable field definitions with flexible namingFieldFamilies
: Core database pattern collections (ENTITY, SOFT_DELETE, AUDIT)DomainModelBuilder
: Fluent API for building models with method chainingProtocolFieldFamilies
: Field sets that ensure protocol complianceValidationPatterns
: Common regex patterns and constraint builderscreate_protocol_model()
: Function to create protocol-compliant models (structure only)- Protocol Enhancements:
- Added protocol constants (
IDENTIFIABLE
,TEMPORAL
, etc.) for type-safe protocol selection - Added
create_protocol_model_class()
: Factory function that creates models with both structural fields AND behavioral methods in one step - Added
combine_with_mixins()
: Helper to easily add protocol behaviors to existing models
Changed¶
- BREAKING: Removed "event" from the protocol system in
ProtocolFieldFamilies
. TheEvent
class remains available but is no longer part of the protocol selection system since it's a concrete class, not a protocol interface.
Fixed¶
- Fixed import organization issues (E402 errors)
- Updated tests to reflect simplified field families
- Fixed email validation test expectations
- Updated documentation to align with new architecture
- Fixed SQLAlchemy primary key mapping issue in test_model_adapter_enhancements.py
0.2.0 - 2025-05-24¶
Highlights¶
This release introduces two major foundational modules: Fields and
Protocols. These modules provide a robust and extensible framework for
defining data structures and behaviors within pydapter
.
- Fields Module (
pydapter.fields
): A powerful system for defining typed, validated, and serializable fields. It includes pre-defined field types for common use cases like IDs, datetimes, embeddings, and execution tracking, along with a flexibleField
class for custom definitions and acreate_model
utility for dynamic Pydantic model creation. - Protocols Module (
pydapter.protocols
): A set of composable interfaces (e.g.,Identifiable
,Temporal
,Embeddable
,Invokable
,Cryptographical
) that define standard behaviors for Pydantic models. TheEvent
protocol combines these to offer comprehensive event tracking capabilities, enhanced by the@as_event
decorator for easily instrumenting functions.
These additions significantly enhance pydapter
's ability to model complex data
interactions and workflows in a standardized and maintainable way.
Added¶
- New
pydapter.fields
module: Introduced a robust system for defining typed, validated, and serializable fields (e.g., IDs, datetimes, embeddings, execution tracking) and acreate_model
utility for dynamic Pydantic model creation. (Related to Issue #100, PR #99) - New
pydapter.protocols
module: Added composable protocol interfaces (Identifiable
,Temporal
,Embeddable
,Invokable
,Cryptographical
) and anEvent
protocol with an@as_event
decorator for comprehensive event modeling and function instrumentation. (Related to Issue #100, PR #99) - Hybrid Documentation System: Implemented a new documentation system combining auto-generated API skeletons with rich manual content and automated validation (markdown linting, link checking). (Issue #103, PR #104)
- Updated CI to install documentation validation tools. (Issue #105)
Fixed¶
- Resolved Python 3.10 compatibility issues related to
datetime.timezone.utc
. (Part of PR #99 fixes) - Addressed various
mkdocs
build warnings and broken links in the documentation. (Part of PR #104 fixes)
0.1.5 - 2025-05-14¶
Added¶
- New adapter implementations:
AsyncNeo4jAdapter
- Asynchronous adapter for Neo4j graph database with comprehensive error handlingWeaviateAdapter
- Synchronous adapter for Weaviate vector database with vector search capabilitiesAsyncWeaviateAdapter
- Asynchronous adapter for Weaviate vector database using aiohttp for REST API calls
0.1.1 - 2025-05-04¶
Added¶
- Integration tests for database adapters using TestContainers
- PostgreSQL integration tests
- MongoDB integration tests
- Neo4j integration tests
- Qdrant vector database integration tests
Fixed¶
- Neo4j adapter now supports authentication
- Qdrant adapter improved connection error handling
- SQL adapter enhanced error handling for connection issues
- Improved error handling in core adapter classes
0.1.0 - 2025-05-03¶
- Initial public release.
core.Adapter
,AdapterRegistry
,Adaptable
- Built-in JSON adapter