From 61c827dff19d746c90dc5b1df751f0a57f1d3534 Mon Sep 17 00:00:00 2001 From: Gregory Szorc Date: Sun, 31 May 2015 17:41:35 -0700 Subject: [PATCH] check-commit: make foo_bar naming regexp less greedy \s is equivalent to the character class [ \t\n\r\f\v]. Using \s+ in a regular expression against input with multiple lines may match across multiple lines. For the regexp in question, "\+\s+" would match "+\n " and similar sequences, leading to false positives for functions that were included in diff context, after a modified hunk. --- contrib/check-commit | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/check-commit b/contrib/check-commit index 6d47642588..fd7e524cd3 100755 --- a/contrib/check-commit +++ b/contrib/check-commit @@ -29,7 +29,7 @@ errors = [ (r"^# .*\n.*\.\s+$", "don't add trailing period on summary line"), (r"^# .*\n.{78,}", "summary line too long (limit is 78)"), (r"^\+\n \n", "adds double empty line"), - (r"\+\s+def [a-z]+_[a-z]", "adds a function with foo_bar naming"), + (r"^\+[ \t]+def [a-z]+_[a-z]", "adds a function with foo_bar naming"), ] node = os.environ.get("HG_NODE")