Create a new type for the current document's environment state#13151
Merged
AA-Turner merged 16 commits intosphinx-doc:masterfrom Jan 4, 2025
Merged
Create a new type for the current document's environment state#13151AA-Turner merged 16 commits intosphinx-doc:masterfrom
AA-Turner merged 16 commits intosphinx-doc:masterfrom
Conversation
# Conflicts: # sphinx/directives/__init__.py # sphinx/domains/changeset.py # tests/test_environment/test_environment.py
picnixz
reviewed
Nov 27, 2024
Member
picnixz
left a comment
There was a problem hiding this comment.
This kind of interface, while being transparent for the user, may be worth documenting for extension developers
The class wouldn't be exposed but we can expose each documented attribute.
# Conflicts: # sphinx/domains/c/__init__.py # sphinx/domains/changeset.py # sphinx/domains/cpp/__init__.py
Member
Author
picnixz
reviewed
Jan 3, 2025
Member
picnixz
left a comment
There was a problem hiding this comment.
This interface looks cleaner and this would help us refactoring things more easily.
This was referenced Jan 4, 2025
shimizukawa
added a commit
that referenced
this pull request
Jan 16, 2025
#13151 changed the Environment class, but the `ENV_VERSION` has not been updated. This causes errors when building with existing environments.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Feature or Bugfix
Purpose
As a step towards #13072, this PR introduces a new
CurrentDocumenttype to store and manipulate state in the environment for the document currently being read. This is currently stored in atemp_datadict.We also rename the attribute on
BuildEnvironmenttocurrent_documentfromtemp_data, keeping the old name as an alias.At present, none of the old names or e.g. the mapping interface to
CurrentDocumentare deprecated, though I expect that in the future this would be done.For downstream extensions that make use of
env.temp_data['...'], this should be a transparent refactor.xref:
app,env, and the domains #13072