Changelog
v0.4.3
Released on: 2024-05-07
Fix: get method is static method, so it is not compatible with model’s __routing__
v0.4.2
Released on: 2024-05-07
Fixed get method when id field is an integer.
Test for integer ids
Test for property ids
v0.4.1
Released on: 2024-05-07
Retry on conflict decorator to automatically retry conflicted operations
Simplified ESModelTimestamp save. The logic is simple now: created_at is filled only if it is a new model instance (created_at is None).
v0.4.0
Released on: 2024-05-07
Support for Optimistic Concurrency Check (OCC)
It uses _primary_term and _seq_no for save operations to ensure consistency
The ES private fields are accessible through the model (_version, _primary_term, _seq_no)
_id and private fields are stored after save
Bulk operations uses OCC too
Bulk operations raise BulkError, which stores all documents which had errors
New documents of ESModelTimestamp with bulk operations will have created_at filled automatically
Reload documents
Fixed routing for delete operation
Improved documentation
v0.3.2
Released on: 2024-05-03
Lazy properties are now work with ESBaseModel too
Lazy properties are now supports nested documents (truly recursive)
Python 3.8 support back
v0.3.1
Released on: 2024-04-29
The most important change is to introduce ESBaseModel.
Full Changelog: https://github.com/wallneradam/esorm/compare/v0.3.0…v0.3.1
v0.3.0
Released on: 2024-01-25
Replaced deprecated datetime.utcnow
.all() method for getting all documents in an index
Reworked lazy properties, which has recursion protection
Improved documentation: - pagination and sorting - added advanced.md, which contains advanced features documentation - Fixed dark mode colors of reference
Improved unit tests
v0.2.1
Released on: 2024-01-22
Aggregation TypeDicts are refactored.
v0.2.0
Released on: 2024-01-18
Aggregation support
Improved documentation
v0.1.2
Released on: 2024-01-17
Some minor fixes
v0.1.1
Released on: 2023-11-01
1st release