umfive
umfive is a Python open source library for representing UK Met
Office PP and UM fields file datasets
with CF-netCDF-like structures that
follow the API of pyfive, an HDF5
reader.
Read the umfive documentation
This is NOT an alternative to pyfive, it is a package which makes pp and fields files look like and taste ("quack like") chunked HDF5 files written by a NetCDF library.
API Contract (umfive vs pyfive)
umfive is designed to be pyfive-compatible as far as likely users of pyfive
would need such compatability. That is, it produces a chunk index (for kerchunk)
if you really want that, and it supports all the information needed by CF/CFDM
workflows to make pp-data as CF-compliant as possible.
For the canonical pyfive interface, see the pyfive docs:
What maps directly to pyfive
umfive.Fileis registered as aumfive.Filevirtual type (whenumfiveis installed).umfive.Variableis registered as aumfive.Datasetvirtual type.- File/root-level members expected by pyfive-style callers are present:
attrs,groups,variables,dimensions,name,path,parent
- Mapping-style access works:
f["var"], iteration over variables,items(),len(f)
- Dataset-like variable members needed by downstream consumers are present:
shape,dtype,ndim,size,attrs,chunks/chunk_shape,file,parent- slicing/indexing via
__getitem__(for examplef["var"][:]) read_direct,astype(...),iter_chunks(...)
Like pyfive, umfive is read-only:
- `File(..., mode="r")` is supported; write/update modes are not.
Important differences from pyfive
- No nested groups in PP/Fields model:
f["group/var"]is not supported.groupsexists for compatibility but is empty for current PP/Fields inputs.
get_lazy_view(...)fallback behavior:pyfive-style API entry exists, but returns the normal variable view with an info log.
- Some Dataset properties are intentionally placeholders (
None) because they are not meaningful for PP/Fields records:compression,compression_opts,shuffle,fletcher32,maxshape,fillvalue,dims,scaleoffset.
- Compatibility metadata is synthesized for CF/cfdm bridging:
- dimension-scale datasets and
DIMENSION_LISTare created where needed. - rotated-grid helper variables (for example
latitude,longitude,rotated_latitude_longitude) may be exposed when implied by UM headers.
- dimension-scale datasets and
- umfive-specific extension API:
File.set_parallelism(thread_count=..., cat_range_allowed=...)is provided byumfiveand is not part ofpyfive.
Practical expectation
If your code treats umfive.File as a pyfive-like read object,
common analysis workflows should work, including chunk-level access (PP records
are treated as chunks).
Authorship
Key authors of this package are:
- David Hassell (@davidhassell)
- Alan Iwi (@alaniwi)
- Bryan Lawrence (@bnlawrence)
Metadata
Release files for umfive 0.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| umfive-0.4.0.tar.gz | 20.0 MB | Details |
Built distributions (wheels)
Total release size: 21.4 MB
Release files / umfive-0.4.0.tar.gz
| Download URL | umfive-0.4.0.tar.gz |
|---|---|
| Size | 20.0 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b246209cf306ddff20e0b98ac423e08f88125a91f83fd2ca280df5c4c5eb4f79
|
|
BLAKE2b-256 checksum How to use checksums |
e395a2da1d9b875152f5c285a3f0c97c5bbfa91cb2e2d50c772e796389408038
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.
Transparency logRelease files / umfive-0.4.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | umfive-0.4.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 189.0 kB |
| Tags | CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
2621fc342bd0f2a555a34ce615677d6666e75dca5046d6663e72292e09c39f94
|
|
BLAKE2b-256 checksum How to use checksums |
8ecbeb0b9e8a33382ebc514834010e179e2e16e98adc983eed77af491a8dee51
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.
Transparency logRelease files / umfive-0.4.0-cp314-cp314-macosx_11_0_arm64.whl
| Download URL | umfive-0.4.0-cp314-cp314-macosx_11_0_arm64.whl |
|---|---|
| Size | 160.4 kB |
| Tags | CPython 3.14 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
51a686f2e37b47c63c2f33477e663b2bde655e19a881a12b32b8d809d78925bf
|
|
BLAKE2b-256 checksum How to use checksums |
2d73c12bdc50bd547fd43fc9bb931c0ce086a946423b0881ef411086e12ed980
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.
Transparency logRelease files / umfive-0.4.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | umfive-0.4.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 188.9 kB |
| Tags | CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
66b32e70d2a6fbc0fe4263611815e2fec78833a2c38c2a6e202e1f0f382facae
|
|
BLAKE2b-256 checksum How to use checksums |
23d9e685ce7da47c93d09206b12822ed751a129cb82cada06c7938e90bd14073
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.
Transparency logRelease files / umfive-0.4.0-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | umfive-0.4.0-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 160.4 kB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
5f439324d5fdd3f7df970ce4383f8d0a926937a40576e9ac0241e1d4bcae115c
|
|
BLAKE2b-256 checksum How to use checksums |
78e0bbfa6c6c0b981877f60c5b85e46ab0e3f5688ce409d387bc125759ebc1f4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.
Transparency logRelease files / umfive-0.4.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | umfive-0.4.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 188.8 kB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
6fd897806bb37d8b011f57a9ef901c80ebe3293cd654a6e5c8e28a66d31964bc
|
|
BLAKE2b-256 checksum How to use checksums |
cd4a77fe45360688a63fd7cc9163b52ec426d431653f43778f23b5f2a2e4795d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.
Transparency logRelease files / umfive-0.4.0-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | umfive-0.4.0-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 160.4 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
5e4a9fd1f52337e6a7b5f32c0040f1610493a35cdffe5b05d84840f266a20763
|
|
BLAKE2b-256 checksum How to use checksums |
bac1fb2008e343bd74b8050c3159c7cbadab6030fb0f4e325bb239d084c53024
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.
Transparency logRelease files / umfive-0.4.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | umfive-0.4.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 189.0 kB |
| Tags | CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
1b9baa4f3f5608aa24d173e97b4be80b2bbab7d0648ae5a026eb1c69adf975f0
|
|
BLAKE2b-256 checksum How to use checksums |
bc582c54b620ed9afbb8da104a1d4747f9d16ec9e33bc6d6507d2625a5101a91
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.
Transparency logRelease files / umfive-0.4.0-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | umfive-0.4.0-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 160.2 kB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
b324c21dc1f9b0bfd23dbb35f46279414b9de62bc2567d3ee75bd24bbf2afbfe
|
|
BLAKE2b-256 checksum How to use checksums |
140ef0ef5125285e3adea5b85223ab5a7286a3db12d2e334da59839629f44202
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.
Transparency log