Skip to content

Release 0.17.1#1880

Merged
ax3l merged 41 commits into
openPMD:release-0.17.1from
franzpoeschel:release-0.17.1-wip
Jun 23, 2026
Merged

Release 0.17.1#1880
ax3l merged 41 commits into
openPMD:release-0.17.1from
franzpoeschel:release-0.17.1-wip

Conversation

@franzpoeschel

@franzpoeschel franzpoeschel commented May 18, 2026

Copy link
Copy Markdown
Contributor

https://github.com/openPMD/openPMD-api/milestone/17

TODO

  • Remaining items from the milestone
  • Docs
  • toml11, maybe use recent master commit?

Which version am I running?

Python

import openpmd_api
print(openpmd_api.__version__)

C++

#include <openPMD/openPMD.hpp>
#include <iostream>

int main() {
    // query compile-time macros:
    std::cout << OPENPMDAPI_VERSION_MAJOR << "."
              << OPENPMDAPI_VERSION_MINOR << "."
              << OPENPMDAPI_VERSION_PATCH << std::endl;
    // there is also: OPENPMDAPI_VERSION_LABEL (e.g. "alpha")

    // or query the runtime API (since 0.12.0):
    std::cout << openPMD::getVersion() << std::endl;
    return 0;
}

CLI

# command line option (since 0.12.0):
openpmd-ls --version

franzpoeschel and others added 29 commits April 8, 2026 11:59
* Bump Pybind11 to 3.0.2

* Use cpp_function for defining properties
* Bump versions for toml11 nlohmann_json pybind11

* Return py::object instead of std::variant to pybind11
…PMD#1851)

* Fix keepalives

* Add simple GC test

* Add keepalive for snapshots api

* Add more extensive keepalive test

* Slightly API-breaking.. need to del everything

* tmp, check sth

* tmp check ci

* Revert "tmp check ci"

This reverts commit 1cf6973.

* Revert "tmp, check sth"

This reverts commit 93ed467.

* Fix typing issues with load/store_chunk in Python
These are prefixed by test*, so they already run separately.
* CI: Fix AppVeyor x64 (64bit) build: Architecture not part of `-G` anymore, maybe `-A x64`
* Fix instantiations for AttributeWithShapeAndResource
* `PatchRecordComponent`: Match Identical Types
* Consistency: `dtype_to_numpy` and `dtype_from_numpy`
* Update: `APITest.py` `testDataset`

Co-authored-by: Franz Pöschel <franz.poeschel@gmail.com>
* Fix typing issues with load/store_chunk in Python

* Datatype helpers: non-template variants

* Unify Datatype equality semantics

* replace operator==(Datatype, Datatype) by isSame
Replicate a Golang-inspired defer pattern in order to ensure resource cleanup also upon early return.

---------

Co-authored-by: AI Agent <ai@anthropic.com>
)

* Fix sticky permissions

* Use the helpers only privately
…D#1860)

* attempt to fix issue openPMD#1859 by caching the index and avoid indexOf() call
for iterations

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Franz Pöschel <franz.poeschel@gmail.com>
* Do not flush if the backend does not support Span API

* Fix flushing logic
This is an initial draft based on commits since v0.17.0.
Categories and items may be adjusted before release.
test/Files_Core/read_nonexistent_attribute.cpp:23:10: fatal error: catch2/catch_to
string.hpp: No such file or directory
   23 | #include <catch2/catch_tostring.hpp>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
* ADIOS2: enable stats by default, starting ADIOS2 v2.12.0

This PR ornladios/ADIOS2#4985 changes things a bit performance-wise.
* Update toml11 to current main tag

b32a2fff0d27e1f7522f26a125101500ddb47156

* Define TOML11_DISABLE_SOURCE_LOCATION (up for discussion)
* Delete stray inc_ref

* Reaquire the GIL for releasing references to Python buffers

* Use std::optional for simplified explicit destruction

* Make Iterator GIL free

* Add this also for other flushing methods
* Migrate to Catch2 v3


Co-authored-by: Franz Pöschel <franz.poeschel@gmail.com>
retrigger ci
dependabot Bot and others added 5 commits June 22, 2026 16:23
Bumps [actions/checkout](https://github.com/actions/checkout) from 6 to 7.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v6...v7)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
The "MSVC w/o MPI via pip" job failed on the windows-latest runner after
it upgraded to Visual Studio 2026 (VS 18):

    Generator NMake Makefiles does not support platform specification,
    but platform x64 was specified.
    CMAKE_C_COMPILER not set, after EnableLanguage

`pip wheel` builds in an isolated environment that installs CMake per
pyproject.toml's build requirement. The `<4.0.0` cap pinned that CMake to
3.x, which predates the "Visual Studio 18 2026" generator (added in CMake
4.2), so CMake fell back to "NMake Makefiles" and rejected setup.py's
`-A x64`.

Drop the CMake upper bound so the isolated build uses a current CMake that
auto-detects the VS 2026 generator, matching the runner's own CMake that
the non-pip MSVC job already builds with. Also bump the job to Python 3.11.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The license metadata was replaced with a standard SPDX identifier.
@ax3l ax3l self-requested a review June 22, 2026 23:30
@ax3l ax3l self-assigned this Jun 22, 2026

@ax3l ax3l left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great, I'll tag the release now.

@ax3l ax3l merged commit f0033b4 into openPMD:release-0.17.1 Jun 23, 2026
28 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants