mirror of
https://github.com/sphinx-doc/sphinx.git
synced 2025-02-25 18:55:22 -06:00
Fix case where language isn't set
This commit is contained in:
@@ -166,7 +166,7 @@ class Config:
|
||||
|
||||
# Resolve https://github.com/sphinx-doc/sphinx/issues/10474 where conf.py
|
||||
# explicitly sets language to None, by coercing it to English.
|
||||
if namespace["language"] is None:
|
||||
if namespace.get("language", ...) is None:
|
||||
namespace["language"] = "en"
|
||||
|
||||
return cls(namespace, overrides or {})
|
||||
|
||||
@@ -395,3 +395,17 @@ def test_conf_py_language_none(tempdir):
|
||||
|
||||
# Then the language is coerced to English
|
||||
assert cfg.language == "en"
|
||||
|
||||
|
||||
def test_conf_py_no_language(tempdir):
|
||||
"""Regression test for #10474."""
|
||||
|
||||
# Given a conf.py file with no language attribute
|
||||
(tempdir / 'conf.py').write_text("", encoding='utf-8')
|
||||
|
||||
# When we load conf.py into a Config object
|
||||
cfg = Config.read(tempdir, {}, None)
|
||||
cfg.init_values()
|
||||
|
||||
# Then the language is coerced to English
|
||||
assert cfg.language == "en"
|
||||
|
||||
Reference in New Issue
Block a user