guix lint: make sure synopses do not start with the package name.
* guix/scripts/lint.scm (check-start-with-package-name): New method.
* tests/lint.scm ("synopsis: start with package name"): New test.
			
			
This commit is contained in:
		
							parent
							
								
									a00ffdaa17
								
							
						
					
					
						commit
						3c762a13bf
					
				
					 2 changed files with 19 additions and 0 deletions
				
			
		|  | @ -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) | ||||
|  |  | |||
|  | @ -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 | ||||
|  |  | |||
		Reference in a new issue