MEF 3.0 read/write — one C++ core with Python bindings (MATLAB via MEX)
Project description
mef3io
A single C++ core for MEF 3.0 read/write, wrapped for Python (nanobind)
and MATLAB (MEX). The high-level semantics of the legacy mef_tools —
float scaling, NaN discontinuities, precision inference, the int32-counts +
conversion-factor primitive write path — live in C++, so every language
binding behaves identically.
Documentation: https://bnelair.github.io/mef3io/ — install, Python / MATLAB / C++ guides, the MEF 3.0 format reference, and measured comparisons against the legacy stack.
Status
Read and write are implemented and cross-validated against the legacy
pymef / mef_tools stack in both directions (~112 Python tests + standalone
C++ tests). Scope notes:
- Video (
.vidd/.vmet/.vidx) is out of scope (traversal skips it). - Encryption is none or fully-encrypted (section 2 → L1 key, section 3 → L2 key); "level-1 only" is not a valid MEF file — see docs/encryption_model.md. Unlike the legacy reader, an L1 password actually works (signal + technical metadata, subject metadata locked) — see docs/legacy_comparison.md.
- Records: read/write Note, EDFA, SyLg, Seiz (others read as header-only).
- Pure-Python backend: not yet implemented (
backend="pure"raises). - Append extends the channel's last segment in place (legacy semantics);
new_segment=Trueforces a fresh segment.
Full docs live at https://bnelair.github.io/mef3io/ (built from
docs/ with MkDocs Material, deployed by .github/workflows/docs.yml).
In-repo: docs/mef3_format.md (format reference),
docs/design.md (design),
docs/legacy_comparison.md (measured performance
- encryption comparison), benchmarks/README.md,
runnable examples/, and
CLAUDE.md.
Install
Python — prebuilt wheels (no compiler needed) for Linux (x86_64/aarch64), macOS (arm64/x86_64), and Windows (AMD64/ARM64), Python 3.10+:
pip install mef3io # runtime (numpy only)
pip install "mef3io[test]" # + oracle tests (pymef, mef-tools, pandas, pytest)
pip install "mef3io[bench]" # + NWB-Zarr benchmark stack
MATLAB — download the mef3io-matlab-vX.Y.Z.zip bundle from the GitHub
release (classes + CI-tested MEX for all platforms, one addpath), or compile
once on your machine (needs a C++20 compiler configured via mex -setup C++;
~30 s). See matlab/README.md:
run('<repo>/matlab/build_mex.m'); addpath('<repo>/matlab')
r = mef3io.Reader('session.mefd'); x = r.read('ch1');
From source (Python development) — needs CMake ≥ 3.26 and a C++20 compiler; uses the active env's Python:
scripts/dev_build.sh # builds build/dev, symlinks the extension into python/mef3io
python -m pytest tests # conftest sets up paths; needs pymef/mef-tools as oracle
python -m build --wheel # build a wheel
All bindings share one version: the repo-root VERSION file feeds the wheel
metadata, mef3io::version() in C++, and the MEX build.
The legacy mef-tools package (PyPI; import name mef_tools) is the
correctness oracle and benchmark baseline: the test/benchmark scripts use a
local mef_tools checkout when run inside the original repo, and otherwise the
pip-installed mef-tools — so a standalone checkout just needs
pip install "mef3io[test]" (or [bench]).
Usage
import numpy as np, mef3io
# Write. NaN = discontinuity gap; precision inferred if omitted.
with mef3io.Writer("session.mefd", overwrite=True, units="uV") as w:
w.write("eeg1", float_signal, start_uutc, fs=256.0)
# amplifier counts + V/bit, stored verbatim:
w.write_int32("eeg2", counts_int32, ufact=2.5e-7, start_uutc=start_uutc, fs=256.0)
w.write_annotations([{"time": start_uutc, "text": "note"}], channel="eeg1")
# Read. Partial reads by uUTC; gaps are NaN; scaled by the conversion factor.
with mef3io.Reader("session.mefd", n_threads=0) as r: # 0 = all cores
r.channels
r.info("eeg1")
x = r.read("eeg1", t0, t1) # float64, NaN gaps
xi = r.read_raw("eeg1", t0, t1) # {samples: int32, valid: mask, ...}
r.segments("eeg1") # per-segment map: what data is where
r.toc("eeg1") # block index for viewers/seeking
r.records("eeg1") # annotations
Warm-start metadata cache (opt-in)
Off by default. cache="auto" snapshots channel metadata into the per-user OS
cache dir (safe for read-only sessions); a path makes it persistent. Warm opens
serve channels/info without touching the tree and defer the backend until a
data read. Invalidated automatically on any size/mtime change or on write.
mef3io.Reader("session.mefd", cache="auto") # temp/OS cache dir
mef3io.Reader("session.mefd", cache="/data/s.cache") # persistent
Drop-in for existing pipelines
# from mef_tools.io import MefReader, MefWriter
from mef3io import MefReader, MefWriter
Same call shapes and semantics as the legacy classes (NaN-gap splitting, precision inference, int32 arrays via the primitive path, in-segment appends). See examples/07 and docs/legacy_comparison.md.
Parallelism
RED block decode and encode run on an internal thread pool (n_threads: 0 =
hardware concurrency, 1 = serial; per-call override on reads). Output is
byte-identical regardless of thread count. Bindings release the GIL, so
external dataloader parallelism is safe too.
Layout
core/ C++17/20 library (types, byteio, crc, crypto, headers, metadata,
red, session, reader, records, writer, session_writer) + Catch2 tests
bindings/ nanobind extension (_mef3io)
python/mef3io/ Reader, Writer, compat (mef_tools.io shim), cache, pure (stub)
matlab/ MEX gateway over the C ABI (core/include/mef3io/c_api.h),
+mef3io Reader/Writer classes, build_mex.m, test_mef3io.m
examples/ runnable scripts: write/read, int32, append, segment map,
annotations, encryption, legacy drop-in, replicability checks
tests/ golden fixture generator + P1–P9 pytest suites (pymef oracle)
benchmarks/ bindings + legacy/NWB-Zarr comparison scripts
docs/ MkDocs site source (guides, format reference, legacy comparison)
scripts/ dev_build.sh (dev build + extension symlink)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mef3io-1.0.0.tar.gz.
File metadata
- Download URL: mef3io-1.0.0.tar.gz
- Upload date:
- Size: 362.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9e935181aa8cc7c174df4c4298ae2e153d41e16c66f8e7590244c760e33b2db2
|
|
| MD5 |
389b30afbdbb38576d9e6703ff622451
|
|
| BLAKE2b-256 |
86aa654ed174ea87ad27573d5244c19f87b00bcb1440d312a89c758a581f1a8e
|
File details
Details for the file mef3io-1.0.0-cp314-cp314-win_arm64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp314-cp314-win_arm64.whl
- Upload date:
- Size: 196.7 kB
- Tags: CPython 3.14, Windows ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
79f6ffb2a0234234a66dd70835b5a86bf609e70e19e7ccde6e1f50dfc4b085e4
|
|
| MD5 |
816c732d7760a1194abe011cf9b76551
|
|
| BLAKE2b-256 |
f6a153062e0c5a513eafa564746ab04ae48c572ffd57aa1f59e2ca09ed6433d4
|
File details
Details for the file mef3io-1.0.0-cp314-cp314-win_amd64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp314-cp314-win_amd64.whl
- Upload date:
- Size: 210.3 kB
- Tags: CPython 3.14, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7e444cf5f9c30733a7bc75d8fdb34cda64d7dcfdd19070813c0ad13999fb6df5
|
|
| MD5 |
6e19c154536dc3eb9cfd2ac218db85e5
|
|
| BLAKE2b-256 |
8bf80f7c0d43c6f13818f19f15aa0e55f25cbd07314bd1de9dbe443b2a5c8cf2
|
File details
Details for the file mef3io-1.0.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 344.0 kB
- Tags: CPython 3.14, manylinux: glibc 2.27+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c530d02111e6f312604ab39768c322071bdb3b59c90f6978db5b992e8e1237c6
|
|
| MD5 |
ea9d706b2949e866ee381923bd146eb7
|
|
| BLAKE2b-256 |
3e83fd263f1b68aeff63e614f2e9acc5a3ca5fb4727cba1626033a2c72504cef
|
File details
Details for the file mef3io-1.0.0-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 300.5 kB
- Tags: CPython 3.14, manylinux: glibc 2.26+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
88d66be0ce9a3b04437b3ec4d87af2d2eeb8b1a22d7c421ccdc17463e04a0433
|
|
| MD5 |
2a4de8754712456d7783d0db1c79246f
|
|
| BLAKE2b-256 |
806e7dc0a088851ea1d4983c88173176891036f22ea66bbbf09d9b24dc97db0b
|
File details
Details for the file mef3io-1.0.0-cp314-cp314-macosx_11_0_arm64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp314-cp314-macosx_11_0_arm64.whl
- Upload date:
- Size: 186.7 kB
- Tags: CPython 3.14, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f6dd4bd5fc005d206239b6b2f548b851580cb24cd53a889560d8b01434ecc3ca
|
|
| MD5 |
e736d99065d21a8782db2a9d102810c1
|
|
| BLAKE2b-256 |
bec6ff1dc0a82f86dd5de584e8e61cef50b4d04853d2766db956bbb89b5a3e05
|
File details
Details for the file mef3io-1.0.0-cp314-cp314-macosx_10_15_x86_64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp314-cp314-macosx_10_15_x86_64.whl
- Upload date:
- Size: 201.0 kB
- Tags: CPython 3.14, macOS 10.15+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0796a6a6ade00f86764b01a6666781888e20f09dfcaaa8bf080b81cb478b1547
|
|
| MD5 |
1f42509412cf7f2cf1d86cc6af7ec919
|
|
| BLAKE2b-256 |
fcd9b397c3ff58910148f15dfbd0f0f1ff5617f874447c6ebdad4c5e04ad72c3
|
File details
Details for the file mef3io-1.0.0-cp313-cp313-win_arm64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp313-cp313-win_arm64.whl
- Upload date:
- Size: 191.0 kB
- Tags: CPython 3.13, Windows ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
df0bd35de25bdb0429cefad8a1a2ed3f8a60a043b72d1e7c008facc7daa030f9
|
|
| MD5 |
a91f61f9795bf0d9c9dcb3de20aa3fa2
|
|
| BLAKE2b-256 |
c41b7b4fb0837458b5c18c9daa14278056194bec9b18a23fd1a0e8fd05359402
|
File details
Details for the file mef3io-1.0.0-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 204.8 kB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e7a392b79e98e75ac9af4daca4f9bc0c095b9e51b58067b09f58dc8c0729b5df
|
|
| MD5 |
186ed1944fa6dd2afc621d026a8b1968
|
|
| BLAKE2b-256 |
153942584cf55981140cdb5491efdb2dc6d04877ca48cebcc838a32c830a995e
|
File details
Details for the file mef3io-1.0.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 343.9 kB
- Tags: CPython 3.13, manylinux: glibc 2.27+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6eb3f49da68d7b7209e557b115adcc1a22617dee67529c0e3126a5c196e12dd5
|
|
| MD5 |
cabbe049927e773579e7407464bd9939
|
|
| BLAKE2b-256 |
fa3051322c4263ba15a1d5f052444e4ae20e9217f60487b56130863b6bc6c3e8
|
File details
Details for the file mef3io-1.0.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 300.2 kB
- Tags: CPython 3.13, manylinux: glibc 2.26+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0fcd4f0efbcdc2f4a5511fdd7b378d1bf36061261930e8ce0f647a1008df4f5a
|
|
| MD5 |
cfc164232ac61b15ad6e9f8f1638e49b
|
|
| BLAKE2b-256 |
79c4e8c8259a554af12150133b4c4bbcfbaaf5b7344946cb9133f3f97615f092
|
File details
Details for the file mef3io-1.0.0-cp313-cp313-macosx_11_0_arm64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp313-cp313-macosx_11_0_arm64.whl
- Upload date:
- Size: 186.6 kB
- Tags: CPython 3.13, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1989dcca6fe6d2b671511a89889e7bf22715101fe2a602e355ad274e114bae05
|
|
| MD5 |
f3f1093d05bd1dc92f343d48251e8406
|
|
| BLAKE2b-256 |
973910c7140755dd227fcf20f2bd0a4988939c0c8ea93158ed91536d3d2d7b2d
|
File details
Details for the file mef3io-1.0.0-cp313-cp313-macosx_10_15_x86_64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp313-cp313-macosx_10_15_x86_64.whl
- Upload date:
- Size: 200.9 kB
- Tags: CPython 3.13, macOS 10.15+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1d37b5e9b63f673115774eb6d810764d9e46deba987603ba19703b559d0c3b47
|
|
| MD5 |
a9cb41347d142a6d7deba140c2651c5e
|
|
| BLAKE2b-256 |
e02cd3196428e3b7d236bc63dc62331809ed0204cb5f474511056d3ae6aa7dab
|
File details
Details for the file mef3io-1.0.0-cp312-cp312-win_arm64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp312-cp312-win_arm64.whl
- Upload date:
- Size: 191.0 kB
- Tags: CPython 3.12, Windows ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a972f7cc6e9f63674bd0f68ce7e76aa62b4e7f02907cf11d773bc06e0538ca4f
|
|
| MD5 |
4aadf96422e50884588ae9ad739ded15
|
|
| BLAKE2b-256 |
3fdebe327f5712694c7d9133a46f9236c7c6a0e3adda67929c7c8f3805ffa9ce
|
File details
Details for the file mef3io-1.0.0-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 204.9 kB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
890c023c2b9e555b3011ce2ad4e1d6fc51ddadadfbf2d70fdb9241fd9b8030c2
|
|
| MD5 |
df0e393e873c0bc8d962d560f38898e7
|
|
| BLAKE2b-256 |
2e0d9bf2c7499be54c78bdb113f06eac5914005814c6ec370a3ba2aa34237618
|
File details
Details for the file mef3io-1.0.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 344.0 kB
- Tags: CPython 3.12, manylinux: glibc 2.27+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
250c851d09de66793fe8f7dd88be2ac83bb9ac487ab1173e31effb59ea090835
|
|
| MD5 |
d2837b67dd618e0f73b61602593a6f9a
|
|
| BLAKE2b-256 |
1f4e009d21cf17b3c4d9a1507a84a0b3955e1ba2440c12163a01cdda961e924e
|
File details
Details for the file mef3io-1.0.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 300.2 kB
- Tags: CPython 3.12, manylinux: glibc 2.26+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e0115114f91d0f9d96e61b6d7f24d1ee0f857379e170801e6d27f955f3777709
|
|
| MD5 |
94ce6833a0634eb3582bb0d2332d094e
|
|
| BLAKE2b-256 |
f01083ff3581f1937cf2e37bd2fbd10a90f9d426df88716dc210814ba8052c2d
|
File details
Details for the file mef3io-1.0.0-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 186.6 kB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c8d71398d3e06fe0e803075eb4da0bebb721d892c3775940442c996df3e2a881
|
|
| MD5 |
03e1921ff35924d3b0f0f5c8ffa5cea9
|
|
| BLAKE2b-256 |
3f3fc39fcf9169fa7495db7ec037bebae95ec01c6d9b396a7272a303f461a4c1
|
File details
Details for the file mef3io-1.0.0-cp312-cp312-macosx_10_15_x86_64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp312-cp312-macosx_10_15_x86_64.whl
- Upload date:
- Size: 201.1 kB
- Tags: CPython 3.12, macOS 10.15+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2f61e2d6a1191f4a992243f90ce6abc611c4a60c72c3697c83381a0a6a2a7496
|
|
| MD5 |
c3123622aefa67531d34f19a6c9908e4
|
|
| BLAKE2b-256 |
2961cbeb4a7a77cd5e53a26eb392bbac495f23ccf08d2d61d6e8561653e9151f
|
File details
Details for the file mef3io-1.0.0-cp311-cp311-win_arm64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp311-cp311-win_arm64.whl
- Upload date:
- Size: 191.7 kB
- Tags: CPython 3.11, Windows ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1335b2dd374ac82811d7454a3c1147d14687be93a90ccd04793975e1ae6b7db6
|
|
| MD5 |
b3253c0b91efed5c020a65b24df40f0b
|
|
| BLAKE2b-256 |
f3b5cfd9ace482ba01844a6981bea72cca808277df65b5ddb0ca4cc50706e7ab
|
File details
Details for the file mef3io-1.0.0-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 205.6 kB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4f2f3792c9a153d08e6bb488d8bf5fa22f332058bc214d02b981e72a29a276ab
|
|
| MD5 |
38ae077124c7fa0ecf5790434acb718c
|
|
| BLAKE2b-256 |
5ff48f4c0d64679ebdaf6c42ca2a6d3f87615c0efccf5a5be74de4fe026b08e9
|
File details
Details for the file mef3io-1.0.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 345.3 kB
- Tags: CPython 3.11, manylinux: glibc 2.27+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6de61a2b999fd32bda53ec5ee9acd94c8038786db52f8b115d5fb3c4725467ec
|
|
| MD5 |
923c3bc4bfe13b557d3f8088adee2590
|
|
| BLAKE2b-256 |
c6cc634ba4e529b1d609ea651b2b8ef40da3cafd85db1635b6899f8dabe7e3da
|
File details
Details for the file mef3io-1.0.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 301.5 kB
- Tags: CPython 3.11, manylinux: glibc 2.26+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
befa9e7e0147dd61ded5121f5301faaef338ee02009a7823551d8aff58533310
|
|
| MD5 |
1c9e1d949030f619cadce3fc83e83df8
|
|
| BLAKE2b-256 |
6d780d80386a6645fd10570d4c4baa01a1621e24ac6e1c4262b58befba927dbd
|
File details
Details for the file mef3io-1.0.0-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 187.6 kB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c9a660ed4912c2eeae5f111a6ba2b4e4c5e519c9e32bbb180d6a9797ee95745b
|
|
| MD5 |
16d1c085db2cfe7b11c586ef36cec320
|
|
| BLAKE2b-256 |
cabadb7899e27117c68afc6283f6a04c23a2687714fcdad46b9b71d1bb5c4b3f
|
File details
Details for the file mef3io-1.0.0-cp311-cp311-macosx_10_15_x86_64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp311-cp311-macosx_10_15_x86_64.whl
- Upload date:
- Size: 201.8 kB
- Tags: CPython 3.11, macOS 10.15+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c978e7c617df288a8445eb43f53aea62ea7ccf3767a19797c77004a8ee9abbc6
|
|
| MD5 |
3802f0e9d40fcbb95c6d89c3d0ca8eb5
|
|
| BLAKE2b-256 |
82ae1c2ef035ac6d7e680e4a4b612c7e6a25f9bf53f8f5147ea04f0432bdaab2
|
File details
Details for the file mef3io-1.0.0-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 205.8 kB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d44583ea89bc55d031c80a3e88a7c5c686a2d6a1179eba3fdd98118389826ed7
|
|
| MD5 |
eebc675c8c4538b2f56cf6375fc87555
|
|
| BLAKE2b-256 |
7e985d92511ef2c7b528035eba8400a3e22c2a4a1df2cce798e7c5833d735aa4
|
File details
Details for the file mef3io-1.0.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 345.7 kB
- Tags: CPython 3.10, manylinux: glibc 2.27+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
07276f32ee01ee7a3db2feedcaa8bef09667354b15e6976e8bdeccf5fca8d3a5
|
|
| MD5 |
69d5e6943bf66557468143b4b896e1d5
|
|
| BLAKE2b-256 |
d4f2e629a5c3b2e9d10d3584d8375eec40845348dc28bdede8a209111eabdfb9
|
File details
Details for the file mef3io-1.0.0-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 301.9 kB
- Tags: CPython 3.10, manylinux: glibc 2.26+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
594691a47d9c75c869d62e78596817ef46e1a44091df27ecae7b71786108d75d
|
|
| MD5 |
acce600ebb4283ecb220de74ececb228
|
|
| BLAKE2b-256 |
41acf95418da66c4e4fba3056ee7a5b00b65c3fda837b31931b8e436b873eab6
|
File details
Details for the file mef3io-1.0.0-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 188.0 kB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
23f548915f1556e929727befb9623d780dd5fece7009867156397b0ad9d4063a
|
|
| MD5 |
0f8bc1d6c3edad9d2f37e0fbddbaca4d
|
|
| BLAKE2b-256 |
6bdf06be8930cfc0007b87722bced6725846c844fbf1781dc681d6a6876b8fec
|
File details
Details for the file mef3io-1.0.0-cp310-cp310-macosx_10_15_x86_64.whl.
File metadata
- Download URL: mef3io-1.0.0-cp310-cp310-macosx_10_15_x86_64.whl
- Upload date:
- Size: 202.2 kB
- Tags: CPython 3.10, macOS 10.15+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9a44685a51d6f074fa41166e5f0066f1e22a25a29eb26a56b6e247ce32315fa9
|
|
| MD5 |
833d05b5d9e5676f5980b88d53695069
|
|
| BLAKE2b-256 |
61b861dafa6ff84141f4f7a499a5f16118d4d5aaa74dcdb840fd40cdf891a4e1
|