Fall back to dev when git describe prints nothing (closes #74)
check / check (push) Successful in 45s

The Makefile example in the Go styleguide and in the HTTP server conventions
set VERSION from `git describe --tags --always` alone. Where that prints
nothing (outside a git checkout, or where git is missing or refuses the
checkout), the binary was stamped with an empty version and nothing said so.
Both now read
`VERSION ?= $(or $(shell git describe --tags --always 2>/dev/null),dev)`, and
the comment above each names that condition. A `VERSION` from the environment
or the make command line still takes precedence.

Model: opus-5-5
This commit is contained in:
2026-10-04 03:49:43 +00:00
parent 5de98c404e
commit 7741a69a54
3 changed files with 15 additions and 6 deletions
+5
View File
@@ -21,6 +21,11 @@ fmt-check, and commit.
# Completed Steps
- 2026-10-04: The Makefile examples in the Go styleguide and the HTTP server
conventions now fall back to `dev` when `git describe` prints nothing (outside
a git checkout, or where git is missing or refuses the checkout), instead of
stamping an empty version (issue 74). The canonical `Dockerfile` already fails
on a `dev` version when `.git` is in the build context.
- 2026-10-04: The canonical `.dockerignore` now also keeps out each submodule's
`config` (issue 75). A submodule's git directory lives under `.git/modules/`,
nested again for its own submodules, and its `config` can hold a credential