Minimal IPython in upcoming 2.2?

62 views
Skip to first unread message

anatoly techtonik

unread,
May 28, 2012, 4:22:14 AM5/28/12
to spyd...@googlegroups.com
Looking at weekend commits - am I right that in Spyder 2.2 the minimum supported IPython version will be 0.12?

Carlos Córdoba

unread,
May 28, 2012, 10:06:38 AM5/28/12
to spyd...@googlegroups.com
Yep. that's right Anatoly. IPython 0.10 is unmaintained so Pierre decided to drop it completely and move all our efforts to support 0.12.

Cheers,
Carlos

2012/5/28 anatoly techtonik <tech...@gmail.com>
Looking at weekend commits - am I right that in Spyder 2.2 the minimum supported IPython version will be 0.12?

--
You received this message because you are subscribed to the Google Groups "spyder" group.
To view this discussion on the web visit https://groups.google.com/d/msg/spyderlib/-/n5AD9NObEYMJ.
To post to this group, send email to spyd...@googlegroups.com.
To unsubscribe from this group, send email to spyderlib+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/spyderlib?hl=en.

Pierre Raybaut

unread,
May 28, 2012, 11:13:12 AM5/28/12
to spyder
IPython <0.12 support was dropped from default repository (Spyder v2.2
branch) since Issue 1059 was closed:
http://code.google.com/p/spyderlib/issues/detail?id=1059

We are making interesting progress since last week -- see for example
those issues:
http://code.google.com/p/spyderlib/issues/list?can=1&q=cat%3DIPythonConsole&colspec=ID+MS+Stars+Priority+Modified+Cat+Type+Status+Owner+Summary&cells=tiles

The ultimate goal is to implement a self-consistent IPython console
plugin which would handle both IPython clients and kernels (in the
meantime, the external console plugin will handle the kernels as it is
already doing in v21 branch):
http://code.google.com/p/spyderlib/issues/detail?id=1053

@Carlos: read carefully my last commits before continuing to play with
the new IPython console plugin and its client widgets...

Now I'm going to be offline for a few days, so see you next week guys!
(and happy testing/coding!)

Cheers,
Pierre

On 28 mai, 16:06, Carlos Córdoba <ccordob...@gmail.com> wrote:
> Yep. that's right Anatoly. IPython 0.10 is unmaintained so Pierre decided
> to drop it completely and move all our efforts to support 0.12.
>
> Cheers,
> Carlos
>
> 2012/5/28 anatoly techtonik <techto...@gmail.com>

Carlos Córdoba

unread,
May 28, 2012, 11:34:27 AM5/28/12
to spyd...@googlegroups.com
I think for now I'm gonna add more IPython options to our config page.
Very interesting stuff the mixin idea: with it we can share code between
our widgets and the ipython one. Awesome!

Hope to see you next week,
Carlos

El 28/05/12 10:13, Pierre Raybaut escribió:

anatoly techtonik

unread,
May 30, 2012, 9:41:36 AM5/30/12
to spyd...@googlegroups.com
Hi. Thanks for the heads up. I wondered why so many IPython references
are still in `external console` plugin if it is not going to handle
IPython. Now it is clear that `external console` will still handle
IPython to a some degree. Although it is not clear what for?

Perhaps an outline (a blog post perhaps?) about roles between IPython
kernels and clients in relation to Spyder IDE will make it more
interesting for developers out there.

P.S. I am actually not a fan of mixins - they are hard to reverse
tracing. You know - "debugging is twice as hard as writing the code in
the first place.', so unless there is clear distinction of roles in
derived classes, I'd think twice before using them. Mixin is like
"from blablabla import *" - it's useful sometimes, but not it not a
good idea in general case. =)
--
anatoly t.

Matt Anderson

unread,
May 30, 2012, 10:37:28 AM5/30/12
to spyd...@googlegroups.com
This may be conjecture on my part.  If Spyder can leverage the power of Ipython .012+, it will get a huge boost in usefulness for free.  I don't know how much explanation is necessary if you guys follow the Ipython project much, but the kernel model and the ZMQ communication protocol opens up almost endless possibilities.  Using Spyder interactively with Notebooks, development of front end/back end systems by attaching to already running kernels, debugging, are just a few of the things that seem simplified in my mind.  I probably don't understand it well enough to even come up with a good list.  I'm not saying that defining roles are a bad plan by any means, but don't lean toward dropping support until you fully understand what .012+ can do.

Carlos Córdoba

unread,
May 31, 2012, 12:16:12 AM5/31/12
to spyd...@googlegroups.com
@Anatoly: As Matt mentions, IPython architecture is based in a two process model. All code is ran in an external process called Kernel to which connect any number of clients which can have different interfaces. Right now there are only three: a web based one, a qt based one and a terminal one.

At Spyder we need to create the kernel through the external console so that the Variable Explorer and the Object Inspector keep working on this model (specifically because the Variable Explorer sends and requests objects in pickle format, something the kernel doesn't support natively). As Pierre mentioned before, this is a temporary step until we figure out how to communicate with the kernel directly. However this is a long term project because it doesn't seem an easy task right now

@Matt:It hasn't been an easy task to implement a more complete integration with ipython 0.12+ but our aim is to have the best one we can develop. Just a couple of minutes ago I pushed several configuration options for the clients and with them we have now a bit more powerful application than ipython's own qtconsole(!), because every client can be configured separately from each other.

Please try it out and tell me what you think.

Cheers,
Carlos

El 30/05/12 09:37, Matt Anderson escribió:
Reply all
Reply to author
Forward
0 new messages