[IPython-dev] Extensions: decisions on loading them and API (thoughts from R. Kern's branch)
ellisonbg.net at gmail.com
Mon Mar 16 21:47:09 EDT 2009
> There's a good chance this
> summer we may get some funding to support Brian doing some serious
> refactoring of the core, and now is the time to get all our APIs in
> But I'd rather face up to my mistake
> now, fix things and endure a minor API breakage, than live with these
> problematic decisions for the long haul now that we are all using that
> codebase for the core and that all the code developed in ip1 is
> building on top of it as its foundation.
As Fernando has eluded to, it looks like I may have some funding to
work on a refactor of the ipython core this summer. I am very excited
to finally get a chance to wrestle the beast into submission.
If I can make a broad generalization, currently, the fantastic part of
IPython is its features, not its developer API. If everything goes as
planned this summer my goal will be to 1) maintain or improve
IPython's feature set while 2) fixing the underlying API and design.
Another way of saying this is that the user's experience will be the
same or better, but a developer's experience will be *completely
different*. This will unavoidably mean API breakage. Where
appropriate deprecation warnings will be used, but in many cases, the
API will change so significantly that even deprecations warnings won't
be possible. I will also try to do things in place and incrementally.
I will consult with the list extensively about design decisions and
hopefully as things move forward, others will be interested in helping
out. After 0.10 is released, I will post to the list some more
details about my near future plans.
More information about the IPython-dev