Metadata-Version: 2.4
Name: prepper
Version: 1.7.1
Summary: Allows python objects to be stored and loaded from an HDF5 file in a language-agnostic manner
Author-email: Varchas Gopalaswamy <varchas@gopalaswamy.org>
License-Expression: MIT
Classifier: Programming Language :: Python :: 3
Requires-Python: <3.15,>=3.14
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy
Requires-Dist: pydantic-settings>=2.15.0
Requires-Dist: h5py>=3.8.0
Requires-Dist: loguru>=0.6.0
Requires-Dist: aenum>=3.1.11
Provides-Extra: xarray
Requires-Dist: xarray; extra == "xarray"
Requires-Dist: h5netcdf; extra == "xarray"
Provides-Extra: units
Requires-Dist: pint>=0.26.1; extra == "units"
Provides-Extra: uncertainties
Requires-Dist: auto_uncertainties; extra == "uncertainties"
Provides-Extra: periodictable
Requires-Dist: periodictable; extra == "periodictable"
Provides-Extra: equinox
Requires-Dist: equinox; extra == "equinox"
Requires-Dist: jax; extra == "equinox"
Dynamic: license-file

# Prepper

Store Python objects, populated cached properties, and method caches in HDF5.
Requires Python 3.14 (`>=3.14,<3.15`). Python 3.15 support is deferred until
compatible h5py wheels are available; see [h5py#2972](https://github.com/h5py/h5py/issues/2972).

## Comparison settings

Set `PREPPER_COMPARE_RTOL` before importing Prepper to choose the relative tolerance
used for numeric equality and serialization deduplication:

```bash
export PREPPER_COMPARE_RTOL=1e-6
```

The default is `1e-5`. Set it to `0` for exact comparisons. Values must be finite
and nonnegative.
