aboutsummaryrefslogtreecommitdiffstats
path: root/pkg/subsystem/linux/maintainers.go
diff options
context:
space:
mode:
authorAleksandr Nogikh <nogikh@google.com>2023-01-31 16:22:37 +0100
committerAleksandr Nogikh <wp32pw@gmail.com>2023-02-10 14:34:44 +0100
commitb39df73c1629cb4b2846cbb14a6a37e33d0060a1 (patch)
tree32f65a76e6ebc892b3d61f9833dc2a08f2aa4b05 /pkg/subsystem/linux/maintainers.go
parentad871703d4fcd9ed84544dd6f5c4221aa5df5feb (diff)
pkg/subsystem: remove unneeded paths from matching rules
We don't really care about Documentation/ and similar folders. Exclude such path matching rules after parsing MAINTAINERS.
Diffstat (limited to 'pkg/subsystem/linux/maintainers.go')
-rw-r--r--pkg/subsystem/linux/maintainers.go16
1 files changed, 16 insertions, 0 deletions
diff --git a/pkg/subsystem/linux/maintainers.go b/pkg/subsystem/linux/maintainers.go
index 6a188b261..7c60a840a 100644
--- a/pkg/subsystem/linux/maintainers.go
+++ b/pkg/subsystem/linux/maintainers.go
@@ -173,6 +173,22 @@ func (r maintainersRecord) ToPathRule() entity.PathRule {
}
}
+func removeMatchingPatterns(records []*maintainersRecord, rule *regexp.Regexp) {
+ filter := func(list []string) []string {
+ ret := []string{}
+ for _, item := range list {
+ if !rule.MatchString(item) {
+ ret = append(ret, item)
+ }
+ }
+ return ret
+ }
+ for _, record := range records {
+ record.includePatterns = filter(record.includePatterns)
+ record.excludePatterns = filter(record.excludePatterns)
+ }
+}
+
var (
escapedSeparator = regexp.QuoteMeta(fmt.Sprintf("%c", filepath.Separator))
wildcardReplace = map[byte]string{