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