Skip to content

Conversation

@jacobtomlinson
Copy link
Contributor

Follow on to #11003

This PR attempts to make multiple concurrent docs builds threadsafe. The main problem is that some jupyter-execute sections create, read and delete files. When run concurrently there can be collisions.

To resolve this I added some hidden cells which ensure files are created in unique tempdirs. This also has the added benefit of not littering your workdir with these files in the case of a docs build failure.

I also enabled parallel builds in sphinx-llm again because there should be no more collisions.

I've run the build multiple times locally and have not observed a collision so hopefully I got them all.

@jacobtomlinson
Copy link
Contributor Author

Hmm collision happened in CI, must've missed one. Will pick this up next week.

@jacobtomlinson jacobtomlinson marked this pull request as draft December 12, 2025 17:06
@jacobtomlinson
Copy link
Contributor Author

jacobtomlinson commented Dec 16, 2025

Ok, I think that's all of them. I've run the pixi run doc-clean job in a loop on my laptop for a few hours again today and haven't seen a collision there. CI seems happy now.

This is ready for review @max-sixty @dcherian

@jacobtomlinson jacobtomlinson marked this pull request as ready for review December 16, 2025 17:29
@dcherian dcherian enabled auto-merge (squash) January 2, 2026 15:36
The jupyter-execute directive content was using 3-space indentation
instead of the standard 4-space indentation, which caused Sphinx
warnings and failed the RTD build (fail_on_warning: true).

Co-authored-by: Claude <[email protected]>
@dcherian dcherian merged commit 8d271fb into pydata:main Jan 2, 2026
39 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants