@@ -16,16 +16,47 @@ filter. It is fast when scanning the folders (layouts must be enabled), but
1616slower when scanning the files is necessary (a ``PerformanceWarning `` is issued
1717in that case).
1818
19+ .. code :: python
20+
21+ >> from fcollections.implementations import NetcdfFilesDatabaseGriddedSLA
22+ >> fc = NetcdfFilesDatabaseGriddedSLA(... )
23+ >> fc.filter_values(' version' )
24+ {' 0_3' , ' 1_0' , ' 2_0_1' , ' 3_0' }
25+
1926 The following dependencies have new constraints:
2027 - Pandas: ``>=3 ``
2128 - Pyinterp: ``>=2026.4.0 ``
2229
30+ Folder-specific filters can now be given to filter a query. This new behavior
31+ breaks the assumption that all layouts share the same filters, which has the
32+ following consequences:
33+
34+ - Setting a folder-specific filter that is present in one layout, with an
35+ underconstrained query will raise a ``LayoutMismatchError ``. Adding more
36+ filters to constrain the scan to the part of the file system matching the
37+ layout will fix the query.
38+
39+ .. code :: python
40+
41+ from fcollections.implementations import NetcdfFilesDatabaseSwotLRL3
42+ fc = NetcdfFilesDatabaseSwotLRL3(... )
43+
44+ # Will raise an error, the scan will explore v1 and v2 which have no concept
45+ # of 'temporality'
46+ fc.query(temporality = ' REPROC' )
47+
48+ # Add constraint to fix the query
49+ fc.query(temporality = ' REPROC' , version = ' 3.0' )
50+
51+ - Folder-specific filters with the layouts disabled will be ignored, and a
52+ ``UserWarning `` will be emitted
53+
2354Breaking Changes
2455................
2556
2657The ``IPredicate `` interface has been refactored into the more explicit
2758``IFilterBuilder `` interface. This interface handles both complex predicates and
28- filters' converter through the ``build_filter `` and ``build_predicate `` methods.
59+ filters' converter through the ``build_predicate `` and ``build_filter `` methods.
2960
3061Previously, if a file did not match the file name convention, it was ignored. It
3162now raises a ``LayoutMismatchError ``.
@@ -37,6 +68,7 @@ homogeneous dataset, an error will be raised.
3768Details
3869.......
3970
71+ - feat: allow folder-specific filters `PR#9 <https://github.com/CNES/fcollections/pull/9 >`_
4072- chore: migration to pyinterp 2026.4.0 `PR#8 <https://github.com/CNES/fcollections/pull/8 >`_
4173- Half orbit mixin `PR#7 <https://github.com/CNES/fcollections/pull/7 >`_
4274- perf: subset unmixing prior to listing `PR#6 <https://github.com/CNES/fcollections/pull/6 >`_
0 commit comments