Fix PDF export by passing filename without .pdf suffix to nbconvert #16651
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #16590
This PR resolves a long-standing issue where exporting a Jupyter notebook to PDF via the VS Code Jupyter extension fails, despite the PDF being correctly generated in the temporary directory. The extension was searching for an incorrect filename (either missing or duplicating the
.pdf
extension), leading to a file-not-found error and a failed export.Background and Motivation
nbconvert
).Root Cause
nbconvert
automatically appends a.pdf
extension to the output filename when the--output
parameter already includes it, resulting in a duplicate extension (e.g.,tmp-xxxx.pdf.pdf
).src/notebooks/export/exportBase.node.ts
, the code attempts to access a file with an incorrect name, failing to locate the generated file and incorrectly assuming the export has failed due to a file size of 0:What has been changed
.pdf
extensions by preventingnbconvert
from appending an extra suffix in the--output
parameter.Additional Context
Closes #16590