Skip to content
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

Respond by rebuilding just the modified file(s) #146

Closed
smontanaro opened this issue Jan 31, 2024 · 2 comments
Closed

Respond by rebuilding just the modified file(s) #146

smontanaro opened this issue Jan 31, 2024 · 2 comments

Comments

@smontanaro
Copy link

This might be related to #118, not sure. I don't really know how sphinx-autobuild works at the low level. Let me describe my scenario and someone more knowledgeable can decide.

I'm trying to help reduce dangling references in the main Python docs. I run make htmllive in the Doc directory and it does its thing. I can view the file I'm working on to see my changes in near realtime. As I work on a particular .rst file, it would be nice if, whenever I saved it, sphinx only reprocessed that one file. I'm running sphinx in nitpicky mode, and it appears to reprocess all files under the Doc directory, spewing thousands of nitpick warnings. Consequently, I can't easily see if the changes I've made to that one file have had a positive effect on the number of warnings for that file. That extra reprocessing seems to also make it take much longer for the generated HTML file to be available for viewing through the web.

@aeisenbarth
Copy link

Just to put it into perspective: I have a project where a full documentation build takes 30 minutes!

When automated rebuilding is triggered by incremental changes, it does not scale unless it rebuilds only the incremental changes.

  • [DANGER ZONE] Yes, I am aware that a partial build may be inconsistent. I know what I do.

Big projects would benefit a lot from shorter feedback cycles. As a work-around, I have to add the desired file paths into conf.py include_patterns or edit all toctrees and remove all links that are not relevant for what I am currently working on.

@AA-Turner
Copy link
Member

This is the default (incremental builds not working in Python is a different issue due to last_updated_time)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants