aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJade Lovelace <lix@jade.fyi>2024-05-15 13:09:05 -0700
committerjade <lix@jade.fyi>2024-05-15 20:18:50 +0000
commit03655c310dccd4f6d61af262ccf886b7e3906fe4 (patch)
treea9a3be88b971501706c0e7c445e9ca67c30bcd44
parentf6397cc286d97fec725af75ebdfe967b166f23e5 (diff)
build-release-notes: fail if the directory does not exist
This was a combination of two problems: the python didn't throw an error because apparently glob on a nonexistent directory doesn't crash, and secondarily, bash ignores bad exit codes without `set -e` if they are not in the final/only command. Change-Id: I812bde7a4daee5c77ffe9d7c73a25fd14969f548
-rw-r--r--doc/manual/src/release-notes/meson.build2
-rw-r--r--maintainers/build-release-notes.py5
2 files changed, 6 insertions, 1 deletions
diff --git a/doc/manual/src/release-notes/meson.build b/doc/manual/src/release-notes/meson.build
index a33798bc1..cbcc58e1f 100644
--- a/doc/manual/src/release-notes/meson.build
+++ b/doc/manual/src/release-notes/meson.build
@@ -1,6 +1,8 @@
rl_next_generated = custom_target(
command : [
'bash',
+ '-euo',
+ 'pipefail',
'-c',
'''
if type -p build-release-notes > /dev/null; then
diff --git a/maintainers/build-release-notes.py b/maintainers/build-release-notes.py
index 85bc40aba..311dca803 100644
--- a/maintainers/build-release-notes.py
+++ b/maintainers/build-release-notes.py
@@ -40,7 +40,10 @@ def plural_list(strs: list[str]) -> str:
return '{}{} and {}'.format(', '.join(strs[:-1]), comma, strs[-1])
def run_on_dir(d):
- paths = pathlib.Path(d).glob('*.md')
+ d = pathlib.Path(d)
+ if not d.is_dir():
+ raise ValueError(f'provided path {d} is not a directory')
+ paths = d.glob('*.md')
entries = []
for p in paths:
try: