-
Notifications
You must be signed in to change notification settings - Fork 58
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement merge_domaindata() on Zeek domain to support parallel builds #126
Conversation
@timwoj - this doesn't seem to have much of an effect on the github action timings. Do you see a difference in runtime locally? |
On macOS I get the following warning. It's maybe 5 seconds faster on your branch, but that's probably just that it had cached part of it in RAM on the second run.
On Linux, it's wildly faster. |
The OSX piece is sad. It seems to have been fixed with Sphinx 4.4 though: sphinx-doc/sphinx#6881 (comment)
Yep, it doesn't seem I wonder if caching the build dir could be an alternative, but not sure how safe/reliable that works. |
I installed a newer version of sphinx into a virtualenv on macOS here and can confirm that it seems they fixed parallel builds on here now. This is what I have in requirements.txt now:
docutils didn't get installed at all. jinja2 3.1.2 and pygments 2.12.0 got automatically installed. It seems that the newer version of Sphinx also fixed whatever conflict they were having with the newer version of jinja2. I was also able to bump the sphinx_rtd_theme package up to the latest version. |
e2378b6
to
3c302fa
Compare
After writing some documentation and building it quite regularly and being annoyed about the lengthy process, I included the version updates and cleaned up the
It installed for me as Should we merge this and see if something breaks? 🤷♂️ |
Sounds good to me. I scrolled through the changes as well and it looks like mostly upgrades to how Sphinx generates both the CSS and the JS that drive the site. I don't think there's anything significant with regards to the docs themselves here. I was curious if RTD had any problem with the new python modules, but I doubt it will. I triggered a build off it just in case: https://docs.zeek.org/en/topic-awelzel-parallel-doc-build/. The only thing I can't figure out is how to tell RTD to pass the
|
Only the resulting environment.pickle file appears different. $ diff -ru ./single-proc-html/ ./build/html/ Binary files ./single-proc-html/.doctrees/environment.pickle and ./build/html/.doctrees/environment.pickle differ $ Closes #122.
Diffing the HTML files shows much whitespace different and some changes in classes/css files. Smoke checking the produced HTML, nothing stood out as broken, so lets see if we can just move this forward.
00e13f7
to
5eb57c0
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can look at the RTD thing separately.
Only the resulting environment.pickle file appears different.
I am not quite sure incremental updates will work right,
but this may be a start.
Changes build time locally from 8m 40s to 2m 50s.
Closes #122, maybe.