@@ -95,14 +95,15 @@ class BuildEnvironment:
95
95
# --------- ENVIRONMENT INITIALIZATION -------------------------------------
96
96
97
97
def __init__ (self , app : "Sphinx" = None ):
98
- self .app = None # type: Sphinx
99
- self .doctreedir = None # type: str
100
- self .srcdir = None # type: str
101
- self .config = None # type: Config
102
- self .config_status = None # type: int
103
- self .events = None # type: EventManager
104
- self .project = None # type: Project
105
- self .version = None # type: Dict[str, str]
98
+ self .app = None # type: Sphinx
99
+ self .doctreedir = None # type: str
100
+ self .srcdir = None # type: str
101
+ self .config = None # type: Config
102
+ self .config_status = None # type: int
103
+ self .config_status_extra = None # type: str
104
+ self .events = None # type: EventManager
105
+ self .project = None # type: Project
106
+ self .version = None # type: Dict[str, str]
106
107
107
108
# the method of doctree versioning; see set_versioning_method
108
109
self .versioning_condition = None # type: Union[bool, Callable]
@@ -232,16 +233,25 @@ def setup(self, app: "Sphinx") -> None:
232
233
def _update_config (self , config : Config ) -> None :
233
234
"""Update configurations by new one."""
234
235
self .config_status = CONFIG_OK
236
+ self .config_status_extra = ''
235
237
if self .config is None :
236
238
self .config_status = CONFIG_NEW
237
239
elif self .config .extensions != config .extensions :
238
240
self .config_status = CONFIG_EXTENSIONS_CHANGED
241
+ extensions = sorted (
242
+ set (self .config .extensions ) ^ set (config .extensions ))
243
+ if len (extensions ) == 1 :
244
+ extension = extensions [0 ]
245
+ else :
246
+ extension = '%d' % (len (extensions ),)
247
+ self .config_status_extra = ' (%r)' % (extension ,)
239
248
else :
240
249
# check if a config value was changed that affects how
241
250
# doctrees are read
242
251
for item in config .filter ('env' ):
243
252
if self .config [item .name ] != item .value :
244
253
self .config_status = CONFIG_CHANGED
254
+ self .config_status_extra = ' (%r)' % (item .name ,)
245
255
break
246
256
247
257
self .config = config
0 commit comments