Skip to content

[ZEPPELIN-6632] Pass the ipynb extension without a leading dot when exporting a note - #5515

Merged
tbonelee merged 1 commit into
apache:masterfrom
dev-donghwan:ZEPPELIN-6632
Oct 2, 2026
Merged

tbonelee merged 1 commit into
apache:masterfrom
dev-donghwan:ZEPPELIN-6632

Conversation

@dev-donghwan

Copy link
Copy Markdown
Contributor

What is this PR for?

Exporting a note to ipynb from the classic UI downloads a file with two dots before the extension, e.g. test sh..ipynb.

saveAsService.saveAs() joins the file name and the extension with a dot itself, and every other call site passes the extension without one ('zpln', 'csv', 'tsv'), as does the New UI's SaveAsService. The ipynb call site passes '.ipynb'.

ZEPPELIN-4823 meant to produce {note_name}.ipynb and replaced 'zepl.ipynb' with '.ipynb', but saveAs() already added the dot at that time, so the result became {note_name}..ipynb.

This passes 'ipynb', so the call site follows the same convention as the others.

What type of PR is it?

Bug Fix

What is the Jira issue?

How should this be tested?

websocket-event.factory.test.js now replaces saveAsService with a spy and checks that a CONVERTED_NOTE_NBFORMAT message saves with 'ipynb'. The test fails with the previous '.ipynb' argument.

I also checked the resulting download name with the real saveAsService by capturing the anchor's download attribute: test sh..ipynb before the change, test sh.ipynb after.

  • zeppelin-web karma suite: 194 tests pass

@tbonelee
tbonelee merged commit 18aaa28 into apache:master Oct 2, 2026
23 of 24 checks passed
@tbonelee

tbonelee commented Oct 2, 2026

Copy link
Copy Markdown
Contributor

Merged into master

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants