Skip to content

feat: make page build stable against existence of submodules - #662

Open
jo-mueller wants to merge 1 commit into
mainfrom
escape-submodules
Open

jo-mueller wants to merge 1 commit into
mainfrom
escape-submodules

Conversation

@jo-mueller

Copy link
Copy Markdown
Contributor

Fixes #625

Relevant for #659

This PR adds a small escape hatch that makes the page build work, even if the specification submodules have not been checked out. This way, a fresh clone of the page should build correctly, even if it's without the rendered specification texts.

@jo-mueller jo-mueller added the bug Something isn't working label Nov 10, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Automated Review URLs

@jo-mueller jo-mueller mentioned this pull request Nov 10, 2026
@jo-mueller
jo-mueller requested review from lubianat and a balanced review from Copilot November 10, 2026 13:32

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

No active review issues are reported for the empty specification directory handling and temporary-directory ignore correction.

No open issues 🎉

What changed in this PR

Makes local website builds more tolerant of unchecked-out specification submodules, supporting non-specification contributors working from a fresh clone.

Changes:

  • Skip empty specification directories with a warning instead of attempting to locate their build scripts.
  • Correct the ignored temporary directory name to _temp_ngff_spec/.
File Description
conf.py Adds a warning and skips specification builds for empty submodule directories.
.gitignore Updates the temporary specification directory ignore entry.

Review effort: Balanced

@lubianat lubianat left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just that small comment, otherwise LGTM

Comment thread conf.py Resolved
@lubianat
lubianat requested a review from clbarnes November 10, 2026 17:14
@clbarnes

Copy link
Copy Markdown
Contributor

The build process spits out an enormous amount of text on a successful build; useful output like this may get lost easily. Building without submodules is practically never what you want to do, so I'd be concerned that this could be a source of silent (well, easily missed) unexpected behaviour. As an alternative, what about immediately quitting the build process with a an informative error like "submodule missing: run git submodule init --recursive --checkout --whatever-options-it-actually-is --what-even-is-git" so that it's obvious what's happened and the step to fix it is the last message on the terminal?

@jo-mueller

Copy link
Copy Markdown
Contributor Author

@clbarnes Check out #664, which effectively bakes the git submodule command directly into the build process. I agree on the amount of text produced, unfortunately most of that originate from jsonschema-for-humans when rendering the schema documents so it's not in our control 🙄

With #664 I'd lean into turning this warning into a real error because if the submdolue init is part of the build and the submodules still don't exist, something really went wrong. This PR just makes the build robust against the non-existence of the submodules - for a lot of the work on the page you don't really need them, anyway

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

git submodule error could use a better message

4 participants