==========================
* Support for MPI-3 features.
+ Matched probes and receives.
+ Nonblocking collectives.
+ Neighborhood collectives.
+ New communicator constructors.
+ Request-based RMA operations.
+ New RMA communication and synchronisation calls.
+ New window constructors.
+ New datatype constructor.
+ New C++ boolean and floating complex datatypes.
* Support for MPI-2 features not included in previous releases.
+ Generalized All-to-All collective (``Comm.Alltoallw()``)
+ User-defined data representations (``Register_datarep()``)
* New scalable implementation of reduction operations for Python
objects. This code is based on binomial tree algorithms using
point-to-point communication and duplicated communicator
contexts. To disable this feature, use
``mpi4py.rc.fast_reduce = False``.
* Backward-incompatible changes:
+ Python 2.4, 2.5, 3.0 and 3.1 are no longer supported.
+ Default MPI error handling policies are overridden. After import,
mpi4py sets the ``ERRORS_RETURN`` error handler in ``COMM_SELF``
and ``COMM_WORLD``, as well as any new ``Comm``, ``Win``, or
``File`` instance created through mpi4py, thus effectively
ignoring the MPI rules about error handler inheritance. This way,
MPI errors translate to Python exceptions. To disable this
behavior and use the standard MPI error handling rules, use
``mpi4py.rc.errors = 'default'``.
+ Change signature of all send methods,
``dest`` is a required argument.
+ Change signature of all receive and probe methods,
``source`` defaults to ``ANY_SOURCE``,
``tag`` defaults to ``ANY_TAG``.
+ Change signature of send lowercase-spelling methods,
``obj`` arguments are not mandatory.
+ Change signature of recv lowercase-spelling methods,
renamed 'obj' arguments to 'buf'.
+ Change ``Request.Waitsome()`` and ``Request.Testsome()``
to return ``None`` or ``list``.
+ Change signature of all lowercase-spelling collectives,
``sendobj`` arguments are now mandatory,
``recvobj`` arguments were removed.
+ Reduction operations ``MAXLOC`` and ``MINLOC`` are no longer
special-cased in lowercase-spelling methods ``Comm.[all]reduce()``
and ``Comm.[ex]scan()``, the input object must be specified as a
tuple ``(obj, location)``.
+ Change signature of name publishing functions.
The new signatures are
``Publish_name(service_name, port_name, info=INFO_NULL)`` and
``Unpublish_name(service_name, port_name, info=INFO_NULL).
+ ``Win`` instances now cache Python objects exposing memory by
keeping references instead of using MPI attribute caching.
+ Change signature of ``Win.Lock()``.
The new signature is
``Win.Lock(rank, lock_type=LOCK_EXCLUSIVE, assertion=0)``.
+ Move ``Cartcomm.Map()`` to ``Intracomm.Cart_map()``.
+ Move ``Graphcomm.Map()`` to ``Intracomm.Graph_map()``.
+ Remove the ``mpi4py.MPE`` module.
+ Rename the Cython definition file for use with ``cimport``
statement from ``mpi_c.pxd`` to ``libmpi.pxd``.