Skip to main content

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.File is registered as a umfive.File virtual type (when umfive is installed).
  • umfive.Variable is registered as a umfive.Dataset virtual 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 example f["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.
    • groups exists 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_LIST are created where needed.
    • rotated-grid helper variables (for example latitude, longitude, rotated_latitude_longitude) may be exposed when implied by UM headers.
  • umfive-specific extension API:
    • File.set_parallelism(thread_count=..., cat_range_allowed=...) is provided by umfive and is not part of pyfive.

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)

Source distribution for umfive 0.4.0
File Size Uploaded
umfive-0.4.0.tar.gz 20.0 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for umfive 0.4.0
File
umfive-0.4.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
umfive-0.4.0-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
umfive-0.4.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
umfive-0.4.0-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
umfive-0.4.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
umfive-0.4.0-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
umfive-0.4.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
umfive-0.4.0-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details

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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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 log

Release 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

Release history Release notifications | RSS feed

This release

0.4.0 This release

9 release files

0.3.0

9 release files

0.2.2

9 release files

0.2.1

9 release files

0.2.0

9 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page