xref: /petsc/src/binding/petsc4py/CHANGES.rst (revision 2f7452b8bc9e85fb4807a400a23d6cbf394de3f0)
1=========================
2CHANGES: PETSc for Python
3=========================
4
5:Author:  Lisandro Dalcin
6:Contact: dalcinl@gmail.com
7
8
9Release 3.16.0
10==============
11
12- Update to PETSc 3.16 release.
13
14
15Release 3.15.0
16==============
17
18- Update to PETSc 3.15 release.
19
20
21Release 3.14.1
22==============
23
24- Fix build issues after changes in recent PETSc patch releases.
25- Add various missing types and enums definitions.
26- Update Cython build, require ``Cython >= 0.24``.
27
28
29Release 3.14.0
30==============
31
32- Update to PETSc 3.14 release.
33
34
35Release 3.13.0
36==============
37
38- Update to PETSc 3.13 release.
39
40
41Release 3.12.0
42==============
43
44- Update to PETSc 3.12 release.
45
46
47Release 3.11.0
48==============
49
50- Update to PETSc 3.11 release.
51
52
53Release 3.10.1
54==============
55
56- Fix for removal of ``SNESTEST``.
57- Fix ``Mat`` in-place divide.
58
59
60Release 3.10.0
61==============
62
63- Update to PETSc 3.10 release.
64
65
66Release 3.9.1
67=============
68
69- Add ``Mat.zeroRowsColumnsLocal()``.
70- Add ``Mat.getISLocalMat()``.
71- Add ``Mat.convertISToAIJ()``.
72
73
74Release 3.9.0
75=============
76
77- Update to PETSc 3.9 release.
78
79
80Release 3.8.0
81=============
82
83- Update to PETSc 3.8 release.
84
85
86Release 3.7.0
87=============
88
89- Update to PETSc 3.7 release.
90
91
92Release 3.6.0
93=============
94
95- Update to PETSc 3.6 release.
96
97
98Release 3.5.1
99=============
100
101- Add ``Log.{begin|view|destroy}()``.
102- Add ``Mat.SOR()`` and ``Mat.SORType``.
103- Add ``DMPlex.createCoarsePointIS()``.
104- Add ``LGMap.createSF()``.
105- Add ``SNES.getVIInactiveSet()``.
106- Add ``Vec.isaxpy()``.
107- Add ``PC.setReusePreconditioner()``.
108- Return correct type in ``DM.getCoordinateDM()``.
109- Fix SWIG wrappers to handle 64bit ``PetscInt``.
110- Fix linker flags for Python from Fink.
111
112
113Release 3.5
114===========
115
116- Update to PETSc 3.5 release.
117
118
119Release 3.4
120===========
121
122- Update to PETSc 3.4 release.
123
124- Add support for ``DMComposite`` and ``DMPlex``.
125
126- Change ``Mat.getSizes()`` to return ``((m,M),(n,N))``.
127
128
129Release 3.3.1
130=============
131
132- Fix ``Options.getAll()`` mishandling values with negative numbers.
133
134- Minor backward compatibility fix for PETSc 3.2 .
135
136- Minor bugfix for TSPYTHON subtype.
137
138
139Release 3.3
140===========
141
142- Update to PETSc 3.3 release.
143
144- Change ``Vec.getLocalForm()`` to ``Vec.localForm()`` for use with
145  context manager and add ``Vec.setMPIGhost()``.
146
147- Add ``AO.createMemoryScalable()`` and ``LGMap.block()`` /
148  ``LGMap.unblock()``
149
150- Add ``Object.handle`` property (C pointer as a Python integer). Can
151  be used with ``ctypes`` to pass a PETSc handle.
152
153- Add ``Comm.tompi4py()`` to get a ``mpi4py`` communicator instance.
154
155
156Release 1.2
157===========
158
159- Update to PETSc 3.2 release.
160
161- Add new ``DM`` class , make ``DA`` inherit from ``DM``.
162
163- Better support for inplace LU/ILU and Cholesky/ICC factorization and
164  factor PC subtypes.
165
166- Now the ``Mat``/``PC``/``KSP``/``SNES``/``TS`` Python subtypes are
167  implemented with Cython.
168
169- Better interaction between Python garbage collector and PETSc
170  objects.
171
172- Support for PEP 3118 and legacy Python's buffer interface.
173
174
175Release 1.1.2
176=============
177
178This is a new-features and bug-fix release.
179
180- Add support for copying and computing complements in ``IS``
181  (``IS.copy()`` and ``IS.complement()``).
182
183- Add support for coarsening in ``DA`` (``DA.coarsen()``).
184
185- Support for shallow copy and deep copy operations (use ``copy.copy``
186  and ``copy.deepcopy``). Deep copy is only supported for a bunch of
187  types (``IS``, ``Scatter``, ``Vec``, ``Mat``)
188
189- Support for ``pip install petsc4py`` to download and install PETSc.
190
191
192Release 1.1.1
193=============
194
195This is a new-features and bug-fix release.
196
197- Support for setting PETSC_COMM_WORLD before PETSc initialization.
198
199- Support for coordinates, refinement and interpolation in DA. Many
200  thanks to Blaise Bourdin.
201
202- Workaround build failures when PETSc is built with *mpiuni*.
203
204- Workaround GIL-related APIs for non-threaded Python builds.
205
206
207Release 1.1
208===========
209
210- Update for API cleanups, changes, and new calls in PETSc 3.1 and
211  some other missing features.
212
213- Add support for Jed Brown's THETA an GL timestepper implementations.
214
215- Fix the annoying issues related to Open MPI shared libraries
216  dependencies and Python dynamic loading.
217
218- Many minor bug-fixes. Many thanks to Ethan Coon, Dmitry Karpeev,
219  Juha Jaykka, and Michele De Stefano.
220
221
222Release 1.0.3
223=============
224
225This is a bug-fix release.
226
227- Added a quick fix to solve build issues. The macro __SDIR__ is no
228  longer passed to the compiler in the command line.
229
230
231Release 1.0.2
232=============
233
234This is a new-features and bug-fix release.
235
236- Now ``petsc4py`` works against core PETSc built with complex
237  scalars.
238
239- Added support for PETSc logging features like stages, classes and
240  events. Stages and events support the context manager interface
241  (``with`` statement).
242
243- Documentation generated with Epydoc and Sphinx is now included in
244  the release tarball.
245
246- Removed enumeration-like classes from the ``petsc4py.PETSc`` module
247  namespace. For example, now you have to use ``PETSc.KSP.Type``
248  instead of ``PETSc.KSPType``.
249
250- The ``PETSc.IS`` to ``numpy.ndarray`` conversion now works for
251  stride and block index sets.
252
253- Implemented a more robust import machinery for multi-arch
254  ``petsc4py`` installations. Now a wrong value in the ``PETSC_ARCH``
255  environmental variable emit a warning (instead of failing) at import
256  time.
257
258- The unittest-based testsuite now can run under ``nose`` with its
259  default options.
260
261- Removed the dependency on ``numpy.distutils``, just use core Python
262  ``distutils``.
263
264
265Release 1.0.1
266=============
267
268This is a bug-fix release. Compile Cython-generated C sources with
269``-Wwrite-strings`` removed, as this flag (inherited from PETSc) made
270GCC emit a lot of (harmless but annoying) warnings about conversion of
271string literals to non-const char pointers.
272
273
274Release 1.0.0
275=============
276
277This is the fist release of the all-new, Cython-based, implementation
278of *PETSc for Python*.
279