diff options
author | Lars Wirzenius <liw@liw.fi> | 2013-05-11 15:19:43 +0100 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2013-05-11 15:19:43 +0100 |
commit | fcbc979be8f17fbfe785e4d61703a58a14a76724 (patch) | |
tree | 8e2c3cecc8efa87c4ec46915c09fbbc5f62b5cfb /license-summary | |
parent | 20214dbe9c3a75fa641a5003868c7ecb849349ac (diff) | |
download | license-summary-fcbc979be8f17fbfe785e4d61703a58a14a76724.tar.gz |
Add --common-exclude; implement exclusions
Diffstat (limited to 'license-summary')
-rwxr-xr-x | license-summary | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/license-summary b/license-summary index e0152ea..43dbded 100755 --- a/license-summary +++ b/license-summary @@ -33,6 +33,12 @@ class LicenseSummary(cliapp.Application): def add_settings(self): self.settings.string_list( + ['common-exclude'], + 'add REGEXP to patterns for files that are commonly excluded', + metavar='REGEXP', + default=['NEWS', 'COPYING', 'LICENSE', 'LICENCE']) + + self.settings.string_list( ['exclude', 'e'], 'exclude files matching REGEXP ' 'from report of files without a license summary', @@ -77,7 +83,17 @@ class LicenseSummary(cliapp.Application): self.output.write('\t%s\n' % filename) def filenames_without_summary(self): - return set(self.filenames).difference(self.filenames_with_summaries()) + with_summary = self.filenames_with_summaries() + without_summary = set(self.filenames).difference(with_summary) + result = set() + patterns = self.settings['common-exclude'] + self.settings['exclude'] + for filename in without_summary: + for pattern in patterns: + if re.search(pattern, filename): + break + else: + result.add(filename) + return result def filenames_with_summaries(self): result = set() |