You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Today, the only user-facing documentation I see among the Makefiles — Makefile and project.Makefile — is the set of lines echo-ed by the help target in Makefile:
# note: "help" MUST be the first target in the file,
# when the user types "make" they should get help info
help: status
@echo ""
@echo "make setup -- initial setup (run this first)"
@echo "make site -- makes site locally"
@echo "make install -- install dependencies"
@echo "make test -- runs tests"
@echo "make lint -- perform linting"
@echo "make testdoc -- builds docs and runs local test server"
@echo "make deploy -- deploys site"
@echo "make update -- updates linkml version"
@echo "make help -- show this help"
@echo ""
Note: When I say "user" in this context, I'm referring to the person that would be running $ make commands.
Those lines are not necessarily written near where the associated target is defined.
That can result in the lines becoming stale (i.e. falling out of sync with the target). It can also result in that set of lines not accounting for newly-implemented targets (because those lines would be "out of sight, out of mind" when implementing a target).
Using that technique, a target's user-facing documentation would "live with" the target's definition. I think that will decrease the likelihood that the documentation falls out of sync with the target, and will increase the likelihood that new targets have user-facing documentation.
That technique can be extended to incorporate ANSI color codes, so that the output is in color. For example (this is a "quick and dirty" sed script):
The text was updated successfully, but these errors were encountered:
Today, the only user-facing documentation I see among the Makefiles —
Makefile
andproject.Makefile
— is the set of linesecho
-ed by thehelp
target inMakefile
:linkml-project-cookiecutter/{{cookiecutter.project_name}}/Makefile
Lines 60 to 73 in d9b85bb
Those lines are not necessarily written near where the associated target is defined.
That can result in the lines becoming stale (i.e. falling out of sync with the target). It can also result in that set of lines not accounting for newly-implemented targets (because those lines would be "out of sight, out of mind" when implementing a target).
I propose that the Makefiles be updated to use a documentation technique like the one shown here: https://stackoverflow.com/a/47107132
Using that technique, a target's user-facing documentation would "live with" the target's definition. I think that will decrease the likelihood that the documentation falls out of sync with the target, and will increase the likelihood that new targets have user-facing documentation.
That technique can be extended to incorporate ANSI color codes, so that the output is in color. For example (this is a "quick and dirty" sed script):
The text was updated successfully, but these errors were encountered: