gitlint: tolerate long lines with URLs
When including referecnes to external resources using a URL, keep the
line with URL in one line to not break the link and allow this to pass
the gitlint test.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
diff --git a/scripts/gitlint/zephyr_commit_rules.py b/scripts/gitlint/zephyr_commit_rules.py
index c5536c8..e4664a8 100644
--- a/scripts/gitlint/zephyr_commit_rules.py
+++ b/scripts/gitlint/zephyr_commit_rules.py
@@ -78,5 +78,12 @@
def validate(self, line, _commit):
max_length = self.options['line-length'].value
- if len(line) > max_length and not line.startswith('Signed-off-by'):
+ urls = re.findall('http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\(\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+', line)
+ if line.startswith('Signed-off-by'):
+ return
+
+ if len(urls) > 0:
+ return
+
+ if len(line) > max_length:
return [RuleViolation(self.id, self.violation_message.format(len(line), max_length), line)]