d3vyce
9268b576b4
feat: add M2M helpers ( #247 )
2026-04-12 18:46:57 +02:00
d3vyce
74d15e13bc
feat: support relation tuples in order_fields for cross-table sorting ( #227 )
...
* feat: support relation tuples in order_fields for cross-table sorting
* docs: update crud module
2026-04-04 17:00:14 +02:00
d3vyce
bbe63edc46
Version 3.0.0 ( #201 )
...
* chore: remove deprecated code
* docs: update v3 migration guide
* fix: pytest warnings
* Version 3.0.0
* fix: docs workflows
2026-04-02 11:21:31 +02:00
d3vyce
32059dcb02
feat: consolidate *_params dependencies into per-paginate-style methods with feature toggles ( #209 )
2026-04-01 20:53:14 +02:00
d3vyce
9ca2da4213
docs: add documentation versioning ( #125 )
...
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-03-30 18:55:38 +02:00
d3vyce
1890d696bf
feat: rework async event system ( #196 )
...
* feat: rework async event system
* docs: add v3 migration guide
* feat: add cache
* enhancements
2026-03-30 18:24:36 +02:00
d3vyce
104285c6e5
Create CNAME
2026-03-29 13:57:15 +02:00
d3vyce
5215b921ae
fix: facet keys always use full relation chain ( #190 )
2026-03-27 18:56:58 +01:00
d3vyce
04afef7e33
feat(fixtures): fixtures multi-variant contexts, custom Enum support, and context-filtered loading ( #187 )
2026-03-26 20:19:41 +01:00
d3vyce
b4eb4c1ca9
fix: force auto-begin in create_db_dependency so lock_tables always uses savepoints ( #176 )
2026-03-25 19:26:28 +01:00
d3vyce
6981c33dc8
fix: inherit @watch field filter from parent classes via MRO traversal ( #170 )
2026-03-23 19:08:17 +01:00
d3vyce
db6c7a565f
feat: add offset_params, cursor_params and paginate_params FastAPI dependency factories ( #162 )
2026-03-21 16:44:11 +01:00
d3vyce
768e405554
fix: use URL-safe base64 encoding for cursor tokens ( #160 )
2026-03-21 15:33:17 +01:00
d3vyce
f0223ebde4
feat: add pages computed field to OffsetPagination schema ( #159 )
2026-03-21 15:24:11 +01:00
d3vyce
f8c9bf69fe
feat: add include_total flag to offset pagination to skip COUNT query ( #158 )
2026-03-21 15:16:22 +01:00
d3vyce
f82225f995
feat: add WatchedFieldsMixin ( #148 )
...
* feat/add WatchedFieldsMixin and watch_fields decorator for field-change monitoring
* docs: add WatchedFieldsMixin
* feat: add on_event, on_create and on_delete
* docs: update README
2026-03-19 19:19:33 +01:00
d3vyce
2e9c6c0c90
feat: support Annotated[AsyncSession, Depends(...)] in PathDependency and BodyDependency ( #146 )
2026-03-18 20:10:58 +01:00
2c494fcd17
Version 2.3.0
2026-03-15 12:52:44 -04:00
d3vyce
c863744012
feat: PaginatedResponse[T] as discriminated union annotation ( #142 )
2026-03-15 17:41:33 +01:00
d3vyce
aedcbf4e04
feat: add UUIDv7Mixin ( #140 )
2026-03-14 20:41:46 +01:00
d3vyce
19c013bdec
feat: unified paginate() endpoint with typed pagination responses ( #134 )
...
* feat: unified paginate() endpoint with typed pagination responses
* docs: unified paginate() endpoint
* fix: add tests
2026-03-14 20:23:20 +01:00
d3vyce
81407c3038
fix: use clock_timestamp() instead of now() for Mixin to ensure unique values ( #138 )
2026-03-14 17:30:11 +01:00
d3vyce
19232d3436
feat: add AsyncCrud subclass style and base_class param to CrudFactory ( #132 )
2026-03-12 22:46:51 +01:00
d3vyce
26d649791f
feat: auto-include primary key in CrudFactory searchable_fields ( #130 )
2026-03-12 20:21:32 +01:00
dde5183e68
Version 2.2.0
2026-03-10 14:53:55 -04:00
d3vyce
e4250a9910
feat: bring first() to parity with get()/get_or_none() — add with_for_update and schema support ( #123 )
2026-03-10 19:34:18 +01:00
0cc21d2012
Version 2.1.0
2026-03-09 12:45:52 -04:00
d3vyce
a3245d50f0
docs: clarify metrics module usage ( #117 )
2026-03-09 17:17:11 +01:00
d3vyce
baebf022f6
feat: move db related function from pytest to db module ( #119 )
2026-03-09 17:15:50 +01:00
d3vyce
432e0722e0
refactor: remove deprecated parameter and function/cleanup code ( #101 )
...
* refactor: remove deprecated parameter and function
* refactor: centralize type aliases in types.py and simplify crud layer
* test: add missing tests for fixtures/utils.py
* refactor: simplify and deduplicate across crud, metrics, cli, and
exceptions
* docs: fix old Paginate references
* docs: add migration + fix icon
* docs: update README/migration to v2
2026-03-04 17:19:38 +01:00
d3vyce
e732e54518
feat: add models module ( #109 )
...
* feat: add models module
* docs: add models module
2026-03-04 15:14:55 +01:00
d3vyce
05b5a2c876
feat: rework Exception/ApiError ( #107 )
...
* feat: rework Exception/ApiError
* docs: update exceptions module
* fix: docstring
2026-03-02 16:34:29 +01:00
d3vyce
a257d85d45
Add sort_params helper in CrudFactory ( #103 )
...
* feat: add sort_params helper in CrudFactory
* docs: add sorting
* fix: change sort_by to order_by
2026-03-01 11:20:43 +01:00
d3vyce
d7ad7308c5
Add examples in documentations ( #99 )
...
* docs: fix crud
* docs: update README features
* docs: add pagination/search example
* docs: update zensical.toml
* docs: cleanup
* docs: update status to Stable + update description
* docs: add example run commands
2026-02-27 19:56:09 +01:00
d3vyce
5a08ec2f57
feat: add faceted search in CrudFactory ( #97 )
...
* feat: add faceted search in CrudFactory
* feat: add filter_params_schema in CrudFactory
* fix: add missing Raises in build_search_filters docstring
* fix: faceted search
* fix: cov
* fix: documentation/filter_params
2026-02-26 15:23:07 +01:00
d3vyce
7da34f33a2
fix: handle Date, Float, Numeric cursor column types in cursor_paginate ( #90 )
2026-02-23 20:58:43 +01:00
d3vyce
6cf7df55ef
feat: add cursor based pagination in CrudFactory ( #86 )
2026-02-23 13:51:34 +01:00
d3vyce
7482bc5dad
feat: add schema parameter to CRUD methods for typed response serialization ( #84 )
2026-02-23 10:02:52 +01:00
d3vyce
9d07dfea85
feat: add opt-in default_load_options parameter in CrudFactory ( #82 )
...
* feat: add opt-in default_load_options parameter in CrudFactory
* docs: add Relationship loading in CRUD
2026-02-21 12:35:15 +01:00
d3vyce
31678935aa
Version 1.0.0 ( #80 )
...
* docs: fix typos
* chore: build docs only when release
* Version 1.0.0
2026-02-20 14:09:01 +01:00
d3vyce
823a0b3e36
docs: add analytics ( #78 )
2026-02-19 18:05:30 +01:00
d3vyce
6714ceeb92
chore: documentation ( #76 )
...
* chore: update docstring example to use python code block
* docs: add documentation
* feat: add docs build + fix other workdlows
* fix: add missing return type
2026-02-19 16:43:38 +01:00