[PATCH] doc: avoid using deprecated sphinx function

The execfile_() function in sphinx has been removed after being deprecated for some time. Follow what sphinx upstream does in [1] to avoid using this function. This fixes "make htmldocs" on at least Arch Linux but likely other distros too.
[1]: https://github.com/sphinx-doc/sphinx/commit/9ced1e355ad6baecd4e755a598a54877...
Signed-off-by: Caleb Connolly caleb.connolly@linaro.org --- base-commit: 92b27528d777ce85362af45e7d2974a6c856219b
// Caleb (they/them) --- doc/sphinx/load_config.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/doc/sphinx/load_config.py b/doc/sphinx/load_config.py index eeb394b39e2c..977b27084780 100644 --- a/doc/sphinx/load_config.py +++ b/doc/sphinx/load_config.py @@ -3,7 +3,6 @@
import os import sys -from sphinx.util.pycompat import execfile_
# ------------------------------------------------------------------------------ def loadConfig(namespace): @@ -48,7 +47,7 @@ def loadConfig(namespace): sys.stdout.write("load additional sphinx-config: %s\n" % config_file) config = namespace.copy() config['__file__'] = config_file - execfile_(config_file, config) + exec(config_file.read_text(), config) del config['__file__'] namespace.update(config) else:

On Tue, Nov 14, 2023 at 03:18:02PM +0000, Caleb Connolly wrote:
The execfile_() function in sphinx has been removed after being deprecated for some time. Follow what sphinx upstream does in [1] to avoid using this function. This fixes "make htmldocs" on at least Arch Linux but likely other distros too.
Signed-off-by: Caleb Connolly caleb.connolly@linaro.org
base-commit: 92b27528d777ce85362af45e7d2974a6c856219b
I think we should cherry-pick: commit 0283189e8f3d0917e2ac399688df85211f48447b Author: Jonathan Corbet corbet@lwn.net Date: Wed Jan 4 10:47:39 2023 -0700
docs: Fix the docs build with Sphinx 6.0
from the kernel, to keep the file in-sync. That's the only commit to load_config.py since I believe we synced last, but there might be other changes in Documentation/sphinx/ to grab as well.

On 11/14/23 16:46, Tom Rini wrote:
On Tue, Nov 14, 2023 at 03:18:02PM +0000, Caleb Connolly wrote:
The execfile_() function in sphinx has been removed after being deprecated for some time. Follow what sphinx upstream does in [1] to avoid using this function. This fixes "make htmldocs" on at least Arch Linux but likely other distros too.
Hello Caleb,
Did you set up an environment as described in https://docs.u-boot.org/en/latest/build/documentation.html?
Or did you try to build with other versions of packages than those described in doc/sphinx/requirements.txt?
It would well make sense to rework our requirements as the Sphinx 3.4.3 we are using is getting dated.
Best regards
Heinrich
Signed-off-by: Caleb Connolly caleb.connolly@linaro.org
base-commit: 92b27528d777ce85362af45e7d2974a6c856219b
I think we should cherry-pick: commit 0283189e8f3d0917e2ac399688df85211f48447b Author: Jonathan Corbet corbet@lwn.net Date: Wed Jan 4 10:47:39 2023 -0700
docs: Fix the docs build with Sphinx 6.0
from the kernel, to keep the file in-sync. That's the only commit to load_config.py since I believe we synced last, but there might be other changes in Documentation/sphinx/ to grab as well.

On 14/11/2023 15:58, Heinrich Schuchardt wrote:
On 11/14/23 16:46, Tom Rini wrote:
On Tue, Nov 14, 2023 at 03:18:02PM +0000, Caleb Connolly wrote:
The execfile_() function in sphinx has been removed after being deprecated for some time. Follow what sphinx upstream does in [1] to avoid using this function. This fixes "make htmldocs" on at least Arch Linux but likely other distros too.
Hello Caleb,
Did you set up an environment as described in https://docs.u-boot.org/en/latest/build/documentation.html?
No, I used the version of the sphinx library included in my distribution... Certainly this would have been a good place to check ><
Or did you try to build with other versions of packages than those described in doc/sphinx/requirements.txt?
It would well make sense to rework our requirements as the Sphinx 3.4.3 we are using is getting dated.
Best regards
Heinrich
Signed-off-by: Caleb Connolly caleb.connolly@linaro.org
base-commit: 92b27528d777ce85362af45e7d2974a6c856219b
I think we should cherry-pick: commit 0283189e8f3d0917e2ac399688df85211f48447b Author: Jonathan Corbet corbet@lwn.net Date: Wed Jan 4 10:47:39 2023 -0700
docs: Fix the docs build with Sphinx 6.0
from the kernel, to keep the file in-sync. That's the only commit to load_config.py since I believe we synced last, but there might be other changes in Documentation/sphinx/ to grab as well.
Ah, I wasn't aware that this was pulled from Linux, that makes a lot more sense then :)
participants (3)
-
Caleb Connolly
-
Heinrich Schuchardt
-
Tom Rini