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