Compare commits
1
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3095b252d1 |
@@ -22,8 +22,6 @@ https://git.eeqj.de/sneak/dnswatcher/issues/104
|
|||||||
|
|
||||||
- 2026-10-01: two notify shutdown tests always release the delivery they hold,
|
- 2026-10-01: two notify shutdown tests always release the delivery they hold,
|
||||||
so a drain that returns early fails them instead of hanging (closes #176).
|
so a drain that returns early fails them instead of hanging (closes #176).
|
||||||
- 2026-10-01: `script/install-precommit` asks git for the repository's git
|
|
||||||
directory, so `make hooks` also works where `.git` is a file (closes #129).
|
|
||||||
- 2026-10-01: `TODO.md` brought up to date: open issues listed by URL, every
|
- 2026-10-01: `TODO.md` brought up to date: open issues listed by URL, every
|
||||||
Completed Steps entry cut to at most two lines (closes #146).
|
Completed Steps entry cut to at most two lines (closes #146).
|
||||||
- 2026-10-01: wildcard CORS now applies only to the public routes, not to
|
- 2026-10-01: wildcard CORS now applies only to the public routes, not to
|
||||||
@@ -108,5 +106,7 @@ https://git.eeqj.de/sneak/dnswatcher/issues/104
|
|||||||
- README accuracy sweep: https://git.eeqj.de/sneak/dnswatcher/issues/108
|
- README accuracy sweep: https://git.eeqj.de/sneak/dnswatcher/issues/108
|
||||||
- README sections required by policy:
|
- README sections required by policy:
|
||||||
https://git.eeqj.de/sneak/dnswatcher/issues/173
|
https://git.eeqj.de/sneak/dnswatcher/issues/173
|
||||||
|
- `script/install-precommit` in a linked worktree:
|
||||||
|
https://git.eeqj.de/sneak/dnswatcher/issues/129
|
||||||
- fixed root server order: https://git.eeqj.de/sneak/dnswatcher/issues/138
|
- fixed root server order: https://git.eeqj.de/sneak/dnswatcher/issues/138
|
||||||
- review toward 1.0: https://git.eeqj.de/sneak/dnswatcher/issues/144
|
- review toward 1.0: https://git.eeqj.de/sneak/dnswatcher/issues/144
|
||||||
|
|||||||
@@ -7,20 +7,7 @@ ROOT="$(cd "$(dirname "$0")/.." && pwd -P)"
|
|||||||
|
|
||||||
main() {
|
main() {
|
||||||
cd "$ROOT"
|
cd "$ROOT"
|
||||||
# Stop if this directory is not the top of its own git checkout, for
|
hook=".git/hooks/pre-commit"
|
||||||
# example a copy inside another repository, whose hook must not be
|
|
||||||
# replaced.
|
|
||||||
if [ "$(git rev-parse --show-toplevel)" != "$ROOT" ]; then
|
|
||||||
echo "install-precommit: $ROOT is not the top of a git checkout" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
# Ask git for the repository's own git directory: .git is a file, not
|
|
||||||
# a directory, in some checkouts (for example a clone made with
|
|
||||||
# --separate-git-dir). core.hooksPath is deliberately not followed, so
|
|
||||||
# the hook is never written outside this repository.
|
|
||||||
hooks="$(git rev-parse --git-common-dir)/hooks"
|
|
||||||
mkdir -p "$hooks"
|
|
||||||
hook="$hooks/pre-commit"
|
|
||||||
printf '#!/bin/sh\nset -e\nscript/precommit\n' > "$hook"
|
printf '#!/bin/sh\nset -e\nscript/precommit\n' > "$hook"
|
||||||
chmod +x "$hook"
|
chmod +x "$hook"
|
||||||
echo "pre-commit hook installed: runs script/precommit"
|
echo "pre-commit hook installed: runs script/precommit"
|
||||||
|
|||||||
Reference in New Issue
Block a user