| | Additive | Subtractive |
|-------------------------|-------------|-------------|
| Default Feature Filter | `"exclude"` | `"include"` |
-| Default Resource Filter | `"-/"` | `"+/"` |
+| Default Resource Filter | `"-/"`, `"+/%%ALIAS"`, `"+/%%Parent"` | `"+/"` |
To enable additive mode, add the following setting to your filter file:
strategy: "additive"
+**Caution:** If using `"-/"` or similar top-level exclusion rules, be aware of
+the fields `"+/%%Parent"` and `"+/%%ALIAS"`, which are required in locale tree
+resource bundles. Excluding these paths may cause unexpected locale fallback
+behavior.
+
#### Filter Types
You may list *filters* for each category in the *featureFilters* section of
)
]
if self.strategy == "additive":
- self.rules_by_file = [["-/"] for _ in range(len(files))]
+ self.rules_by_file = [
+ [r"-/", r"+/%%ALIAS", r"+/%%Parent"]
+ for _ in range(len(files))
+ ]
else:
- self.rules_by_file = [["+/"] for _ in range(len(files))]
+ self.rules_by_file = [
+ [r"+/"]
+ for _ in range(len(files))
+ ]
def add_rules(self, file_filter, rules):
for file, rule_list in zip(self.input_files, self.rules_by_file):