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