-
Notifications
You must be signed in to change notification settings - Fork 2.5k
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
support vscode-jupyter extension #9867
Comments
Hi @tianhaoyang. I'll have to disappoint you there, the new Notebook API is not supported by Theia. As it's quite large - I looked into it a few weeks ago while it was still in a proposal state - with around 30k LOC, I don't expect Theia to support it in the near future. Regarding support for it, while a lot of stuff can be simply copied from vscode's repo, the whole rendering and glue code will have to be rewritten to accommodate Theia's architecture. That'll be quite a large undertaking. Though, I won't stop anyone from trying it ;) |
Please also note that it is possible that |
@msujew @vince-fugnitto Thank you for your response. If you have any updates on this issue, please notify me. BTW, |
@tianhaoyang Not really tips, just general differences between Theia and vscode. Generally, I don't think it's too difficult to rewrite, but just a rather long process due to the amount of code:
|
@msujew there used to be a jupyter plugin that was based on a custom editor. I was under the impression that they basically moved that inside the VS Code base. Maybe that is an easier starting point? |
@tsmaeder Mostly, yes. AFAIK previous versions of the jupyter extensions used a custom editor, which used the normal custom editor API. The basic architecture (notebooks, notebook serialization, notebook rendering) is quite similiar between the internals of the old jupyter extension and the new vscode native implementation. Nevertheless, the native implementation is way faster (beside having a better UI). So I can imagine they changed quite a lot. The old custom editor based jupyter extension is working btw inside Theia (although not flawlessly) see the python extension 2020.10 version. |
The ms-python extension declares an "extensionPack" with the ms-toolsai/jupyter extension. This extensions than declares an extension pack like so:
|
the |
|
|
|
As mentioned in #12442 (comment) etc., in order to use python notebooks in a way we consider reasonable for a MVP would require us to
|
Note that the jupyter extension uses a largish list of "proposed" apis:
but unless we analyze the use of those API's in the extensions source code, it's hard to judge which ones need a real implementation until we can actually run jupyter notebooks. For that, we'll need the above list of features. |
We have implemented a bunch of the proposed APIs in the recent months and the vscode-jupyter extension is now running fairly stable. Closing the issue. |
Currently theia supports vscode-python extension, which is a basic notebook-like python execution UI. However, a brand-new jupyter extension vscode-jupyter has been released recently, which is much more powerful and user-friendly. Can theia support this?
The text was updated successfully, but these errors were encountered: