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
switch to IPython v3 protocol, require IPython 3.0 or later #325
Conversation
By the way, one thing that was unclear to me in the protocol spec was what messages to send if there is an exception thrown from the |
I'm not sure anymore but that's because one of the channel is REQ/REP (so you need to REP or you block the rest) and the other is PUB/SUB for when you have many clients connected that "monitor" what is hapening. |
One argument against doing this now is that Ubuntu is apparently still shipping IPython 2.3. Is that a concern for us? |
@stevengj a request should always produce a reply that is a concise indicator of success or failure. The IOPub channel handles the messages that produce rich representations of output. The result is there's a little redundancy in the @Carreau it is not REQ/REP, but DEALER/ROUTER, so the lock-step is not strictly enforced. The conclusion is correct, though. |
Do we want to note that somewhere to simplify msgspec v6 (if v6 is here one day) |
@Carreau it's probably a good idea to keep a long-running note of things we don't like / may change in the msg spec. Probably an Issue on jupyter_client is good enough (I again regret not calling that repo jupyter_protocol), if you want to open it. |
Rebased. |
Updated the README and the I guess this means that the IPython qtconsole and console front-ends are no longer supported from Julia, since we no longer have a profile. But I don't think anyone was using these...? |
it could be nice to "revive" them, and we can perfectly update to use the new kernel architecture. |
It's nice to have them as long as they can use the new kernel architecture; I don't want to go back to maintaining a separate profile. |
Ah, great, |
It gives an error because we aren't including a
The messaging spec says that the payload in the |
Awesome ! If you are on recent enough, I guest you can even |
Same thing in
|
To any question "is it a bug in qtconsole" the answer is most likely "yes", as none of us use it. |
I'll open issues on both. |
195d68f
to
1e0358b
Compare
(It would be nice to have a Travis test suite for IJulia. How does IPython do its testing?) |
For the browser/notebook stuff? We use casper+phantomjs for browser tests, but aren't happy with it, largely due the phantom 1.9 being pinned to the ancient WebKit in Qt4. Phantom 2 is based on Qt5, which may alleviate some of the issues (until Qt5 WebKit becomes outdated). |
@minrk, how do you test the IPython kernel? Presumably this can be done in a front-end-independent fashion; we'll leave the browser testing to you. |
Ah, we have some tests that use jupyter_client to exercise the kernel. We have started a project called jupyter_kernel_test, which is meant to make it easier to do similar exercises for other Jupyter kernels. It's brand new, though. We'd love feedback. |
@minrk, looks like what we would want, except that it requires bleeding-edge versions of everything. (I have IPython 3.2, and that's not good enough even if I install all of the other Jupyter modules from git, because the kernel test relies on ipython/ipython#8214.) This means that we probably can't use it for automated testing for quite some time, unfortunately. |
Well 4.x should be released soonish. Let's how many kernels authors are at SciPy and if we can polis that. |
@stevengj I expect we should have the relevant pieces out within a week or so. I don't think we should make the test tool require IPython, so I will look into why that's happening now. |
@stevengj the IPython.paths reliance was a mistake, and shouldn't be in there much longer. |
Thanks @minrk! It might be nice to allow the full path of the kernel spec file to be specified, so that you could test a kernel without actually installing it. |
That's a good idea. Want to open an issue for that on the test repo? |
I've made an |
switch to IPython v3 protocol, require IPython 3.0 or later
👍 |
It seems like the time is ripe to switch completely to IPython 3. This means that IPython 2 is no longer supported.
cc: @shashi, @Carreau, @minrk