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