5.6 KiB
5.6 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project does adhere to Semantic Versioning.
Unreleased
Added
vgroupsfilter now supportsunique=Falseto return a list of all entries including duplicates (default:True)
Fixed
- Preserves original sort order in
vgroupsfilter ifunique=True - Remove duplicates from
GroupBySourcechildren
Changed
vgroupsfilter usesrecursive=Trueby default
0.9.9 – 2022-12-21
Fixed
- Keep original sorting order in
vgroupsfilter if noorder_byis set
0.9.8 – 2022-12-20
Added
- Support for Alternatives
- Support for Pagination
- Support for additional yield types (str, int, float, bool)
- Support for sorting
GroupBySourcechildren - Support for sorting
vgroupsfilter - Config option
.replace_none_keyto replaceNonewith another value - Config option
.key_obj_fn(function) can be used to map complex objects to simple values (e.g., list of strings -> count as int). In your jinja template you may useX(the object) andARGS(theGroupByCallbackArgs). - New property
supports_pagination(bool) forGroupBySource - Partial building. Only process
Watcherwhich are used during template rendering. - Rebuild
GroupBySourceonly once after aRecordupdate
Changed
- Use
Queryfor children instead ofRecordlist - Rename
GroupBySource.grouptoGroupBySource.key_obj - Yield return
GroupBySourceduringwatcher.grouping()instead of slugified key - Postpone
Recordprocessing untilmake_once() - Allow preprocessing with
pre_build=Trueas optional parameter forgroupby.add_watcher()(useful for modifying source before build) - Evaluate
fieldsattributes upon access, not initialization (this comes with a more fine-grained dependency tracking) - Resolver groups virtual pages per groupby config key (before it was just a list of all groupby sources mixed together)
- Refactor pruning by adding a
VirtualPrunervobj - Pruning is performed directly on the database
GroupBySource.pathmay include a page number suffix/2GroupBySource.url_pathmay include a page number and customurl_suffix
Removed
GroupingCallbackmay no longer yield an extra object. The usage was cumbersome and can be replaced with the.fieldsconfig option.
Fixed
GroupBySourcenot updated on template editmost_used_keywith empty list- Don't throw exception if
GroupBySourceis printed before finalize - Hotfix for Lektor issue #1085 by avoiding
TypeError - Add missing dependencies during
vgroupsfilter - Include model-fields with null value on yield
0.9.7 – 2022-04-22
Changed
- Refactor
GroupBySourceinit method - Decouple
fieldsexpression processing from init
Fixed
- Keep order of groups intact
0.9.6 – 2022-04-13
Added
- Set extra-info default to the model-key that generated the group.
- Reuse previously declared
fieldsattributes in laterfields.
Changed
- Thread-safe building. Each groupby is performed on the builder which initiated the build.
- Deferred building. The groupby callback is only called when it is accessed for the first time.
- Build-on-access. If there are no changes, no groupby build is performed.
Fixed
- Inconsistent behavior due to concurrent building (see above)
- Case insensitive default group sort
- Using the split config-option now trims whitespace
most_used_keyworking properly
0.9.5 – 2022-04-07
Fixed
- Allow model instances without flow-blocks
0.9.4 – 2022-04-06
Fixed
- Error handling for GroupBySource
__getitem__by raising__missing__ - Reuse GroupBySource if two group names result in the same slug
0.9.3 – 2022-04-06
Added
- Config option
.fieldscan add arbitrary attributes to the groupby - Config option
.key_mapallows to replace keys with other values (e.g., "C#" -> "C-Sharp") - Set
slug = Noneto prevent rendering of groupby pages - Query groupby of children
Changed
- Another full refactoring, constantly changing, everything is different ... again
0.9.2 – 2022-04-01
Fixed
- Prevent duplicate processing of records
0.9.1 – 2022-03-31
Added
- Example project
- Before- and after-init hooks
- More type hints (incl. bugfixes)
Changed
- Encapsulate logic into separate classes
Fixed
- Concurrency issues by complete refactoring
- Virtual path and remove virtual path resolver
0.9 – 2022-03-27
Fixed
- Groupby is now generated before main page
- PyPi readme
0.8 – 2022-03-25
Initial release