View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0037304 | mantisbt | tools | public | 2026-07-12 09:49 | 2026-07-13 18:42 |
| Reporter | dregad | Assigned To | dregad | ||
| Priority | normal | Severity | minor | Reproducibility | always |
| Status | resolved | Resolution | fixed | ||
| Target Version | 2.29.0 | Fixed in Version | 2.29.0 | ||
| Summary | 0037304: Build scripts: abort execution when an external command fails | ||||
| Description | The main build script (buildrelease-repo.py) is relies on helper scripts (buildrelease.py and docbook-manual.py). If an external command fails within one of these child scripts, the error is shown on screen but the exit code is not captured by the caller, which continues its execution as though everything ran successfully.
Execution should have stopped after ERROR. | ||||
| Steps To Reproduce |
| ||||
| Additional Information | This caused the release zip / tarball for 2.28.4 to be published on sourceforge without the documentation. Reported by @atrol on Gitter. | ||||
| Tags | No tags attached. | ||||
|
MantisBT: master d2add93a 2026-07-12 11:06 Details Diff |
Call subprocess.run to build manuals With check=True, an exception is thrown if the command fails, allowing error handling. This required adapting the command from string to list so it can be called without initializing a shell. Fixes 0037304 |
Affected Issues 0037304 |
|
| mod - build/buildrelease-repo.py | Diff File | ||
| mod - build/buildrelease.py | Diff File | ||
|
MantisBT: master 25b71dbd 2026-07-12 11:43 Details Diff |
Publican does not output anything to stderr Print stdout in the exception block. Also, using subprocess.run in Text mode avoids the need to call decode on the output. Issue 0037304 |
Affected Issues 0037304 |
|
| mod - build/docbook-manual.py | Diff File | ||