-
-
Notifications
You must be signed in to change notification settings - Fork 714
Description
In relation to #426 "high level file classification", #377 "Scan deduction and summarization" and #772 "Post-scan plugin for license summarization" we need to express in a configurable way what kind of of summarization or classification processing should be done. This should be configurable and calls for some rules engine of sorts. Yet there are few rules engines libraries in Python. Why? I think that Python ends up being a pretty decent language for writing clear logic for such rules.
So the idea there would be to avoid building a complex rules system or using yet another language to express these rules. Instead we would use Python scripts (possibly as simple plugins) that would express the possibly complex required logic and expose this with a name/id. Then allow to compose these rules to apply using CLI args and a/the configuration file referencing these names.
A very simple way for rules is the "--ignore" system, but that very quickly shows some limitations. Using programmatic rules written in Python instead would be much more flexible.
This approach would offer IMHO the best combo of flexibility and simpler implementation.