##// END OF EJS Templates
Merging upstream changes.
Merging upstream changes.

File last commit:

r2190:0aa27c46
r2196:d3413944 merge
Show More
reorg.txt
94 lines | 3.1 KiB | text/plain | TextLexer
Brian Granger
Created doc describing the module reorganization.
r1798 =============================
IPython module reorganization
Brian Granger
Removing .hgignore.
r2190 =============================
Brian Granger
Created doc describing the module reorganization.
r1798
Brian Granger
Added compatibility layer for Shell/ipapi/iplib....
r2061 Currently, IPython has many top-level modules that serve many different
purposes. The lack of organization make it very difficult for developers to
work on IPython and understand its design. This document contains notes about
how we will reorganize the modules into sub-packages.
Brian Granger
Created doc describing the module reorganization.
r1798
.. warning::
This effort will possibly break third party packages that use IPython as
a library or hack on the IPython internals.
.. warning::
This effort will result in the removal from IPython of certain modules
that are not used anymore, don't currently work, are unmaintained, etc.
Brian Granger
Minor edits to reorg.txt.
r1907
Brian Granger
Created doc describing the module reorganization.
r1798 Current subpackges
==================
IPython currently has the following sub-packages:
* :mod:`IPython.config`
Brian Granger
Minor fixes to setupexe.py and reorg.txt.
r2065 * :mod:`IPython.Extensions`
Brian Granger
Created doc describing the module reorganization.
r1798
* :mod:`IPython.external`
* :mod:`IPython.frontend`
* :mod:`IPython.gui`
* :mod:`IPython.kernel`
* :mod:`IPython.testing`
* :mod:`IPython.tests`
* :mod:`IPython.tools`
* :mod:`IPython.UserConfig`
New Subpackages to be created
=============================
We propose to create the following new sub-packages:
* :mod:`IPython.core`. This sub-package will contain the core of the IPython
interpreter, but none of its extended capabilities.
* :mod:`IPython.lib`. IPython has many extended capabilities that are not part
Brian Granger
Minor fixes to setupexe.py and reorg.txt.
r2065 of the IPython core. These things will go here.
Brian Granger
Created doc describing the module reorganization.
r1798
Brian Granger
Updates to reorg.txt.
r2008 * :mod:`IPython.utils`. This sub-package will contain anything that might
Brian Granger
Minor edits to reorg.txt.
r1907 eventually be found in the Python standard library, like things in
Brian Granger
Created new sub-packages.
r2009 :mod:`genutils`. Each sub-module in this sub-package should contain
functions and classes that serve a single purpose.
Brian Granger
Created doc describing the module reorganization.
r1798
Brian Granger
Updates to reorg.txt.
r2008 * :mod:`IPython.deathrow`. This is for code that is untested and/or rotting
and needs to be removed from IPython. Eventually all this code will either
i) be revived by someone willing to maintain it with tests and docs and
Brian Granger
Minor edits to reorg.txt.
r2006 re-included into IPython or 2) be removed from IPython proper, but put into
Brian Granger
Updates to reorg.txt.
r2008 a separate top-level (not IPython) package that we keep around. No new code
will be allowed here.
* :mod:`IPython.quarantine`. This is for code that doesn't meet IPython's
standards, but that we plan on keeping. To be moved out of this sub-package
a module needs to have a maintainer, tests and documentation.
Brian Granger
Created doc describing the module reorganization.
r1798
Brian Granger
Minor fixes to setupexe.py and reorg.txt.
r2065 Procedure
Brian Granger
ColorANSI.py -> utils/coloransi.py and all imports updated.
r2010 =========
1. Move the file to its new location with its new name.
2. Rename all import statements to reflect the change.
3. Run PyFlakes on each changes module.
3. Add tests/test_imports.py to test it.
Brian Granger
Added compatibility layer for Shell/ipapi/iplib....
r2061 Status
======
The new subpackages have been created and the top-level modules have been
moved and renamed. Import tests have been created for all of the moved and
renamed modules. The build infrastructure (setup.py and friends) have been
updated and tested on Mac and Windows. Finally, a compatibility layer has been
added for iplib, ipapi and Shell. The follow things still need to be done::
* I need to modify iptests to properly skip modules that are no longer top
level modules.
Brian Granger
ColorANSI.py -> utils/coloransi.py and all imports updated.
r2010
Brian Granger
Added compatibility layer for Shell/ipapi/iplib....
r2061 * When running python setup.py sdist, the Sphinx API docs fail to build
because of something going on with IPython.core.fakemodule