diff options
author | Jade Lovelace <lix@jade.fyi> | 2024-05-15 13:09:05 -0700 |
---|---|---|
committer | jade <lix@jade.fyi> | 2024-05-15 20:18:50 +0000 |
commit | 03655c310dccd4f6d61af262ccf886b7e3906fe4 (patch) | |
tree | a9a3be88b971501706c0e7c445e9ca67c30bcd44 | |
parent | f6397cc286d97fec725af75ebdfe967b166f23e5 (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.build | 2 | ||||
-rw-r--r-- | maintainers/build-release-notes.py | 5 |
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: |