openPMD Validator Scripts
This repository contains scripts to validate existing files that (claim to)
implement the openPMD Standard
in version 1.1.*.
Additional scripts to create random/empty files with the valid markup of the standard are also provided.
Rationale
These tools are intended for developers that want to implementent the standard. They were written to allow an easy implement-test-correct workflow without the hazzle to check every word of the written standard twice.
Nevertheless, these scripts can not validate 100% of the standard and uncovered sections shall be cross-checked manually with the words of the written standard.
For more information on requirements for implementations, please refer to the section Implementations of the openPMD standard. The repository openPMD-projects also lists a large collection of open source projects that already implement the openPMD standard.
Install
Choose one of the install methods below to get started:
PyPI
# optional: append --user
pip install openPMD-validator==1.1.0.6
Spack
spack install py-openpmd-validator@1.1.0.6 ^py-h5py~mpi
spack load --dependencies py-openpmd-validator@1.1.0.6 ^py-h5py~mpi
Conda
conda install -c conda-forge openpmd-validator
From Source
wget https://github.com/openPMD/openPMD-validator/archive/1.1.0.6.tar.gz
tar -xf 1.1.0.6.tar.gz
cd openPMD-validator-1.1.0.6/
# optional: append --user
python setup.py install
Usage
CLI
We provide the command-line tools for individual files:
# optional: create dummy example files
openPMD_createExamples_h5
# validate
openPMD_check_h5 -i example.h5
# optional: append --EDPIC for the Partice-in-Cell Extension
Module
Additionally, the validator tools can be used as Python module in your projects, e.g. to verify a file before opening it for reading.
Create:
from openpmd_validator import createExamples_h5
# create "example.h5"
createExamples_h5.main()
Check:
from openpmd_validator import check_h5
result_array = check_h5.check_file("example.h5", verbose=False)
print("Result: %d Errors and %d Warnings."
%( result_array[0], result_array[1]))
Development
The development of these scripts is carried out per-branch. Each branch corresponds to a certain version of the standard and might be updated in case tests did contain bugs or we found a way to cover more sections of the standard.
Metadata
Release files for openPMD-validator 1.1.0.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| openPMD-validator-1.1.0.6.tar.gz | 16.4 kB | Without provenance | Details for openPMD-validator-1.1.0.6.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| openPMD_validator-1.1.0.6-py3-none-any.whl | Python 3 | none | any | Details for openPMD_validator-1.1.0.6-py3-none-any.whl |
Total release size: 33.6 kB
Release files / openPMD-validator-1.1.0.6.tar.gz
| Download URL | openPMD-validator-1.1.0.6.tar.gz |
|---|---|
| Size | 16.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6ac3c744b2e0f5cdb6d89ee265b8c5d33bc2bf0fcbbd71a75dfd1d82f5d292ca
|
|
BLAKE2b-256 checksum How to use checksums |
8fdc43d986b4230920f59e8764fad1302769e9cb77864079d2296f762816749b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.10.12
|
Release files / openPMD_validator-1.1.0.6-py3-none-any.whl
| Download URL | openPMD_validator-1.1.0.6-py3-none-any.whl |
|---|---|
| Size | 17.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5a3de687ef98d0054d5484a4c27951b6a0c51fa87db608a312e89ec4f002bb73
|
|
BLAKE2b-256 checksum How to use checksums |
8c55ef3f3ceb1db7938e92117f952e23d0348cad3dfdc98d55adbf915621efe2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.10.12
|
Security for openPMD-validator 1.1.0.6
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.