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