llnl / llnl/axom

Python sidre interface features

Open
#1,609 0 comments 0 reactions 1 assignee View on GitHub

@bmhan12 is already working on this.

Since Jul 9, 2025.

enhancement Python Reviewed Sidre
Dominant language
C++
Stars
196
Forks
34
Avg merge
4d 1h
Merged PRs (30d)
11

Description

List of python Sidre interface features:

  • Export/package Axom's python libraries. (setup.py? pyproject.toml? others?)
  • Create bindings for the rest of the C++ Sidre interface where possible
  • Make the interface more pythonic (reference doc: https://peps.python.org/pep-0008/#function-and-variable-names)
  • Integrate better with numpy (add support for more numpy data types) or other python libraries
  • Add blueprint support
    • Enable/disable support if Conduit was/was not built with python support. Add when other Axom components have python support added (other components do not strictly require conduit+python support). EDIT: sidre requires conduit, so axom+python will require conduit+python.
  • Check that we're not leaking memory
  • Add support for iterating the groups/views/buffers
  • Test python interface in Docker images (GHA)
  • Test python interface on Windows
  • Add support for custom structs / opaque types (if possible and desired. )
  • (optional) Interoperate with other python bindings, e.g. conduit, blueprint, hdf5, mpi (?) EDIT: conduit, mpi added.
  • (optional?) Expose, test allocations on device

Formatted from PR comment: https://github.com/LLNL/axom/pull/1594#pullrequestreview-2967402583

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.