Openpmd-api

Latest version: v0.16.1

Safety actively analyzes 723144 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 7

0.13.2

------
**Date:** 2021-02-02

Fix Patch Read & Python store_chunk

This release fixes a regression with particle patches, related to ``Iteration::open()`` and ``::close()`` functionality.
Also, issues with the Python ``store_chunk`` method are addressed.

0.13.1

------
**Date:** 2021-01-08

Fix openPMD-ls & Iteration open/close

This release fixes regressions in the series "ls" functionality and tools, related to ``Iteration::open()`` and ``::close()`` functionality.
We also add support to read back complex numbers with JSON.

0.13.0

------

Building openPMD-api now requires a compiler that supports C++14 or newer.
Supported Python version are now 3.6 to 3.9.
CMake 3.15.0 is now the minimally supported version for CMake.

Python
^^^^^^

Reading the ``data_order`` of a mesh was broken.
The old setter function (``set_data_order``) and read-only property (``data_order``) are now unified in a single, writable property:

.. code-block:: python3

import openpmd_api as io

series = io.Series("data%T.h5", io.Access.read_only)
rho = series.iterations[0].meshes["rho"]
rho.data_order = 'C' or 'F'

print(rho.data_order == 'C') True

Note: we recommend using ``'C'`` order since version 2 of the openPMD-standard will simplify this option to ``'C'``, too.
For Fortran-ordered indices, please just invert the attributes ``axis_labels``, ``grid_spacing`` and ``grid_global_offset`` accordingly.

The ``Iteration`` functions ``time``, ``dt`` and ``time_unit_SI`` have been replaced with read-write properties of the same name, essentially without the ``()``-access.
``set_time``, ``set_dt`` and ``set_time_unit_SI`` are now deprecated and will be removed in future versions of the library.

The already existing read-only ``Series`` properties ``openPMD``, ``openPMD_extension``, ``base_path``, ``meshes_path``, ``particles_path``, ``particles_path``, ``author``, ``date``, ``iteration_encoding``, ``iteration_format`` and ``name`` are now declared as read-write properties.
``set_openPMD``, ``set_openPMD_extension``, ``set_base_path``, ``set_meshes_path``, ``set_particles_path``, ``set_author``, ``set_date``, ``set_iteration_encoding``, ``set_iteration_format`` and ``set_name`` are now deprecated and will be removed in future versions of the library.

The already existing read-only ``Mesh`` properties ``geometry``, ``geometry_parameters``, ``axis_labels``, ``grid_spacing``, ``grid_global_offset`` and ``grid_unit_SI`` are now declared as read-write properties.
``set_geometry``, ``set_geometry_parameters``, ``set_axis_labels``, ``set_grid_spacing``, ``set_grid_global_offset`` and ``set_grid_unit_SI`` are now deprecated and will be removed in future versions of the library.

The already existing read-only ``Attributable`` property ``comment`` is now declared as read-write properties.
``set_comment`` is now deprecated and will be removed in future versions of the library.

0.12.0alpha

------------

CMake 3.12.0 is now the minimally supported version for CMake.
ADIOS 2.6.0 is now the minimally supported version for ADIOS2 support.

Python
^^^^^^

The already existing read-only properties ``unit_dimension``, ``unit_SI``, and ``time_offset`` are now declared as read-write properties.
``set_unit_dimension``, ``set_unit_SI``, and ``set_time_offset`` are now deprecated and will be removed in future versions of the library.

``Access_Type`` is now called ``Access``.
Using it by the old name is deprecated and will be removed in future versions of the library.

C++
^^^

``AccessType`` is now called ``Access``.
Using it by the old name is deprecated and will be removed in future versions of the library.

0.11.1alpha

------------
**Date:** 2020-03-24

HDF5-1.12, Azimuthal Examples & Tagfile

This release adds support for the latest HDF5 release.
Also, we add versioned Doxygen and a tagfile for external docs to our online manual.

0.11.0alpha

------------

ADIOS2 is now the default backend for ``.bp`` files.
As soon as the ADIOS2 backend is enabled it will take precedence over a potentially also enabled ADIOS1 backend.
In order to prefer the legacy ADIOS1 backend in such a situation, set an environment variable: ``export OPENPMD_BP_BACKEND="ADIOS1"``.
Support for ADIOS1 is now deprecated.

Independent MPI-I/O is now the default in parallel HDF5.
For the old default, collective parallel I/O, set the environment variable ``export OPENPMD_HDF5_INDEPENDENT="OFF"``.
Collective parallel I/O makes more functionality, such as ``storeChunk`` and ``loadChunk``, MPI-collective.
HDF5 attribute writes are MPI-collective in either case, due to HDF5 restrictions.

Our `Spack <https://spack.io>`_ packages build the ADIOS2 backend now by default.
Pass ``-adios2`` to the Spack spec to disable it: ``spack install openpmd-api -adios2`` (same for ``spack load -r``).

The ``Series::setSoftwareVersion`` method is now deprecated and will be removed in future versions of the library.
Use ``Series::setSoftware(name, version)`` instead.
Similarly for the Python API, use ``Series.set_software`` instead of ``Series.set_software_version``.

The automated example-download scripts have been moved from ``.travis/download_samples.sh`` (and ``.ps1``) to ``share/openPMD/``.

Page 3 of 7

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.