Skip to content

Commit d488153

Browse files
committed
Add a little more automation for the release
Add an awk script for automatically updating the help text in README.md
1 parent ff1f66c commit d488153

File tree

2 files changed

+43
-1
lines changed

2 files changed

+43
-1
lines changed

doc/release-checklist.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,9 @@ necessary changes for the upcoming release.
55

66
## Version bump
77

8+
This section can be done by running scripts/version-bump.sh with the new version
9+
as an argument.
10+
811
- [ ] Create a new branch for the required changes for this release.
912
- [ ] Update version in `Cargo.toml`. Run `cargo build` to update `Cargo.lock`.
1013
Make sure to `git add` the `Cargo.lock` changes as well.
@@ -21,7 +24,7 @@ necessary changes for the upcoming release.
2124
new version).
2225
- [ ] Review `-h`, `--help`, and the `man` page.
2326
- [ ] Run `fd -h` and copy the output to the *"Command-line options"* section in
24-
the README
27+
the README. This can be done by running `gawk -f scripts/update-help.awk README.md`.
2528
- [ ] Push all changes and wait for CI to succeed (before continuing with the
2629
next section).
2730
- [ ] Optional: manually test the new features and command-line options described

scripts/update-help.awk

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
#!/usr/bin/gawk -f
2+
3+
@include "inplace"
4+
5+
BEGIN {
6+
inSection = 0
7+
inBlock = 0
8+
}
9+
10+
11+
/Command-line options/ { inSection=1 }
12+
13+
inSection && /^```/ {
14+
inBlock=1
15+
inSection=0
16+
# print the starting fence then move to next line
17+
print
18+
next
19+
}
20+
21+
inBlock && /^```/ {
22+
cmd="cargo run --release --quiet -- -h"
23+
# Output the results of fd -h
24+
u=0
25+
while (cmd | getline line) {
26+
# Skip everything before the usage line
27+
if (line ~ /^Usage/) {
28+
u=1;
29+
}
30+
if (u) {
31+
print line
32+
}
33+
}
34+
close(cmd)
35+
inBlock = 0
36+
}
37+
38+
!inBlock
39+

0 commit comments

Comments
 (0)