diff options
author | Takeshi KOMIYA <i.tkomiya@gmail.com> | 2019-04-16 14:04:54 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-04-16 14:04:54 +0900 |
commit | 15bc5a32bb0b78b432803e55fffa10c801182c75 (patch) | |
tree | 6005f52022774183f3bc50c1d0cac23452df7270 /sphinx/application.py | |
parent | 22d7ccd1d99c07731a443b88cb725f76bd9c71f7 (diff) | |
parent | 76fb3604fd3f797a7b0a23bf3507a436907e276f (diff) | |
download | sphinx-git-15bc5a32bb0b78b432803e55fffa10c801182c75.tar.gz |
Merge pull request #6260 from tk0miya/refactor_events
Make EventManager portable
Diffstat (limited to 'sphinx/application.py')
-rw-r--r-- | sphinx/application.py | 20 |
1 files changed, 7 insertions, 13 deletions
diff --git a/sphinx/application.py b/sphinx/application.py index afcdc02ed..e9b950c83 100644 --- a/sphinx/application.py +++ b/sphinx/application.py @@ -182,7 +182,7 @@ class Sphinx: self.warningiserror = warningiserror logging.setup(self, self._status, self._warning) - self.events = EventManager() + self.events = EventManager(self) # keep last few messages for traceback # This will be filled by sphinx.util.logging.LastMessagesWriter @@ -249,7 +249,7 @@ class Sphinx: # now that we know all config values, collect them from conf.py self.config.init_values() - self.emit('config-inited', self.config) + self.events.emit('config-inited', self.config) # create the project self.project = Project(self.srcdir, self.config.source_suffix) @@ -319,7 +319,7 @@ class Sphinx: # type: () -> None self.builder.set_environment(self.env) self.builder.init() - self.emit('builder-inited') + self.events.emit('builder-inited') # ---- main "build" method ------------------------------------------------- @@ -360,10 +360,10 @@ class Sphinx: envfile = path.join(self.doctreedir, ENV_PICKLE_FILENAME) if path.isfile(envfile): os.unlink(envfile) - self.emit('build-finished', err) + self.events.emit('build-finished', err) raise else: - self.emit('build-finished', None) + self.events.emit('build-finished', None) self.builder.cleanup() # ---- general extensibility interface ------------------------------------- @@ -420,13 +420,7 @@ class Sphinx: Return the return values of all callbacks as a list. Do not emit core Sphinx events in extensions! """ - try: - logger.debug('[app] emitting event: %r%s', event, repr(args)[:100]) - except Exception: - # not every object likes to be repr()'d (think - # random stuff coming via autodoc) - pass - return self.events.emit(event, self, *args) + return self.events.emit(event, *args) def emit_firstresult(self, event, *args): # type: (str, Any) -> Any @@ -436,7 +430,7 @@ class Sphinx: .. versionadded:: 0.5 """ - return self.events.emit_firstresult(event, self, *args) + return self.events.emit_firstresult(event, *args) # registering addon parts |