Skip to content

[ZEPPELIN-6391] Support Jupyter notebook imports in the new UI - #5598

Merged
voidmatcha merged 1 commit into
apache:masterfrom
miinhho:ZEPPELIN-6391-ipynb-import
Nov 8, 2026
Merged

voidmatcha merged 1 commit into
apache:masterfrom
miinhho:ZEPPELIN-6391-ipynb-import

Conversation

@miinhho

@miinhho miinhho commented Oct 30, 2026

Copy link
Copy Markdown
Contributor

What is this PR for?

The new UI rejects Jupyter notebooks because its import validation only accepts Zeppelin's paragraphs format. Its file picker also does not include .ipynb files.

This PR enables Jupyter notebook imports from local files and URLs using the existing server-side conversion. It extends the SDK import payload type, updates the import dialog, and adds regression tests.

An explicit Import As name takes precedence. Otherwise, existing server-side title and default-name handling is preserved.

What type of PR is it?

Improvement

Todos

  • - Support Jupyter input in the import dialog and SDK contract.
  • - Add regression tests and update the import modal locators.

What is the Jira issue?

https://issues.apache.org/jira/browse/ZEPPELIN-6391

How should this be tested?

From zeppelin-web-angular/, with frontend dependencies installed:

npm run test:shell -- src/app/share/note-import/note-import.component.spec.ts projects/zeppelin-sdk/src/interfaces/notebook-wire-fields.spec.ts
npm run typecheck:sdk-contracts

These checks cover input admission, naming precedence, rejection of invalid input, and the SDK payload contract. They do not exercise server-side conversion.

With a Zeppelin backend running at http://127.0.0.1:8080 and configured to allow the frontend origin http://localhost:4200, build the frontend libraries and run the existing import-modal browser checks:

npm run build:projects
npm run e2e:fast -- e2e/tests/share/note-import/note-import-modal.spec.ts

Screenshots

zeppelin-6391-note-import-modal

Questions:

  • Does the license files need to update? No.
  • Is there breaking changes for older versions? No.
  • Does this needs documentation? The import dialog is updated to describe both supported formats.

voidmatcha
voidmatcha previously approved these changes Nov 6, 2026

@voidmatcha voidmatcha left a comment •

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍
Could you rebase before merge?

@voidmatcha
voidmatcha merged commit ccfc7d3 into apache:master Nov 8, 2026
24 checks passed
@voidmatcha

Copy link
Copy Markdown
Member

Merged into master (ccfc7d3).

@miinhho
miinhho deleted the ZEPPELIN-6391-ipynb-import branch November 8, 2026 16:00
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