* Tue Mar 04 2025 Atri Bhattacharya <badshah400@gmail.com>
- Update to version 4.0.3:
* Fix DLPack v1.0 support.
- Changes from version 4.0.2:
* Support MPI-4 features within Intel MPI 2021.14.
* Various fixes and updates to tests.
* Minor fixes to typing support.
* Minor fix to documentation.
* Sun Dec 22 2024 Stefan Brüns <stefan.bruens@rwth-aachen.de>
- Fix packaging of header files, breaking VTK openmpi builds.
E.g. mpi4py.h requires the MPI_api.h in a specific relative
location.
* Fri Nov 22 2024 Ben Greiner <code@bnavigator.de>
- Update to 4.0.1
[#]# Update support for Python 3.13:
* Enable Cython 3.1 support for free-threaded CPython.
* Allow compiling Cython-generated C sources with the full Python
C-API.
* Fix MPI DLL path workarounds on Windows after changes to
locals().
[#]# Enhancements to test suite:
* Support XML reports via unittest-xml-reporting.
* Add command line options to exclude tests by patterns and
files.
* Refactor Python 2 code to use Python 3 constructs using
pyupgrade.
[#]# Miscellaneous:
* Minor and mostly inconsequential subclass fix in
mpi4py.util.pkl5.
* Update compatibility workarounds for legacy MPICH 3.0 release.
- Release 4.0.0
[#]# New features:
[#]## Add support for the MPI-4.0 standard.
* Use large count MPI-4 routines.
* Add persistent collective communication.
* Add partitioned point-to-point communication.
* Add new communicator constructors.
* Add the Session class and its methods.
[#]## Add support for the MPI-4.1 standard.
* Add non-destructive completion test for multiple requests.
* Add value-index datatype constructor.
* Add communicator/session buffer attach/detach/flush.
* Support for removal of error classes/codes/strings.
* Support for querying hardware resource information.
[#]## Add preliminary support for the upcoming MPI-5.0 standard.
* User-level failure mitigation (ULFM).
* mpi4py.util.pool: New drop-in replacement for
multiprocessing.pool.
* mpi4py.util.sync: New synchronization utilities.
* Add runtime check for mismatch between mpiexec and MPI library.
* Support scikit-build-core as an alternative build backend.
* Support meson-python as an alternative build backend.
[#]# Enhancements:
* mpi4py.futures: Support for parallel tasks.
* mpi4py.futures: Report exception tracebacks in workers.
* mpi4py.util.pkl5: Add support for collective communication.
* Add methods Datatype.fromcode(), Datatype.tocode() and
attributes Datatype.typestr, Datatype.typechar to simplify
NumPy interoperability for simple cases.
* Add methods Comm.Create_errhandler(), Win.Create_errhandler(),
and File.Create_errhandler() to create custom error handlers.
* Add support for pickle serialization of instances of MPI types.
All instances of Datatype, Info, and Status can be serialized.
Instances of Op can be serialized only if created through
mpi4py by calling Op.Create(). Instances of other MPI types can
be serialized only if they reference predefined handles.
* Add handle attribute and fromhandle() class method to MPI
classes to ease interoperability with external code. The handle
value is an unsigned integer guaranteed to fit on the
platform's uintptr_t C type.
* Add lowercase free() method to MPI classes to ease MPI object
deallocation and cleanup. This method eventually attempts to
call Free(), but only if the object's MPI handle is not a null
or predefined handle, and such call is allowed within the World
Model init/finalize.
[#]# Backward-incompatible changes:
* Python 2 is no longer supported, Python 3.6+ is required, but
typing stubs are supported for Python 3.8+.
* The Intracomm.Create_group() method is no longer defined in the
base Comm class.
* Group.Compare() and Comm.Compare() are no longer class methods
but instance methods. Existing codes using the former class
methods are expected to continue working.
* Group.Translate_ranks() is no longer a class method but an
instance method. Existing codes using the former class method
are expected to continue working.
* The LB and UB datatypes are no longer available, use
Datatype.Create_resized() instead.
* The HOST predefined attribute key is no longer available.
* The MPI.memory class has been renamed to MPI.buffer. The old
name is still available as an alias to the new name.
* The mpi4py.dl module is no longer available.
* The mpi4py.get_config function returns an empty dictionary.
[#]# Miscellaneous:
* The project is now licensed under the BSD-3-Clause license.
This change is fairly inconsequential for users and
distributors. It simply adds an additional clause against using
contributor names for promotional purposes without their
consent.
* Add a new guidelines section to documentation laying out new
fair play rules. These rules ask companies and outside
developers to refrain from reusing the mpi4py name in
unaffiliated projects, publishing binary mpi4py wheels on the
main Python Package Index (PyPI), and distributing modified
versions with incompatible or extended API changes. The primary
motivation of these rules is to avoid fragmentation and
end-user confusion.
- Skip failing tests: test fails are different on server and local
machines. TODO: Investigate
- Remove unused rpm macro file: Static %mpi4py_mpi_ver is not used
anywhere (and had a strange name for value 'openmpi')
* Fri May 10 2024 Dirk Müller <dmueller@suse.com>
- update to 3.1.6:
* This is the last release supporting Python 2.
* Fix various build issues.
* Fri Jan 19 2024 Daniel Garcia <daniel.garcia@suse.com>
- Don't run tests in s390x, mpiexec is not too reliable running in the
OBS virtual machine environment. bsc#1218604#c1
* Thu Dec 07 2023 Dirk Müller <dmueller@suse.com>
- update to 3.1.5:
* Rebuild C sources with Cython 0.29.36 to support Python 3.12.
* Sat Sep 23 2023 Ben Greiner <code@bnavigator.de>
- Limit to Cython 0: gh#mpi4py/mpi4py#383
- PEP517: build wheel instead of deprecated setup.py install
* Thu Nov 10 2022 Daniel Garcia <daniel.garcia@suse.com>
- Disable current broken tests for i586. gh#mpi4py/mpi4py#279
- Increase memory size in constraints
* Thu Nov 10 2022 Daniel Garcia <daniel.garcia@suse.com>
- Add rpmlintrc as source in the spec file
* Thu Nov 10 2022 Daniel Garcia <daniel.garcia@suse.com>
- Remove exec perms from demo/python-config
- Add python-mpi4py-rpmlintrc to filter no-binary erros for devel, common-devel
and doc subpackages
Version: 3.0.3-bp152.1.31
* Tue Nov 19 2019 Todd R <toddrme2178@gmail.com>
- Update to 3.0.3
* Regenerate Cython wrappers to support Python 3.8.
- Drop upstream-included fix_window_size.patch
* Sun Aug 04 2019 Todd R <toddrme2178@gmail.com>
- Add fix_window_size.patch
Fixes unit tests
See: https://bitbucket.org/mpi4py/mpi4py/issues/137/
* Wed Jul 31 2019 Todd R <toddrme2178@gmail.com>
- Update to 3.0.2
* Bug fixes:
+ Fix handling of readonly buffers in support for Pytho
2 legacy buffer interface. The issue triggers only when using
a buffer-like object that is readonly and does not export
the new Python 3 buffer interface.
+ Fix build issues with Open MPI 4.0.x series related to
removal of many MPI-1 symbols deprecated in MPI-2 and removed
in MPI-3.
+ Minor documentation fixes.
* Wed Feb 27 2019 Bernhard Wiedemann <bwiedemann@suse.com>
- Use openmpi2 for releases that support it.
* Mon Feb 25 2019 Tomá? Chvátal <tchvatal@suse.com>
- Update to 3.0.1:
* Bug fixes:
+ Fix ``Comm.scatter()`` and other collectives corrupting input send
list. Add safety measures to prevent related issues in global
reduction operations.
+ Fix error-checking code for counts in ``Op.Reduce_local()``.
* Enhancements:
+ Map size-specific Python/NumPy typecodes to MPI datatypes.
+ Allow partial specification of target list/tuple arguments in the
various ``Win`` RMA methods.
+ Workaround for removal of ``MPI_{LB|UB}`` in Open MPI 4.0.
+ Support for Microsoft MPI v10.0.
- Add numpy as build dependency used in tests
* Thu Nov 15 2018 Todd R <toddrme2178@gmail.com>
- Use openmpi3 for releases that support it.
* Wed Jun 13 2018 toddrme2178@gmail.com
- Update to version 3.0.0
* New features:
+ `mpi4py.futures`: Execute computations asynchronously using a pool
of MPI processes. This package is based on ``concurrent.futures``
from the Python standard library.
+ `mpi4py.run`: Run Python code and abort execution in case of
unhandled exceptions to prevent deadlocks.
+ `mpi4py.bench`: Run basic MPI benchmarks and tests.
* Enhancements:
+ Lowercase, pickle-based collective communication calls are now
thread-safe through the use of fine-grained locking.
+ The ``MPI`` module now exposes a ``memory`` type which is a
lightweight variant of the builtin ``memoryview`` type, but
exposes both the legacy Python 2 and the modern Python 3 buffer
interface under a Python 2 runtime.
+ The ``MPI.Comm.Alltoallw()`` method now uses ``count=1`` and
``displ=0`` as defaults, assuming that messages are specified
through user-defined datatypes.
+ The ``Request.Wait[all]()`` methods now return ``True`` to match
the interface of ``Request.Test[all]()``.
+ The ``Win`` class now implements the Python buffer interface.
* Backward-incompatible changes:
+ The ``buf`` argument of the ``MPI.Comm.recv()`` method is
deprecated, passing anything but ``None`` emits a warning.
+ The ``MPI.Win.memory`` property was removed, use the
``MPI.Win.tomemory()`` method instead.
+ Executing ``python -m mpi4py`` in the command line is now
equivalent to ``python -m mpi4py.run``. For the former behavior,
use ``python -m mpi4py.bench``.
+ Python 2.6 and 3.2 are no longer supported. The ``mpi4py.MPI``
module may still build and partially work, but other pure-Python
modules under the ``mpi4py`` namespace will not.
+ Windows: Remove support for legacy MPICH2, Open MPI, and DeinoMPI.
- Switch to recommended openmpi2 for distributions that support it.
Version: 2.0.0-bp150.2.4
* Wed Oct 25 2017 junghans@votca.org
- adapt to new openlmi package - source mpivars.h during build
* Tue May 23 2017 toddrme2178@gmail.com
- Implement single-spec version
- Fix source URL.
- Package docs
* Wed Jan 25 2017 jengelh@inai.de
- Update description. Drop redundant %clean.
* Tue Jan 24 2017 junghans@votca.org
- install LICENSE.rst as suggest in request#445611
* Sun Dec 11 2016 junghans@votca.org
- Update to version 2.0.0
* Support for MPI-3 features.
* Support for MPI-2 features not included in previous releases.
* New scalable implementation of reduction operations for Python objects.
* Thu Oct 24 2013 toddrme2178@gmail.com
- Update to version 1.3.1
* Regenerate C wrappers with Cython 0.19.1 to support Python 3.3.
* Install ``*.pxd`` files in ``<site-packages>/mpi4py`` to ease the
support for Cython's ``cimport`` statement in code requiring to
access mpi4py internals.
* As a side-effect of using Cython 0.19.1, ancient Python 2.3 is no
longer supported. If you really need it, you can install an older
Cython and run ``python setup.py build_src --force``.
* Tue May 22 2012 toddrme2178@gmail.com
- Update to version 1.3
- Add Python 3 package
* Sat Feb 25 2012 scorot@free.fr
- fix build for SLE-11
* Fri Jan 06 2012 toddrme2178@gmail.com
- Update to version 1.2.2
- Clean up spec file
- Switch to .changes file
* Tue May 05 2009 felix.richter2@uni-rostock.de
- Initial specfile generated by python distutils,
- adapted for SUSE Build Service