summary refs log tree commit diff
diff options
context:
space:
mode:
authorXinglu Chen <public@yoctocell.xyz>2021-05-30 22:30:31 +0200
committerLudovic Courtès <ludo@gnu.org>2021-06-08 23:28:04 +0200
commit04afb76958184b2a6dafa2815a2a410424a05d84 (patch)
tree1c93c88b6d627d055487de48827a2e5b8c5c0c40
parent9178566954cc7f34d2d991d31df4565adad93508 (diff)
downloadguix-04afb76958184b2a6dafa2815a2a410424a05d84.tar.gz
lint: Check for trailing whitespace in synopsis.
* guix/lint.scm (check-synopsis-style): Check for trailing whitespace.
* tests/lint.scm ("synopsis: contains trailing whitespace"): New test.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--guix/lint.scm12
-rw-r--r--tests/lint.scm7
2 files changed, 18 insertions, 1 deletions
diff --git a/guix/lint.scm b/guix/lint.scm
index 5cd6db5842..1aba9eff68 100644
--- a/guix/lint.scm
+++ b/guix/lint.scm
@@ -478,13 +478,23 @@ markup is valid return a plain-text version of SYNOPSIS, otherwise #f."
                        (G_ "Texinfo markup in synopsis is invalid")
                        #:field 'synopsis)))))
 
+  (define (check-no-trailing-whitespace synopsis)
+    "Check that SYNOPSIS doesn't have trailing whitespace."
+    (if (string-suffix? " " synopsis)
+        (list
+         (make-warning package
+                       (G_ "synopsis contains trailing whitespace")
+                       #:field 'synopsis))
+        '()))
+
   (define checks
     (list check-proper-start
           check-final-period
           check-start-article
           check-start-with-package-name
           check-synopsis-length
-          check-texinfo-markup))
+          check-texinfo-markup
+          check-no-trailing-whitespace))
 
   (match (package-synopsis package)
     (""
diff --git a/tests/lint.scm b/tests/lint.scm
index f4c3dde774..97ed5ee827 100644
--- a/tests/lint.scm
+++ b/tests/lint.scm
@@ -271,6 +271,13 @@
                             (description "Imagine this is Taylor UUCP."))))
     (check-synopsis-style pkg)))
 
+(test-equal "synopsis: contains trailing whitespace"
+  "synopsis contains trailing whitespace"
+  (single-lint-warning-message
+   (let ((pkg (dummy-package "x"
+                             (synopsis "Whitespace "))))
+     (check-synopsis-style pkg))))
+
 (test-equal "name: use underscore in package name"
   "name should use hyphens instead of underscores"
   (single-lint-warning-message