Compilation of GRASS Addons fails on Github, making the addons and online manual pages unavailable for a few days now (not sure when it started).
I see in the logs like https://grass.osgeo.org/addons/grass8/logs/i.segment.gsoc.log that it is in utils/mkdocs.py that gs.Popen fails, because gs is assigned to None while compiling. The blame shows its been there for 2years. What’s changed is how it determines if it is remote or no, and that’s last month in build: Avoid network access during doc generation for local builds (#… · OSGeo/grass@951be1f · GitHub, PR build: Avoid network access during doc generation for local builds by wenzeslaus · Pull Request #7310 · OSGeo/grass · GitHub
@wenzeslaus Would you mind taking a look? Maybe it’s something because of the server setup that wasn’t what was assumed when adapting the mkdocs.py script.
I was able to successfully reproduce this locally with cron_grass_preview_build_binaries.sh script file.
This PR changes is not correctly handled, when addon is manually compiled (SOURCE_URL is used)
GRASS Python script module gs is not available inside mkhtml or mkmarkdown Py module, because PYTHONPATH is not setted by this commands inside Html.make):
Part of compilation db.join addon log:
VERSION_NUMBER=8.6.0dev VERSION_DATE=2026 MODULE_TOPDIR=/tmp/tomas/src/main/dist.x86_64-pc-linux-gnu/
python3 /tmp/tomas/src/main/dist.x86_64-pc-linux-gnu/utils/mkmarkdown.py db.join > /tmp/tomas/.grass8/addons/db.join/docs/md/source/db.join.md
VERSION_NUMBER=8.6.0dev VERSION_DATE=2026 MODULE_TOPDIR=/tmp/tomas/src/main/dist.x86_64-pc-linux-gnu/
python3 /tmp/tomas/src/main/dist.x86_64-pc-linux-gnu/utils/mkhtml.py db.join > /tmp/tomas/.grass8/addons/db.join/docs/html/db.join.html
Main difference is that compilation script cron_grass_preview_build_binaries.sh use Make instead of CMake.