-
-
Notifications
You must be signed in to change notification settings - Fork 3.6k
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
PDF build fails on projects with multiple latex documents #8612
Comments
Hi! I think this is a duplicate of #2045. We currently don't support multiple PDF output. However, we are considering this use case in our new builders (see https://github.com/readthedocs/readthedocs.org/pull/8190/files#r638919502). We are still discussing its implementation and we don't have an ETA yet, unfortunately. Please, subscribe to #2045 to receive news about the progress on multiple PDF output files. |
Not really a duplicate in my opinion – this one is primarily about the build failure (which apparently didn’t occur yet in 2016 when #2045 was filed, probably because the But I’m fine with continuing the discussion in #2045. |
IMO, publishing just the first PDF documentation without failing the build would be unexpected behavior for many users as well. If the users is defining multiple PDF output, they would expect them all as output, and if we are not building/serving them, I'm fine failing the build to communicate this to users. The error message that Read the Docs presents to the user could be better, tho 😄 |
OK, good point. Thinking about it more thoroughly, what I’m objecting to is actually not marking the build as failed, but the failure to build and publish the main PDF. Right now we have:
What I would consider acceptable would be:
In other words, treating PDF the same as HTML. Assuming that HTML being published despite the failed build is intentional. But I don’t insist on it, I will just extend my |
This is interesting. IMO, we shouldn't publish the HTML if the build fails. However, I know we have discussed this in the past but I don't remember where we landed or where that discussion is. @ericholscher do you remember the reasons? |
@humitos Because HTML was being uploaded directly after it was built to increase the speed of publishing. I thought we'd reverted this, but if we haven't we should. I agree it shouldn't publish if the build doesn't pass. There is also the issue of the PDF builds failing even while producing valid output, but that's a different issue. |
It turns out the build failure with multiple latex_documents was not caused by the old Sphinx version but is a property of the RTD build process (readthedocs/readthedocs.org#8612).
Details
Steps to Reproduce
Have a
conf.py
that specifies multiplelatex_documents
, such as in the project above, or mentioned in https://stackoverflow.com/questions/60749429/can-i-build-multiple-pdfs-from-the-same-source-in-readthedocs:Expected Result
Actual Result
Build fails with
This appears to be because Read the Docs calls
latexmk
by itself without passing a .tex file name instead of using_build/latex/Makefile
which would do it correctly:readthedocs.org/readthedocs/doc_builder/backends/sphinx.py
Line 510 in 458ed61
Using the Makefile was discussed in #4454 but dismissed for reasons that are not entirely clear to me.
The text was updated successfully, but these errors were encountered: