@@ -15,8 +15,8 @@ What's new
1515 1.4.2 Bug fixes
1616 1.4.3 Backwards incompatible changes
1717 2 Release 0.8.4
18- 3 Release 0.8.2
19- 4 Release 0.8.3
18+ 3 Release 0.8.3
19+ 4 Release 0.8.2
2020 5 Older releases
2121..
2222
@@ -68,80 +68,84 @@ New features
6868 be run using the :command:`iptest` command line program.
6969
7070* The notion of a task has been completely reworked. An `ITask` interface has
71- been created. This interface defines the methods that tasks need to implement.
72- These methods are now responsible for things like submitting tasks and processing
73- results. There are two basic task types: :class:`IPython.kernel.task.StringTask`
74- (this is the old `Task` object, but renamed) and the new
75- :class:`IPython.kernel.task.MapTask`, which is based on a function.
71+ been created. This interface defines the methods that tasks need to
72+ implement. These methods are now responsible for things like submitting
73+ tasks and processing results. There are two basic task types:
74+ :class:`IPython.kernel.task.StringTask` (this is the old `Task` object, but
75+ renamed) and the new :class:`IPython.kernel.task.MapTask`, which is based on
76+ a function.
7677
7778* A new interface, :class:`IPython.kernel.mapper.IMapper` has been defined to
78- standardize the idea of a `map` method. This interface has a single
79- `map` method that has the same syntax as the built-in `map`. We have also defined
79+ standardize the idea of a `map` method. This interface has a single `map`
80+ method that has the same syntax as the built-in `map`. We have also defined
8081 a `mapper` factory interface that creates objects that implement
81- :class:`IPython.kernel.mapper.IMapper` for different controllers. Both
82- the multiengine and task controller now have mapping capabilties.
82+ :class:`IPython.kernel.mapper.IMapper` for different controllers. Both the
83+ multiengine and task controller now have mapping capabilties.
8384
84- * The parallel function capabilities have been reworks. The major changes are that
85- i) there is now an `@parallel` magic that creates parallel functions, ii)
86- the syntax for mulitple variable follows that of `map`, iii) both the
85+ * The parallel function capabilities have been reworks. The major changes are
86+ that i) there is now an `@parallel` magic that creates parallel functions,
87+ ii) the syntax for mulitple variable follows that of `map`, iii) both the
8788 multiengine and task controller now have a parallel function implementation.
8889
89- * All of the parallel computing capabilities from `ipython1-dev` have been merged into
90- IPython proper. This resulted in the following new subpackages:
90+ * All of the parallel computing capabilities from `ipython1-dev` have been
91+ merged into IPython proper. This resulted in the following new subpackages:
9192 :mod:`IPython.kernel`, :mod:`IPython.kernel.core`, :mod:`IPython.config`,
9293 :mod:`IPython.tools` and :mod:`IPython.testing`.
9394
94- * As part of merging in the `ipython1-dev` stuff, the `setup.py` script and friends
95- have been completely refactored. Now we are checking for dependencies using
96- the approach that matplotlib uses.
95+ * As part of merging in the `ipython1-dev` stuff, the `setup.py` script and
96+ friends have been completely refactored. Now we are checking for
97+ dependencies using the approach that matplotlib uses.
9798
9899* The documentation has been completely reorganized to accept the documentation
99100 from `ipython1-dev`.
100101
101102* We have switched to using Foolscap for all of our network protocols in
102- :mod:`IPython.kernel`. This gives us secure connections that are both encrypted
103- and authenticated.
103+ :mod:`IPython.kernel`. This gives us secure connections that are both
104+ encrypted and authenticated.
104105
105106* We have a brand new `COPYING.txt` files that describes the IPython license
106107 and copyright. The biggest change is that we are putting "The IPython
107- Development Team" as the copyright holder. We give more details about exactly
108- what this means in this file. All developer should read this and use the new
109- banner in all IPython source code files.
108+ Development Team" as the copyright holder. We give more details about
109+ exactly what this means in this file. All developer should read this and use
110+ the new banner in all IPython source code files.
110111
111112* sh profile: ./foo runs foo as system command, no need to do !./foo anymore
112113
113- * String lists now support ' sort(field, nums = True)' method (to easily
114- sort system command output). Try it with ' a = !ls -l ; a.sort(1, nums=1)'
114+ * String lists now support `` sort(field, nums = True)`` method (to easily sort
115+ system command output). Try it with `` a = !ls -l ; a.sort(1, nums=1)``.
115116
116117* '%cpaste foo' now assigns the pasted block as string list, instead of string
117118
118- * The ipcluster script now run by default with no security. This is done because
119- the main usage of the script is for starting things on localhost. Eventually
120- when ipcluster is able to start things on other hosts, we will put security
121- back.
119+ * The ipcluster script now run by default with no security. This is done
120+ because the main usage of the script is for starting things on localhost.
121+ Eventually when ipcluster is able to start things on other hosts, we will put
122+ security back.
122123
123124* 'cd --foo' searches directory history for string foo, and jumps to that dir.
124125 Last part of dir name is checked first. If no matches for that are found,
125126 look at the whole path.
126127
128+
127129Bug fixes
128130---------
129131
130132* The Windows installer has been fixed. Now all IPython scripts have ``.bat``
131133 versions created. Also, the Start Menu shortcuts have been updated.
132134
133- * The colors escapes in the multiengine client are now turned off on win32 as they
134- don't print correctly.
135+ * The colors escapes in the multiengine client are now turned off on win32 as
136+ they don't print correctly.
135137
136- * The :mod:`IPython.kernel.scripts.ipengine` script was exec'ing mpi_import_statement
137- incorrectly, which was leading the engine to crash when mpi was enabled.
138+ * The :mod:`IPython.kernel.scripts.ipengine` script was exec'ing
139+ mpi_import_statement incorrectly, which was leading the engine to crash when
140+ mpi was enabled.
138141
139- * A few subpackages has missing `__init__.py` files.
142+ * A few subpackages had missing `` __init__.py` ` files.
140143
141- * The documentation is only created if Sphinx is found. Previously, the `setup.py`
142- script would fail if it was missing.
144+ * The documentation is only created if Sphinx is found. Previously, the
145+ ``setup.py`` script would fail if it was missing.
143146
144- * Greedy 'cd' completion has been disabled again (it was enabled in 0.8.4)
147+ * Greedy ``cd`` completion has been disabled again (it was enabled in 0.8.4) as
148+ it caused problems on certain platforms.
145149
146150
147151Backwards incompatible changes
@@ -184,18 +188,18 @@ Backwards incompatible changes
184188 reflect the new Foolscap network protocol and the FURL files. Please see the
185189 help for these scripts for details.
186190
187- * The configuration files for the kernel have changed because of the Foolscap stuff.
188- If you were using custom config files before, you should delete them and regenerate
189- new ones.
191+ * The configuration files for the kernel have changed because of the Foolscap
192+ stuff. If you were using custom config files before, you should delete them
193+ and regenerate new ones.
190194
191195Changes merged in from IPython1
192196-------------------------------
193197
194198New features
195199............
196200
197- * Much improved ``setup.py`` and ``setupegg.py`` scripts. Because Twisted
198- and zope.interface are now easy installable, we can declare them as dependencies
201+ * Much improved ``setup.py`` and ``setupegg.py`` scripts. Because Twisted and
202+ zope.interface are now easy installable, we can declare them as dependencies
199203 in our setupegg.py script.
200204
201205* IPython is now compatible with Twisted 2.5.0 and 8.x.
@@ -222,7 +226,8 @@ New features
222226 :func:`blockingCallFromThread` function that is in recent versions of Twisted.
223227
224228* Functions can now be pushed/pulled to/from engines using
225- :meth:`MultiEngineClient.push_function` and :meth:`MultiEngineClient.pull_function`.
229+ :meth:`MultiEngineClient.push_function` and
230+ :meth:`MultiEngineClient.pull_function`.
226231
227232* Gather/scatter are now implemented in the client to reduce the work load
228233 of the controller and improve performance.
@@ -234,9 +239,9 @@ New features
234239
235240* New developer oriented documentation: development guidelines and roadmap.
236241
237- * Traditional ``ChangeLog`` has been changed to a more useful ``changes.txt`` file
238- that is organized by release and is meant to provide something more relevant
239- for users.
242+ * Traditional ``ChangeLog`` has been changed to a more useful ``changes.txt``
243+ file that is organized by release and is meant to provide something more
244+ relevant for users.
240245
241246Bug fixes
242247.........
@@ -261,53 +266,60 @@ Backwards incompatible changes
261266 convention. This will require users to change references to all names like
262267 ``queueStatus`` to ``queue_status``.
263268
264- * Previously, methods like :meth:`MultiEngineClient.push` and
265- :meth:`MultiEngineClient.push` used ``*args`` and ``**kwargs``. This was
269+ * Previously, methods like :meth:`MultiEngineClient.push` and
270+ :meth:`MultiEngineClient.push` used ``*args`` and ``**kwargs``. This was
266271 becoming a problem as we weren't able to introduce new keyword arguments into
267- the API. Now these methods simple take a dict or sequence. This has also allowed
268- us to get rid of the ``*All`` methods like :meth:`pushAll` and :meth:`pullAll`.
269- These things are now handled with the ``targets`` keyword argument that defaults
270- to ``'all'``.
272+ the API. Now these methods simple take a dict or sequence. This has also
273+ allowed us to get rid of the ``*All`` methods like :meth:`pushAll` and
274+ :meth:`pullAll`. These things are now handled with the ``targets`` keyword
275+ argument that defaults to ``'all'``.
271276
272277* The :attr:`MultiEngineClient.magicTargets` has been renamed to
273278 :attr:`MultiEngineClient.targets`.
274279
275- * All methods in the MultiEngine interface now accept the optional keyword argument
276- ``block``.
280+ * All methods in the MultiEngine interface now accept the optional keyword
281+ argument ``block``.
277282
278283* Renamed :class:`RemoteController` to :class:`MultiEngineClient` and
279284 :class:`TaskController` to :class:`TaskClient`.
280285
281286* Renamed the top-level module from :mod:`api` to :mod:`client`.
282287
283- * Most methods in the multiengine interface now raise a :exc:`CompositeError` exception
284- that wraps the user's exceptions, rather than just raising the raw user's exception.
288+ * Most methods in the multiengine interface now raise a :exc:`CompositeError`
289+ exception that wraps the user's exceptions, rather than just raising the raw
290+ user's exception.
285291
286292* Changed the ``setupNS`` and ``resultNames`` in the ``Task`` class to ``push``
287293 and ``pull``.
288294
295+
289296Release 0.8.4
290297=============
291298
292- Someone needs to describe what went into 0.8.4.
299+ This was a quick release to fix an unfortunate bug that slipped into the 0.8.3
300+ release. The ``--twisted`` option was disabled, as it turned out to be broken
301+ across several platforms.
293302
294- Release 0.8.2
295- =============
296303
297- * %pushd/%popd behave differently; now "pushd /foo" pushes CURRENT directory
298- and jumps to /foo. The current behaviour is closer to the documented
299- behaviour, and should not trip anyone.
300-
301304Release 0.8.3
302305=============
303306
304307* pydb is now disabled by default (due to %run -d problems). You can enable
305308 it by passing -pydb command line argument to IPython. Note that setting
306309 it in config file won't work.
307310
311+
312+ Release 0.8.2
313+ =============
314+
315+ * %pushd/%popd behave differently; now "pushd /foo" pushes CURRENT directory
316+ and jumps to /foo. The current behaviour is closer to the documented
317+ behaviour, and should not trip anyone.
318+
319+
308320Older releases
309321==============
310322
311- Changes in earlier releases of IPython are described in the older file ``ChangeLog``.
312- Please refer to this document for details.
323+ Changes in earlier releases of IPython are described in the older file
324+ ``ChangeLog``. Please refer to this document for details.
313325
0 commit comments