xref: /petsc/src/binding/petsc4py/CHANGES.rst (revision 151049cff2cabe4e48e374d9aa8bed3a928ad4d4)
15808f684SSatish Balay=========================
25808f684SSatish BalayCHANGES: PETSc for Python
35808f684SSatish Balay=========================
45808f684SSatish Balay
55808f684SSatish Balay:Author:  Lisandro Dalcin
65808f684SSatish Balay:Contact: dalcinl@gmail.com
75808f684SSatish Balay
8f46a955bSLisandro Dalcin
9*7b8d1e39SLisandro DalcinRelease 3.24.0
10*7b8d1e39SLisandro Dalcin==============
11*7b8d1e39SLisandro Dalcin
12*7b8d1e39SLisandro Dalcin- Update to PETSc 3.24 release.
13*7b8d1e39SLisandro Dalcin
14*7b8d1e39SLisandro Dalcin- Support (opt-in via setting the environment variable
15*7b8d1e39SLisandro Dalcin  ``PETSC4PY_BUILD_PYSABI=1``) for building with ``Py_LIMITED_API``
16*7b8d1e39SLisandro Dalcin  (Python Stable ABI) under Python 3.10+ (requires Cython 3.1+).
17*7b8d1e39SLisandro Dalcin
189d1665e9SSatish BalayRelease 3.23.0
199d1665e9SSatish Balay==============
209d1665e9SSatish Balay
219d1665e9SSatish Balay- Update to PETSc 3.23 release.
229d1665e9SSatish Balay
235636f27cSSatish BalayRelease 3.22.0
245636f27cSSatish Balay==============
255636f27cSSatish Balay
265636f27cSSatish Balay- Update to PETSc 3.22 release.
275636f27cSSatish Balay
280c273fb4SSatish BalayRelease 3.21.0
290c273fb4SSatish Balay==============
300c273fb4SSatish Balay
310c273fb4SSatish Balay- Update to PETSc 3.21 release.
320c273fb4SSatish Balay
3382bf4761SSatish BalayRelease 3.20.0
3482bf4761SSatish Balay==============
3582bf4761SSatish Balay
3682bf4761SSatish Balay- Update to PETSc 3.20 release.
3782bf4761SSatish Balay- Update Cython build, require ``Cython >= 3.0.0``.
3882bf4761SSatish Balay
39c1e120d9SJacob FaibussowitschRelease 3.19.0
40c1e120d9SJacob Faibussowitsch==============
41c1e120d9SJacob Faibussowitsch
42ee2c8905SSatish Balay- Update to PETSc 3.19 release.
43f46a955bSLisandro Dalcin- Expose ``PetscDevice`` and ``PetscDeviceContext`` API as
44f46a955bSLisandro Dalcin  ``PETSc.Device`` and ``PETSc.DeviceContext`` classes respectively.
455808f684SSatish Balay
465aa9e7a8SSatish BalayRelease 3.18.0
475aa9e7a8SSatish Balay==============
485aa9e7a8SSatish Balay
495aa9e7a8SSatish Balay- Update to PETSc 3.18 release.
505aa9e7a8SSatish Balay
515aa9e7a8SSatish Balay
529e098700SSatish BalayRelease 3.17.0
539e098700SSatish Balay==============
549e098700SSatish Balay
559e098700SSatish Balay- Update to PETSc 3.17 release.
569e098700SSatish Balay
579e098700SSatish Balay
58c7c82c6aSSatish BalayRelease 3.16.0
59c7c82c6aSSatish Balay==============
60c7c82c6aSSatish Balay
61c7c82c6aSSatish Balay- Update to PETSc 3.16 release.
62c7c82c6aSSatish Balay
63c7c82c6aSSatish Balay
641557be69SSatish BalayRelease 3.15.0
651557be69SSatish Balay==============
661557be69SSatish Balay
671557be69SSatish Balay- Update to PETSc 3.15 release.
681557be69SSatish Balay
691557be69SSatish Balay
7017abc846SLisandro DalcinRelease 3.14.1
7117abc846SLisandro Dalcin==============
7217abc846SLisandro Dalcin
7317abc846SLisandro Dalcin- Fix build issues after changes in recent PETSc patch releases.
7417abc846SLisandro Dalcin- Add various missing types and enums definitions.
7517abc846SLisandro Dalcin- Update Cython build, require ``Cython >= 0.24``.
7617abc846SLisandro Dalcin
7717abc846SLisandro Dalcin
78c32ff1c9SSatish BalayRelease 3.14.0
79c32ff1c9SSatish Balay==============
80c32ff1c9SSatish Balay
81c32ff1c9SSatish Balay- Update to PETSc 3.14 release.
82c32ff1c9SSatish Balay
83c32ff1c9SSatish Balay
845808f684SSatish BalayRelease 3.13.0
855808f684SSatish Balay==============
865808f684SSatish Balay
875808f684SSatish Balay- Update to PETSc 3.13 release.
885808f684SSatish Balay
895808f684SSatish Balay
905808f684SSatish BalayRelease 3.12.0
915808f684SSatish Balay==============
925808f684SSatish Balay
935808f684SSatish Balay- Update to PETSc 3.12 release.
945808f684SSatish Balay
955808f684SSatish Balay
965808f684SSatish BalayRelease 3.11.0
975808f684SSatish Balay==============
985808f684SSatish Balay
995808f684SSatish Balay- Update to PETSc 3.11 release.
1005808f684SSatish Balay
1015808f684SSatish Balay
1025808f684SSatish BalayRelease 3.10.1
1035808f684SSatish Balay==============
1045808f684SSatish Balay
1055808f684SSatish Balay- Fix for removal of ``SNESTEST``.
1065808f684SSatish Balay- Fix ``Mat`` in-place divide.
1075808f684SSatish Balay
1085808f684SSatish Balay
1095808f684SSatish BalayRelease 3.10.0
1105808f684SSatish Balay==============
1115808f684SSatish Balay
1125808f684SSatish Balay- Update to PETSc 3.10 release.
1135808f684SSatish Balay
1145808f684SSatish Balay
1155808f684SSatish BalayRelease 3.9.1
1165808f684SSatish Balay=============
1175808f684SSatish Balay
1185808f684SSatish Balay- Add ``Mat.zeroRowsColumnsLocal()``.
1195808f684SSatish Balay- Add ``Mat.getISLocalMat()``.
1205808f684SSatish Balay- Add ``Mat.convertISToAIJ()``.
1215808f684SSatish Balay
1225808f684SSatish Balay
1235808f684SSatish BalayRelease 3.9.0
1245808f684SSatish Balay=============
1255808f684SSatish Balay
1265808f684SSatish Balay- Update to PETSc 3.9 release.
1275808f684SSatish Balay
1285808f684SSatish Balay
1295808f684SSatish BalayRelease 3.8.0
1305808f684SSatish Balay=============
1315808f684SSatish Balay
1325808f684SSatish Balay- Update to PETSc 3.8 release.
1335808f684SSatish Balay
1345808f684SSatish Balay
1355808f684SSatish BalayRelease 3.7.0
1365808f684SSatish Balay=============
1375808f684SSatish Balay
1385808f684SSatish Balay- Update to PETSc 3.7 release.
1395808f684SSatish Balay
1405808f684SSatish Balay
1415808f684SSatish BalayRelease 3.6.0
1425808f684SSatish Balay=============
1435808f684SSatish Balay
1445808f684SSatish Balay- Update to PETSc 3.6 release.
1455808f684SSatish Balay
1465808f684SSatish Balay
1475808f684SSatish BalayRelease 3.5.1
1485808f684SSatish Balay=============
1495808f684SSatish Balay
1505808f684SSatish Balay- Add ``Log.{begin|view|destroy}()``.
1515808f684SSatish Balay- Add ``Mat.SOR()`` and ``Mat.SORType``.
1525808f684SSatish Balay- Add ``DMPlex.createCoarsePointIS()``.
1535808f684SSatish Balay- Add ``LGMap.createSF()``.
1545808f684SSatish Balay- Add ``SNES.getVIInactiveSet()``.
1555808f684SSatish Balay- Add ``Vec.isaxpy()``.
1565808f684SSatish Balay- Add ``PC.setReusePreconditioner()``.
1575808f684SSatish Balay- Return correct type in ``DM.getCoordinateDM()``.
1585808f684SSatish Balay- Fix SWIG wrappers to handle 64bit ``PetscInt``.
1595808f684SSatish Balay- Fix linker flags for Python from Fink.
1605808f684SSatish Balay
1615808f684SSatish Balay
1625808f684SSatish BalayRelease 3.5
1635808f684SSatish Balay===========
1645808f684SSatish Balay
1655808f684SSatish Balay- Update to PETSc 3.5 release.
1665808f684SSatish Balay
1675808f684SSatish Balay
1685808f684SSatish BalayRelease 3.4
1695808f684SSatish Balay===========
1705808f684SSatish Balay
1715808f684SSatish Balay- Update to PETSc 3.4 release.
1725808f684SSatish Balay
1735808f684SSatish Balay- Add support for ``DMComposite`` and ``DMPlex``.
1745808f684SSatish Balay
1755808f684SSatish Balay- Change ``Mat.getSizes()`` to return ``((m,M),(n,N))``.
1765808f684SSatish Balay
1775808f684SSatish Balay
1785808f684SSatish BalayRelease 3.3.1
1795808f684SSatish Balay=============
1805808f684SSatish Balay
1815808f684SSatish Balay- Fix ``Options.getAll()`` mishandling values with negative numbers.
1825808f684SSatish Balay
1835808f684SSatish Balay- Minor backward compatibility fix for PETSc 3.2 .
1845808f684SSatish Balay
1855808f684SSatish Balay- Minor bugfix for TSPYTHON subtype.
1865808f684SSatish Balay
1875808f684SSatish Balay
1885808f684SSatish BalayRelease 3.3
1895808f684SSatish Balay===========
1905808f684SSatish Balay
1915808f684SSatish Balay- Update to PETSc 3.3 release.
1925808f684SSatish Balay
1935808f684SSatish Balay- Change ``Vec.getLocalForm()`` to ``Vec.localForm()`` for use with
1945808f684SSatish Balay  context manager and add ``Vec.setMPIGhost()``.
1955808f684SSatish Balay
1965808f684SSatish Balay- Add ``AO.createMemoryScalable()`` and ``LGMap.block()`` /
1975808f684SSatish Balay  ``LGMap.unblock()``
1985808f684SSatish Balay
1995808f684SSatish Balay- Add ``Object.handle`` property (C pointer as a Python integer). Can
2005808f684SSatish Balay  be used with ``ctypes`` to pass a PETSc handle.
2015808f684SSatish Balay
2025808f684SSatish Balay- Add ``Comm.tompi4py()`` to get a ``mpi4py`` communicator instance.
2035808f684SSatish Balay
2045808f684SSatish Balay
2055808f684SSatish BalayRelease 1.2
2065808f684SSatish Balay===========
2075808f684SSatish Balay
2085808f684SSatish Balay- Update to PETSc 3.2 release.
2095808f684SSatish Balay
2105808f684SSatish Balay- Add new ``DM`` class , make ``DA`` inherit from ``DM``.
2115808f684SSatish Balay
2125808f684SSatish Balay- Better support for inplace LU/ILU and Cholesky/ICC factorization and
2135808f684SSatish Balay  factor PC subtypes.
2145808f684SSatish Balay
2155808f684SSatish Balay- Now the ``Mat``/``PC``/``KSP``/``SNES``/``TS`` Python subtypes are
2165808f684SSatish Balay  implemented with Cython.
2175808f684SSatish Balay
2185808f684SSatish Balay- Better interaction between Python garbage collector and PETSc
2195808f684SSatish Balay  objects.
2205808f684SSatish Balay
2215808f684SSatish Balay- Support for PEP 3118 and legacy Python's buffer interface.
2225808f684SSatish Balay
2235808f684SSatish Balay
2245808f684SSatish BalayRelease 1.1.2
2255808f684SSatish Balay=============
2265808f684SSatish Balay
2275808f684SSatish BalayThis is a new-features and bug-fix release.
2285808f684SSatish Balay
2295808f684SSatish Balay- Add support for copying and computing complements in ``IS``
2305808f684SSatish Balay  (``IS.copy()`` and ``IS.complement()``).
2315808f684SSatish Balay
2325808f684SSatish Balay- Add support for coarsening in ``DA`` (``DA.coarsen()``).
2335808f684SSatish Balay
2345808f684SSatish Balay- Support for shallow copy and deep copy operations (use ``copy.copy``
2355808f684SSatish Balay  and ``copy.deepcopy``). Deep copy is only supported for a bunch of
2365808f684SSatish Balay  types (``IS``, ``Scatter``, ``Vec``, ``Mat``)
2375808f684SSatish Balay
2385808f684SSatish Balay- Support for ``pip install petsc4py`` to download and install PETSc.
2395808f684SSatish Balay
2405808f684SSatish Balay
2415808f684SSatish BalayRelease 1.1.1
2425808f684SSatish Balay=============
2435808f684SSatish Balay
2445808f684SSatish BalayThis is a new-features and bug-fix release.
2455808f684SSatish Balay
2465808f684SSatish Balay- Support for setting PETSC_COMM_WORLD before PETSc initialization.
2475808f684SSatish Balay
2485808f684SSatish Balay- Support for coordinates, refinement and interpolation in DA. Many
2495808f684SSatish Balay  thanks to Blaise Bourdin.
2505808f684SSatish Balay
2515808f684SSatish Balay- Workaround build failures when PETSc is built with *mpiuni*.
2525808f684SSatish Balay
2535808f684SSatish Balay- Workaround GIL-related APIs for non-threaded Python builds.
2545808f684SSatish Balay
2555808f684SSatish Balay
2565808f684SSatish BalayRelease 1.1
2575808f684SSatish Balay===========
2585808f684SSatish Balay
2595808f684SSatish Balay- Update for API cleanups, changes, and new calls in PETSc 3.1 and
2605808f684SSatish Balay  some other missing features.
2615808f684SSatish Balay
2625808f684SSatish Balay- Add support for Jed Brown's THETA an GL timestepper implementations.
2635808f684SSatish Balay
2645808f684SSatish Balay- Fix the annoying issues related to Open MPI shared libraries
2655808f684SSatish Balay  dependencies and Python dynamic loading.
2665808f684SSatish Balay
2675808f684SSatish Balay- Many minor bug-fixes. Many thanks to Ethan Coon, Dmitry Karpeev,
2685808f684SSatish Balay  Juha Jaykka, and Michele De Stefano.
2695808f684SSatish Balay
2705808f684SSatish Balay
2715808f684SSatish BalayRelease 1.0.3
2725808f684SSatish Balay=============
2735808f684SSatish Balay
2745808f684SSatish BalayThis is a bug-fix release.
2755808f684SSatish Balay
2765808f684SSatish Balay- Added a quick fix to solve build issues. The macro __SDIR__ is no
2775808f684SSatish Balay  longer passed to the compiler in the command line.
2785808f684SSatish Balay
2795808f684SSatish Balay
2805808f684SSatish BalayRelease 1.0.2
2815808f684SSatish Balay=============
2825808f684SSatish Balay
2835808f684SSatish BalayThis is a new-features and bug-fix release.
2845808f684SSatish Balay
2855808f684SSatish Balay- Now ``petsc4py`` works against core PETSc built with complex
2865808f684SSatish Balay  scalars.
2875808f684SSatish Balay
2885808f684SSatish Balay- Added support for PETSc logging features like stages, classes and
2895808f684SSatish Balay  events. Stages and events support the context manager interface
2905808f684SSatish Balay  (``with`` statement).
2915808f684SSatish Balay
2925808f684SSatish Balay- Documentation generated with Epydoc and Sphinx is now included in
2935808f684SSatish Balay  the release tarball.
2945808f684SSatish Balay
2955808f684SSatish Balay- Removed enumeration-like classes from the ``petsc4py.PETSc`` module
2965808f684SSatish Balay  namespace. For example, now you have to use ``PETSc.KSP.Type``
2975808f684SSatish Balay  instead of ``PETSc.KSPType``.
2985808f684SSatish Balay
2995808f684SSatish Balay- The ``PETSc.IS`` to ``numpy.ndarray`` conversion now works for
3005808f684SSatish Balay  stride and block index sets.
3015808f684SSatish Balay
3025808f684SSatish Balay- Implemented a more robust import machinery for multi-arch
3035808f684SSatish Balay  ``petsc4py`` installations. Now a wrong value in the ``PETSC_ARCH``
3045808f684SSatish Balay  environmental variable emit a warning (instead of failing) at import
3055808f684SSatish Balay  time.
3065808f684SSatish Balay
3075808f684SSatish Balay- The unittest-based testsuite now can run under ``nose`` with its
3085808f684SSatish Balay  default options.
3095808f684SSatish Balay
3105808f684SSatish Balay- Removed the dependency on ``numpy.distutils``, just use core Python
3115808f684SSatish Balay  ``distutils``.
3125808f684SSatish Balay
3135808f684SSatish Balay
3145808f684SSatish BalayRelease 1.0.1
3155808f684SSatish Balay=============
3165808f684SSatish Balay
3175808f684SSatish BalayThis is a bug-fix release. Compile Cython-generated C sources with
3185808f684SSatish Balay``-Wwrite-strings`` removed, as this flag (inherited from PETSc) made
3195808f684SSatish BalayGCC emit a lot of (harmless but annoying) warnings about conversion of
3205808f684SSatish Balaystring literals to non-const char pointers.
3215808f684SSatish Balay
3225808f684SSatish Balay
3235808f684SSatish BalayRelease 1.0.0
3245808f684SSatish Balay=============
3255808f684SSatish Balay
3265808f684SSatish BalayThis is the fist release of the all-new, Cython-based, implementation
3275808f684SSatish Balayof *PETSc for Python*.
328