Skip to content

Commit 0c0da9b

Browse files
authored
Merge pull request #7904 from choldgraf/events
DOC: Events overview
2 parents 8c82ecb + ef03bcc commit 0c0da9b

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed

doc/extdev/appapi.rst

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,40 @@ connect handlers to the events. Example:
157157
app.connect('source-read', source_read_handler)
158158
159159
160+
Below is an overview of each event that happens during a build. In the list
161+
below, we include the event name, its callback parameters, and the input and output
162+
type for that event::
163+
164+
1. event.config-inited(app,config)
165+
2. event.builder-inited(app)
166+
3. event.env-get-outdated(app, env, added, changed, removed)
167+
4. event.env-before-read-docs(app, env, docnames)
168+
169+
for docname in docnames:
170+
5. event.env-purge-doc(app, env, docname)
171+
if doc changed and not removed:
172+
6. source-read(app, docname, source)
173+
7. run source parsers: text -> docutils.document (parsers can be added with the app.add_source_parser() API)
174+
8. apply transforms (by priority): docutils.document -> docutils.document
175+
- event.doctree-read(app, doctree) is called in the middly of transforms,
176+
transforms come before/after this event depending on their priority.
177+
9. (if running in parallel mode, for each process) event.env-merged-info(app, env, docnames, other)
178+
10. event.env-updated(app, env)
179+
11. event.env-get-updated(app, env)
180+
11. event.env-check-consistency(app, env)
181+
182+
# For builders that output a single page, they are first joined into a single doctree before post-transforms/doctree-resolved
183+
for docname in docnames:
184+
12. apply post-transforms (by priority): docutils.document -> docutils.document
185+
13. event.doctree-resolved(app, doctree, docname)
186+
- (for any reference node that fails to resolve) event.missing-reference(env, node, contnode)
187+
188+
14. Generate output files
189+
190+
15. event.build-finished(app, exception)
191+
192+
Here is a more detailed list of these events.
193+
160194
.. event:: builder-inited (app)
161195

162196
Emitted when the builder object has been created. It is available as

0 commit comments

Comments
 (0)