[IPython-dev] Request: IPython.ext namespace
Thu Oct 25 14:49:03 CDT 2012
All modules can already be extensions or contain extensions. Any
importable module that has a `load_ipython_extension(ip)` function is a
An excellent example of this is sympyprinting, which was recently moved out
It is now loaded as:
This is just a regular Python module that is a part of sympy. There is
nothing extra to install.
So I would say that this is already a solved problem, and there is no
reason to deal with a special namespace.
On Thu, Oct 25, 2012 at 12:28 PM, Takafumi Arakaki <email@example.com>wrote:
> I think IPython should provide namespace for IPython extensions, so
> that extension authors can upload their extensions to PyPI. I don't
> care about what the actual name is (probably it can be ipythonext,
> IPythonContrib, IPython.extensions, or what ever). It is something
> what Sphinx does for "sphinxcontrib.*" namespace. I can think of many
> reasons why it is better for IPython extension users and authors:
> 1. When you want to use external Python module in your extension,
> currently there is no easy way to install it. If you can upload
> your extension as `IPython.ext.YOUREXT`, it can be easily solved.
> 2. Similarity, you can depends on other IPython extensions. Currently
> there is no easy way to import other IPython extensions.
> 3. It does not stop people using `%install_ext`. If your extension is
> just one file, you can just do::
> 4. You get IPython extension search engine for free. People can just do::
> pip search IPython.ext
> Try ``pip search sphinxcontrib``, for example.
> 5. It helps people avoiding namespace collision. Currently there is
> no easy way to make sure if other people not using some name.
> Sure, you can google it, but you can't be 100% sure.
> 6. IPython don't need to create any machinery for this. All you need
> to do is to put some notice in the documentation for extension
> To be fair, I will try to think the reasons why you should not do this:
> 1. It may drive lazy people away from writing it. "Oh, I need setup.py
> for IPython extension? No... I won't upload it hen."
> (But you don't need to upload your extension to pypi, if your
> extension is just one file.)
> 2. It increases the amount and complexity of documentation you need to
> maintain. You need to explain: "You can install extensions using
> `pip` (or `easy_install`, if you want). Oh, you can use
> `%install_ext` magic by the way. But it cannot be used for some
> packages blah blah blah...".
> BTW, should I post something like this in ML or github issue? As
> there was old discussion in this ML _, I am posting it here.
> .. 
> Takafumi Arakaki
> IPython-dev mailing list
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the IPython-dev