[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 5/5] guix lint: make sure synopses do not start with the package
From: |
Cyril Roelandt |
Subject: |
[PATCH 5/5] guix lint: make sure synopses do not start with the package name. |
Date: |
Sat, 27 Sep 2014 23:49:28 +0200 |
* guix/scripts/lint.scm (check-start-with-package-name): New method.
* tests/lint.scm: Test it.
---
guix/scripts/lint.scm | 9 +++++++++
tests/lint.scm | 10 ++++++++++
2 files changed, 19 insertions(+)
diff --git a/guix/scripts/lint.scm b/guix/scripts/lint.scm
index ee00e5c..8f49afc 100644
--- a/guix/scripts/lint.scm
+++ b/guix/scripts/lint.scm
@@ -167,12 +167,21 @@ Run a set of checkers on the specified package; if none
is specified, run the ch
"synopsis should start with an upper-case letter"
'synopsis)))
+ (define (check-start-with-package-name synopsis)
+ (let ((idx (string-contains-ci synopsis (package-name package))))
+ (when (and idx
+ (= idx 0))
+ (emit-warning package
+ "synopsis should not start with the package name")
+ 'synopsis)))
+
(let ((synopsis (package-synopsis package)))
(if (string? synopsis)
(begin
(check-synopsis-start-upper-case synopsis)
(check-final-period synopsis)
(check-start-article synopsis)
+ (check-start-with-package-name synopsis)
(check-synopsis-length synopsis)))))
(define (check-patches package)
diff --git a/tests/lint.scm b/tests/lint.scm
index c439faa..62a9df9 100644
--- a/tests/lint.scm
+++ b/tests/lint.scm
@@ -124,6 +124,16 @@
(check-synopsis-style pkg))))
"synopsis should be less than 80 characters long")))
+(test-assert "synopsis: start with package name"
+ (->bool
+ (string-contains (call-with-warnings
+ (lambda ()
+ (let ((pkg (dummy-package "x"
+ (name "foo")
+ (synopsis "foo, a nice package"))))
+ (check-synopsis-style pkg))))
+ "synopsis should not start with the package name")))
+
(test-assert "inputs: pkg-config is probably a native input"
(->bool
(string-contains
--
1.8.4.rc3
- [PATCH 0/5] Add, fix and improve checkers in guix lint., Cyril Roelandt, 2014/09/27
- [PATCH 1/5] guix lint: make sure check-patches retrieves patch names., Cyril Roelandt, 2014/09/27
- [PATCH 2/5] guix lint: Make sure synopses are not too long., Cyril Roelandt, 2014/09/27
- [PATCH 4/5] guix lint: Make sure a synopsis cannot start with a lower-case article., Cyril Roelandt, 2014/09/27
- [PATCH 5/5] guix lint: make sure synopses do not start with the package name.,
Cyril Roelandt <=
- [PATCH 3/5] guix lint: check whether descriptions and synopses start with an upper-case letter., Cyril Roelandt, 2014/09/27
- Re: [PATCH 0/5] Add, fix and improve checkers in guix lint., Andreas Enge, 2014/09/28