Hello,
how does Sphinx internally decide, if all files needs to be rewritten?
I'm maintaining the extension
Sphinx-Needs and if a specific option of my extension is set in conf.py, Sphinx writes all files at each build.
The option is set like this in conf.py:
-----
from docutils.parsers.rst import directives
needs_extra_options = {
"introduced": directives.unchanged,
"updated": directives.unchanged,
"impacts": directives.unchanged
}
----
If needs_extra_options is not used, the value is set to {}.
Then during "env-before-read-docs" I set some default values to needs_extra_options.
So I change it internally.
However, this internal change on a not set needs_extra_options does not trigger Sphinx to write all files.
I have no idea, how a confog option is able to introduce such a behavior.
Any hints on which parts of Sphinx I should take look?
Thanks,
Daniel