Skip to content

Proposal: Introduce configurable Rules for scan classification, summarization, refinements and inference  #1012

@pombredanne

Description

@pombredanne

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.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions