diff options
author | Cyril Roelandt <tipecaml@gmail.com> | 2014-09-27 21:39:19 +0200 |
---|---|---|
committer | Cyril Roelandt <tipecaml@gmail.com> | 2014-10-08 03:08:19 +0200 |
commit | 5622953de1125497b2e20cf25a1f9686c8bcfd77 (patch) | |
tree | c46f3ae58eafe2960a760a645b020ee00baf3960 | |
parent | 90d104ba82dca16203448da57523d2a7b36be040 (diff) | |
download | guix-5622953de1125497b2e20cf25a1f9686c8bcfd77.tar.gz |
guix lint: Make sure synopses are not too long.
* guix/scripts/lint.scm (check-synopsis-length): New procedure. * tests/lint.scm ("synopsis: too long"): New test.
-rw-r--r-- | guix/scripts/lint.scm | 9 | ||||
-rw-r--r-- | tests/lint.scm | 9 |
2 files changed, 17 insertions, 1 deletions
diff --git a/guix/scripts/lint.scm b/guix/scripts/lint.scm index b61373760c..e8d3707080 100644 --- a/guix/scripts/lint.scm +++ b/guix/scripts/lint.scm @@ -140,11 +140,18 @@ Run a set of checkers on the specified package; if none is specified, run the ch "no article allowed at the beginning of the synopsis" 'synopsis))) + (define (check-synopsis-length synopsis) + (if (>= (string-length synopsis) 80) + (emit-warning package + "synopsis should be less than 80 characters long" + 'synopsis))) + (let ((synopsis (package-synopsis package))) (if (string? synopsis) (begin (check-final-period synopsis) - (check-start-article synopsis))))) + (check-start-article synopsis) + (check-synopsis-length synopsis))))) (define (check-patches package) ;; Emit a warning if the patches requires by PACKAGE are badly named. diff --git a/tests/lint.scm b/tests/lint.scm index 56558c904f..e0829089b4 100644 --- a/tests/lint.scm +++ b/tests/lint.scm @@ -79,6 +79,15 @@ (check-synopsis-style pkg)))) "no article allowed at the beginning of the synopsis"))) +(test-assert "synopsis: too long" + (->bool + (string-contains (call-with-warnings + (lambda () + (let ((pkg (dummy-package "x" + (synopsis (make-string 80 #\x))))) + (check-synopsis-style pkg)))) + "synopsis should be less than 80 characters long"))) + (test-assert "inputs: pkg-config is probably a native input" (->bool (string-contains |