diff --git a/CHANGES b/CHANGES index 2ce9ac36649..646687cdb65 100644 --- a/CHANGES +++ b/CHANGES @@ -16,6 +16,9 @@ Features added Bugs fixed ---------- +* #10110: sphinx-build: exit code is not changed when error is raised on + builder-finished event + Testing -------- diff --git a/sphinx/application.py b/sphinx/application.py index fd8b65b6ef6..ff9509a3369 100644 --- a/sphinx/application.py +++ b/sphinx/application.py @@ -336,6 +336,8 @@ def build(self, force_all: bool = False, filenames: List[str] = None) -> None: self.builder.compile_update_catalogs() self.builder.build_update() + self.events.emit('build-finished', None) + if self._warncount and self.keep_going: self.statuscode = 1 @@ -370,8 +372,6 @@ def build(self, force_all: bool = False, filenames: List[str] = None) -> None: os.unlink(envfile) self.events.emit('build-finished', err) raise - else: - self.events.emit('build-finished', None) self.builder.cleanup() # ---- general extensibility interface -------------------------------------