Skip to content

CPDataKit v0.1.1 - Secure distribution and a five-minute path to value

Choose a tag to compare

@17636365690 17636365690 released this 17 Aug 04:25
· 21 commits to main since this release
92f49d8

CPDataKit v0.1.1 - Secure distribution and a five-minute path to value

This maintenance release prepares CPDataKit for secure, low-friction distribution without changing
its solver-neutral data contract or public Python API. It adds a deterministic five-minute
quickstart, clearer installation guidance, complete package links, and a scientifically scoped
social preview.

Validation now fails closed for malformed custom schemas and incompatible boolean or numeric
values. Per-record numeric arrays enforce integer and range constraints; duplicate detection safely
handles nested arrays and mappings; affine unit conversions preserve both scale and offset; and
malformed CPDataKit HDF5 tables and unsupported histogram fields return concise domain errors.

The PyPI workflow builds only from an existing semantic-version tag, verifies that the tag,
pyproject.toml, runtime version, citation metadata, changelog, and release notes agree, checks both
distributions with Twine, and publishes through short-lived OIDC credentials after an explicit
GitHub environment approval. No long-lived PyPI token is stored in the repository.

CPDataKit validates explicit schemas, units, provenance, and data-quality constraints. It does not
certify physical correctness, read ODB or DAMASK DADF5, run a solver or UMAT, or infer scientific
conventions. All bundled examples remain fixed-seed synthetic data.

Before publishing, the full Windows/Ubuntu Python 3.10-3.13 matrix passed alongside 51 local tests,
Ruff, package build, Twine checks, a clean wheel installation, and the quickstart smoke test.