From 0629de913fe5fdc299cb388b4c73bc1f668beb86 Mon Sep 17 00:00:00 2001 From: Frank Duncan Date: Mon, 27 Dec 2021 13:01:05 -0600 Subject: [PATCH] Rename projects, docgen->sheep, checkstyle->wolf --- .candle | 14 ++++---- README.md | 4 +-- bin/buildRelease.sh | 12 +++---- bin/generatedocs.sh | 4 +-- bin/test.sh | 4 +-- src/main/docgen.asd | 8 ----- src/main/func.lisp | 4 +-- src/main/{docgen.lisp => generate.lisp} | 44 ++++++++++++------------- src/main/package.lisp | 14 ++++---- src/main/pkg.lisp | 4 +-- src/main/sheep.asd | 8 +++++ src/main/struc.lisp | 4 +-- src/main/var.lisp | 4 +-- src/test/docgen-test.asd | 7 ---- src/test/failures.lisp | 2 +- src/test/main.lisp | 22 ++++++------- src/test/package.lisp | 2 +- src/test/sheep-test.asd | 7 ++++ 18 files changed, 84 insertions(+), 84 deletions(-) delete mode 100644 src/main/docgen.asd rename src/main/{docgen.lisp => generate.lisp} (71%) create mode 100644 src/main/sheep.asd delete mode 100644 src/test/docgen-test.asd create mode 100644 src/test/sheep-test.asd diff --git a/.candle b/.candle index e51ca90..8793dc9 100644 --- a/.candle +++ b/.candle @@ -1,10 +1,10 @@ -(:packages :docgen :docgen-test :style-checker) -(:name :docgen +(:packages :sheep :sheep-test :wolf) +(:name :sheep :tasks ((:name :test :directions - (docgen-test:run-all-tests)) - (:name :checkstyle :directions - (syntax-checker:pretty-print-check-directory "src")) - (:name :docgen :directions - (docgen:pretty-print-validate-packages :docgen)))) + (sheep-test:run-all-tests)) + (:name :wolf :directions + (wolf:pretty-print-check-directory "src")) + (:name :sheep :directions + (sheep:pretty-print-validate-packages :sheep)))) ; vim:ft=lisp diff --git a/README.md b/README.md index 3d1ce91..d8de45c 100644 --- a/README.md +++ b/README.md @@ -4,11 +4,11 @@ Enforcement of documentation guidelines for my Common Lisp Projects, as well as I wish I had aspirations for this being some standard that someone else might follow, but realistically I'm just irritated at my own laziness with regard to documentation, so I wrote a solution. The forceful nature of the validator is really just because I didn't want to write a smarter parser. As an added bonus, all the docs now look the same when I look at them in the repl, so that's kind of nice. -If you like, you can [download it](https://github.com/frankduncan/docgen/releases/download/0.3/docgen_0.3.tar.gz) +If you like, you can [download it](https://github.com/frankduncan/sheep/releases/download/0.3/sheep_0.3.tar.gz) ## Usage -See the [wiki](https://github.com/frankduncan/docgen/wiki) for usage information (generated by this package). +See the [wiki](https://github.com/frankduncan/sheep/wiki) for usage information (generated by this package). To see how that page was created, take a look at bin/generatedocs.sh diff --git a/bin/buildRelease.sh b/bin/buildRelease.sh index 9254274..1146c38 100755 --- a/bin/buildRelease.sh +++ b/bin/buildRelease.sh @@ -1,13 +1,13 @@ #!/bin/bash -version=$(sbcl --noinform --disable-ldb --lose-on-corruption --end-runtime-options --eval '(format t "~A" (asdf:component-version (asdf:find-system :docgen)))' --eval "(quit)") +version=$(sbcl --noinform --disable-ldb --lose-on-corruption --end-runtime-options --eval '(format t "~A" (asdf:component-version (asdf:find-system :sheep)))' --eval "(quit)") echo -n "Building version $version, hit enter to continue" read -mkdir docgen_$version -cp -ap src/main/* docgen_$version/ -tar zcf docgen_${version}.tar.gz docgen_$version/ -rm -rf docgen_$version +mkdir sheep_$version +cp -ap src/main/* sheep_$version/ +tar zcf sheep_${version}.tar.gz sheep_$version/ +rm -rf sheep_$version -echo "All done, it's in docgen_${version}.tar.gz, you should tag it and push it up to github" +echo "All done, it's in sheep_${version}.tar.gz, you should tag it and push it up to github" diff --git a/bin/generatedocs.sh b/bin/generatedocs.sh index 69ceeff..ba42754 100755 --- a/bin/generatedocs.sh +++ b/bin/generatedocs.sh @@ -1,7 +1,7 @@ #!/bin/bash sbcl \ - --eval "(asdf:load-system :docgen)" \ + --eval "(asdf:load-system :sheep)" \ --eval "(format t \"----~%\")" \ - --eval "(format t \"~A\" (docgen:export-package :docgen))" \ + --eval "(format t \"~A\" (sheep:export-package :sheep))" \ --eval "(quit)" 2> /dev/null | sed -n '/^----$/,$p' | tail -n +2 > wiki/Home.md diff --git a/bin/test.sh b/bin/test.sh index 047a13f..ae0fd28 100755 --- a/bin/test.sh +++ b/bin/test.sh @@ -1,10 +1,10 @@ #!/bin/bash sbcl \ - --eval "(asdf:load-system :docgen)" \ + --eval "(asdf:load-system :sheep)" \ --eval "(load \"$1\")" \ --eval "(format t \"----~%\")" \ - --eval "(format t \"~A\" (docgen:export-package $2))" \ + --eval "(format t \"~A\" (sheep:export-package $2))" \ --eval "(quit)" 2> /dev/null | sed -n '/^----$/,$p' | tail -n +2 > fromcl.md vimdiff fromcl.md ${1/lisp/md} diff --git a/src/main/docgen.asd b/src/main/docgen.asd deleted file mode 100644 index 038129e..0000000 --- a/src/main/docgen.asd +++ /dev/null @@ -1,8 +0,0 @@ -(asdf:defsystem docgen - :name "Documentation Generator" - :version "0.3" - :maintainer "Frank Duncan (frank@kank.com)" - :author "Frank Duncan (frank@kank.com)" - :serial t - :components ((:file "package") (:file "func") (:file "var") (:file "pkg") (:file "struc") (:file "docgen")) - :depends-on (:cl-ppcre)) diff --git a/src/main/func.lisp b/src/main/func.lisp index 45bd970..73c198d 100644 --- a/src/main/func.lisp +++ b/src/main/func.lisp @@ -1,4 +1,4 @@ -(in-package #:docgen-func) +(in-package #:sheep-func) (defvar *doc*) (defvar *prev-line*) @@ -12,7 +12,7 @@ (defun add-keyword (type) (setf *keywords* (remove-duplicates (cons type *keywords*) :test #'string=))) -(defun fire-error (msg) (error (make-instance 'docgen:validation-failure :msg msg))) +(defun fire-error (msg) (error (make-instance 'sheep:validation-failure :msg msg))) (defun expect-blank-line () (let diff --git a/src/main/docgen.lisp b/src/main/generate.lisp similarity index 71% rename from src/main/docgen.lisp rename to src/main/generate.lisp index d56e4ad..6dc1f68 100644 --- a/src/main/docgen.lisp +++ b/src/main/generate.lisp @@ -1,7 +1,7 @@ -(in-package #:docgen) +(in-package #:sheep) (define-condition validation-failure nil ((msg :initarg :msg :reader validation-failure-msg)) - (:documentation "Used internally for docgen parts to signal a validation error.")) + (:documentation "Used internally for sheep parts to signal a validation error.")) (defun get-symb-type (symb) (cond @@ -40,14 +40,14 @@ DESCRIPTION: (setf symbs (sort symbs #'string< :key #'symbol-name)) (remove :success (append - (list (with-success-check pkg (docgen-pkg:doc->ast (find-package pkg)))) + (list (with-success-check pkg (sheep-pkg:doc->ast (find-package pkg)))) (mapcar (lambda (symb) (with-success-check symb (case (get-symb-type symb) - (:function (docgen-func:doc->ast symb)) - (:structure (docgen-struc:doc->ast symb)) - (:variable (docgen-var:doc->ast symb)) + (:function (sheep-func:doc->ast symb)) + (:structure (sheep-struc:doc->ast symb)) + (:variable (sheep-var:doc->ast symb)) (t (error (make-condition 'validation-failure :msg (format nil "Symbol ~A has no documentation" symb))))))) symbs)))))) @@ -97,22 +97,22 @@ EXAMPLES: (case (get-symb-type symb) (:function (list - (docgen-func:ast->category-name (docgen-func:doc->ast symb)) - (docgen-func:ast->short-name (docgen-func:doc->ast symb)) - (docgen-func:ast->link (docgen-func:doc->ast symb)) - (docgen-func:ast->short-desc (docgen-func:doc->ast symb)))) + (sheep-func:ast->category-name (sheep-func:doc->ast symb)) + (sheep-func:ast->short-name (sheep-func:doc->ast symb)) + (sheep-func:ast->link (sheep-func:doc->ast symb)) + (sheep-func:ast->short-desc (sheep-func:doc->ast symb)))) (:structure (list - (docgen-struc:ast->category-name (docgen-struc:doc->ast symb)) - (docgen-struc:ast->short-name (docgen-struc:doc->ast symb)) - (docgen-struc:ast->link (docgen-struc:doc->ast symb)) - (docgen-struc:ast->short-desc (docgen-struc:doc->ast symb)))) + (sheep-struc:ast->category-name (sheep-struc:doc->ast symb)) + (sheep-struc:ast->short-name (sheep-struc:doc->ast symb)) + (sheep-struc:ast->link (sheep-struc:doc->ast symb)) + (sheep-struc:ast->short-desc (sheep-struc:doc->ast symb)))) (:variable (list - (docgen-var:ast->category-name (docgen-var:doc->ast symb)) - (docgen-var:ast->short-name (docgen-var:doc->ast symb)) - (docgen-var:ast->link (docgen-var:doc->ast symb)) - (docgen-var:ast->short-desc (docgen-var:doc->ast symb)))))) + (sheep-var:ast->category-name (sheep-var:doc->ast symb)) + (sheep-var:ast->short-name (sheep-var:doc->ast symb)) + (sheep-var:ast->link (sheep-var:doc->ast symb)) + (sheep-var:ast->short-desc (sheep-var:doc->ast symb)))))) symbs)))) (defun export-package (pkg) @@ -135,13 +135,13 @@ DESCRIPTION: (do-external-symbols (symb pkg) (push symb symbs)) (setf symbs (sort symbs #'string< :key #'symbol-name)) (with-output-to-string (str) - (format str "~A~%~%" (docgen-pkg:ast->md (docgen-pkg:doc->ast (find-package pkg)))) + (format str "~A~%~%" (sheep-pkg:ast->md (sheep-pkg:doc->ast (find-package pkg)))) (format str "~A~%" (table-of-contents pkg)) (format str "~{~A~^~%~}" (mapcar (lambda (symb) (case (get-symb-type symb) - (:variable (docgen-var:ast->md (docgen-var:doc->ast symb))) - (:function (docgen-func:ast->md (docgen-func:doc->ast symb))) - (:structure (docgen-struc:ast->md (docgen-struc:doc->ast symb))))) + (:variable (sheep-var:ast->md (sheep-var:doc->ast symb))) + (:function (sheep-func:ast->md (sheep-func:doc->ast symb))) + (:structure (sheep-struc:ast->md (sheep-struc:doc->ast symb))))) symbs))))) diff --git a/src/main/package.lisp b/src/main/package.lisp index c834cbd..8262469 100644 --- a/src/main/package.lisp +++ b/src/main/package.lisp @@ -1,19 +1,19 @@ -(defpackage #:docgen (:use :cl) +(defpackage #:sheep (:use :cl) (:export #:validate-package #:export-package #:validation-failure #:pretty-print-validate-packages) - (:documentation "Main docgen package. + (:documentation "Main sheep package. -Use docgen to validate that documentation strings on external symbols adhere to +Use sheep to validate that documentation strings on external symbols adhere to a strict format and exist, so that they can be output to markdown format, while looking decent when used within a common lisp process.")) -(defpackage #:docgen-func (:use :cl) +(defpackage #:sheep-func (:use :cl) (:export #:doc->ast #:ast->md #:ast->link #:ast->short-name #:ast->short-desc #:ast->category-name)) -(defpackage #:docgen-var (:use :cl) +(defpackage #:sheep-var (:use :cl) (:export #:doc->ast #:ast->md #:ast->link #:ast->short-name #:ast->short-desc #:ast->category-name)) -(defpackage #:docgen-pkg (:use :cl) +(defpackage #:sheep-pkg (:use :cl) (:export #:doc->ast #:ast->md)) -(defpackage #:docgen-struc (:use :cl) +(defpackage #:sheep-struc (:use :cl) (:export #:doc->ast #:ast->md #:ast->link #:ast->short-name #:ast->short-desc #:ast->category-name)) diff --git a/src/main/pkg.lisp b/src/main/pkg.lisp index df9848f..27d7a24 100644 --- a/src/main/pkg.lisp +++ b/src/main/pkg.lisp @@ -1,6 +1,6 @@ -(in-package #:docgen-pkg) +(in-package #:sheep-pkg) -(defun fire-error (msg) (error (make-instance 'docgen:validation-failure :msg msg))) +(defun fire-error (msg) (error (make-instance 'sheep:validation-failure :msg msg))) (defun doc->ast (pkg) (when (not (documentation pkg t)) (fire-error (format nil "Package ~A has no documentation" (package-name pkg)))) diff --git a/src/main/sheep.asd b/src/main/sheep.asd new file mode 100644 index 0000000..c163586 --- /dev/null +++ b/src/main/sheep.asd @@ -0,0 +1,8 @@ +(asdf:defsystem sheep + :name "Documentation Generator" + :version "0.3" + :maintainer "Frank Duncan (frank@consxy.com)" + :author "Frank Duncan (frank@consxy.com)" + :serial t + :components ((:file "package") (:file "func") (:file "var") (:file "pkg") (:file "struc") (:file "generate")) + :depends-on (:cl-ppcre)) diff --git a/src/main/struc.lisp b/src/main/struc.lisp index 6a792ed..8c0efeb 100644 --- a/src/main/struc.lisp +++ b/src/main/struc.lisp @@ -1,6 +1,6 @@ -(in-package #:docgen-struc) +(in-package #:sheep-struc) -(defun fire-error (msg) (error (make-instance 'docgen:validation-failure :msg msg))) +(defun fire-error (msg) (error (make-instance 'sheep:validation-failure :msg msg))) (defun doc->ast (struc) (labels diff --git a/src/main/var.lisp b/src/main/var.lisp index 93ef25e..40e6998 100644 --- a/src/main/var.lisp +++ b/src/main/var.lisp @@ -1,4 +1,4 @@ -(in-package #:docgen-var) +(in-package #:sheep-var) (defvar *doc*) (defvar *prev-line*) @@ -12,7 +12,7 @@ (defun add-keyword (type) (setf *keywords* (remove-duplicates (cons type *keywords*) :test #'string=))) -(defun fire-error (msg) (error (make-instance 'docgen:validation-failure :msg msg))) +(defun fire-error (msg) (error (make-instance 'sheep:validation-failure :msg msg))) (defun expect-blank-line () (let diff --git a/src/test/docgen-test.asd b/src/test/docgen-test.asd deleted file mode 100644 index 94eecee..0000000 --- a/src/test/docgen-test.asd +++ /dev/null @@ -1,7 +0,0 @@ -(asdf:defsystem docgen-test - :name "Document Generator Tests" - :maintainer "Frank Duncan (frank@kank.com)" - :author "Frank Duncan (frank@kank.com)" - :serial t - :components ((:file "package") (:file "main") (:file "failures")) - :depends-on (:docgen)) diff --git a/src/test/failures.lisp b/src/test/failures.lisp index 88311c4..40e02d8 100644 --- a/src/test/failures.lisp +++ b/src/test/failures.lisp @@ -1,4 +1,4 @@ -(in-package #:docgen-test) +(in-package #:sheep-test) (let ((long-line (format nil "~A~A" diff --git a/src/test/main.lisp b/src/test/main.lisp index 9bae683..23b7804 100644 --- a/src/test/main.lisp +++ b/src/test/main.lisp @@ -1,4 +1,4 @@ -(in-package #:docgen-test) +(in-package #:sheep-test) (defvar *tests* nil) @@ -33,10 +33,10 @@ (handler-case (progn (load ,source) - (string= (slurp-file ,target) (docgen:export-package ,pkg))) - (docgen:validation-failure (vf) + (string= (slurp-file ,target) (sheep:export-package ,pkg))) + (sheep:validation-failure (vf) (format t "Validation failure gotten: ~A~%" - (funcall (symbol-function (find-symbol "VALIDATION-FAILURE-MSG" :docgen)) vf))))))) + (funcall (symbol-function (find-symbol "VALIDATION-FAILURE-MSG" :sheep)) vf))))))) (defmacro deffailuretest (pkg source expected) `(deftest @@ -45,7 +45,7 @@ (progn (load ,source) (let - ((result (docgen:validate-package ,pkg))) + ((result (sheep:validate-package ,pkg))) (or (equal ,expected result) (format t " Got error:~%~S~% but expected~%~S~%" result ,expected))))))) @@ -57,13 +57,13 @@ (handler-case (progn (funcall - (symbol-function (find-symbol "INTERNAL-DOC->AST" :docgen-func)) + (symbol-function (find-symbol "INTERNAL-DOC->AST" :sheep-func)) 'unused ,doc) nil) - (docgen:validation-failure (vf) + (sheep:validation-failure (vf) (let - ((result (funcall (symbol-function (find-symbol "VALIDATION-FAILURE-MSG" :docgen)) vf))) + ((result (funcall (symbol-function (find-symbol "VALIDATION-FAILURE-MSG" :sheep)) vf))) (or (string= ,expected result) (format t " Got error:~%~S~% but expected~%~S~%" result ,expected)))))))) @@ -75,13 +75,13 @@ (handler-case (progn (funcall - (symbol-function (find-symbol "INTERNAL-DOC->AST" :docgen-var)) + (symbol-function (find-symbol "INTERNAL-DOC->AST" :sheep-var)) '*unused* ,doc) nil) - (docgen:validation-failure (vf) + (sheep:validation-failure (vf) (let - ((result (funcall (symbol-function (find-symbol "VALIDATION-FAILURE-MSG" :docgen)) vf))) + ((result (funcall (symbol-function (find-symbol "VALIDATION-FAILURE-MSG" :sheep)) vf))) (or (string= ,expected result) (format t " Got error:~%~S~% but expected~%~S~%" result ,expected)))))))) diff --git a/src/test/package.lisp b/src/test/package.lisp index f2bed40..c4c9051 100644 --- a/src/test/package.lisp +++ b/src/test/package.lisp @@ -1,2 +1,2 @@ -(defpackage #:docgen-test (:use :common-lisp) +(defpackage #:sheep-test (:use :common-lisp) (:export :run-all-tests)) diff --git a/src/test/sheep-test.asd b/src/test/sheep-test.asd new file mode 100644 index 0000000..62f6934 --- /dev/null +++ b/src/test/sheep-test.asd @@ -0,0 +1,7 @@ +(asdf:defsystem sheep-test + :name "Sheep Tests" + :maintainer "Frank Duncan (frank@consxy.com)" + :author "Frank Duncan (frank@consxy.com)" + :serial t + :components ((:file "package") (:file "main") (:file "failures")) + :depends-on (:sheep)) -- 2.25.1