Skip to content
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

Moving to use jupyter_client? #34

Open
ngr-t opened this issue Feb 19, 2018 · 6 comments
Open

Moving to use jupyter_client? #34

ngr-t opened this issue Feb 19, 2018 · 6 comments

Comments

@ngr-t
Copy link
Collaborator

ngr-t commented Feb 19, 2018

The jupyter team provides jupyter_client package, which is the reference implementation of the Jupyter protocol.
I'm considering to use this in Hermes.
jupyter_client requires many dependencies, so I think its better to run a server on other interpreter than Sublime's internal python.

It will require large change about connecting to server / kernels, but I think the code should be much cleaner, easier to maintain, reduce problems Hermes has now.
I'd appreciate your opinions, thanks.

@ngr-t ngr-t changed the title Moving 5 Moving Feb 19, 2018
@ngr-t ngr-t changed the title Moving Moving to use jupyter_client? Feb 19, 2018
@ngr-t
Copy link
Collaborator Author

ngr-t commented Feb 20, 2018

Now package control has dependencies function, but I found not all jupyter_client's requirement packages are provided (tornado is not). I think of going with the way of making an independent server running on interpreter other than Sublime's internal.

@ngr-t
Copy link
Collaborator Author

ngr-t commented Feb 20, 2018

Another way is to use only the part of the package we need to run Hermes.

@ngr-t
Copy link
Collaborator Author

ngr-t commented Apr 5, 2018

Recently I work on making Hermes to use jupyter_client. It looks working without tornado with a little modification.
The performance issues looks significantly improved by that and code will be much cleaner.

My main concern now:

  • It will change the way to connect kernels largely, though I feel it will get less confusing than ever.
  • The jupyter process spawned by the plugin will stop when the editor hangs up. Using connection file to existing process will be a workaround.
  • How to connect remote jupyter process? Maybe we can connect with the way like this.

I'm going to support connection file and I believe it will help us on the situation like connecting to remote kernel or a kernel already running.

@ngr-t
Copy link
Collaborator Author

ngr-t commented Jun 18, 2018

I've almost done with this, but have to deal with dependency issues.

@ngr-t
Copy link
Collaborator Author

ngr-t commented Jun 27, 2018

Close.

@ngr-t ngr-t closed this as completed Jun 27, 2018
@yaroslavyaroslav
Copy link
Collaborator

Tornado has added to dependencies. So this could be reconsidered.

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

No branches or pull requests

2 participants