Skip to main content

WIMF - Worst IMage Format

PyPI Python CI License

Worst Image Format

WIMF is an experimental, versioned image codec with a Python frontend and a portable C++17 backend. New still images use the WIM2 hybrid container: every 128×128 tile independently chooses Raw, Predictive, Palette, or CDF Wavelet coding and records its mode, entropy backend, bounds, size, offset, and checksum.

Highlights

  • Per-tile hybrid selection with Fast, Balanced, and Extreme search presets.
  • Exact lossless coding and quality-controlled CDF 9/7 lossy wavelets.
  • Palette coding for local regions with at most 256 colors.
  • Spatial prediction with row-level predictor selection.
  • Independently decodable tiles for bounded ROI reads.
  • RGB, RGBA, grayscale, and 8/10/16-bit pixel pipelines.
  • Zstandard-compressed structured symbols and per-tile CRC32 checksums.
  • Optional WIM2 anti-rot data capable of repairing up to two damaged shards.
  • Indexed WIM2 chrono states with random state decoding.
  • Portable C++17 kernels with NEON and AVX2 SIMD acceleration and a Python reference fallback.

Known limitations

Compression ratios are actively improving. WIMF 2.2 introduced content-adaptive wavelet quantization, improved Zstandard compression levels, and quadratic rate-distortion scoring. The encoder now produces significantly smaller output for most workloads, but further tuning is expected in future releases without breaking decode compatibility.

Benchmarks and comparative metrics against PNG, WebP, AVIF, JPEG, and JPEG XL will be published separately once the codec reaches a stable performance baseline.

Installation

Install the published package with Python 3.10 or newer:

python -m pip install wimf

Precompiled wheels are published for Linux x86-64, Windows x86-64, macOS Intel, and macOS Apple Silicon across CPython 3.10–3.14. A matching wheel does not require a local compiler.

For development:

git clone https://github.com/benchware/WorstImageFormat.git
cd WorstImageFormat
python -m pip install -e .

Source installations require a C++17 compiler and pybind11; the Python fallback remains usable when the native extension is unavailable.

Choose a configuration

Goal Recommended settings Notes
General photographs quality=7, preset="Balanced", codec="auto" Default; lets every tile choose its best family.
Maximum compression search preset="Extreme", codec="auto" Evaluates every eligible tile mode and encodes more slowly.
Fast preview or batch work preset="Fast", codec="auto" Evaluates one classified mode plus Raw fallback.
Exact archival pixels lossless=True, codec="auto" Chooses the smallest exact candidate per tile.
Force photographic coding codec="wavelet" CDF 9/7 lossy or reversible CDF 5/3 lossless.
Flat graphics and icons codec="palette" Uses a local palette where eligible and Raw fallback otherwise.
Text and sharp edges codec="predictive" Reversible spatial prediction in lossless mode.
Diagnostic baseline codec="raw" Minimal codec logic; usually the largest output.

Quality ranges from 1 through 10. Every quality is continuously tested under Fast, Balanced, and Extreme; the preset changes search effort, while quality controls lossy quantization.

Python API

from PIL import Image
import wimf

image = Image.open("photo.png")

# Balanced per-tile selection is the default.
output = wimf.save("photo.wimf", image, quality=7)

# Exact reconstruction and explicit legacy output.
wimf.save("exact.wimf", image, lossless=True)
wimf.save("legacy.wimf", image, lossless=True, format_version=1)

decoded = wimf.open("photo.wimf")
decoded.pil.save("decoded.png")

# Memory-only applications can use bytes directly.
payload = wimf.encode(image, lossless=True, metadata={"author": "Arrow"})
decoded = wimf.decode(payload)
details = wimf.inspect(payload)

codec accepts auto, wavelet, predictive, palette, or raw. preset accepts Fast, Balanced, or Extreme.

Complete save options

Option Values Default Meaning
quality 110 7 Lossy quality and rate-distortion target.
lossless Boolean False Require exact pixel reconstruction.
preset Fast, Balanced, Extreme Balanced Number of candidate modes evaluated per tile.
codec auto, wavelet, predictive, palette, raw auto Automatic hybrid selection or forced family.
format_version 1, 2 2 WIM2 output or explicit legacy WIMF output.
threads positive integer or None None Conservative automatic count or explicit tile workers.
anti_rot Boolean False Append WIM2 protection capable of bounded recovery.
metadata dictionary {} Application metadata stored in the container.

ROI decoding

decoder = wimf.WIMFDecoder("large.wimf")
region = decoder.decode(roi=(1024, 768, 640, 480))

Only intersecting WIM2 tile payloads are decompressed.

Anti-rot and chrono history

encoder = wimf.WIMFEncoder(image).set_anti_rot()
encoder.add_chrono_state(edited_image)
payload = encoder.encode(lossless=True)

decoder = wimf.WIMFDecoder(payload)
original = decoder.decode_chrono_state(0)
edited = decoder.decode_chrono_state(1)
print(decoder.was_protected, decoder.was_repaired)

WIM2 extensions are appended after the base tile payload. Existing WIM2 files remain valid and older readers can still decode the primary image.

Metadata without recompression

updated = wimf.rewrite_metadata(payload, {"author": "Arrow", "license": "CC0"})

WIM2 tile payloads remain byte-for-byte identical. Tile offsets and checksums are recalculated, history is retained, and anti-rot protection is regenerated when present.

Text transports

text = wimf.to_base64(payload, wrap=76)
assert wimf.from_base64(text) == payload

assert wimf.from_base16(wimf.to_base16(payload)) == payload
assert wimf.from_base32(wimf.to_base32(payload)) == payload

url = wimf.to_data_url(payload)
assert wimf.from_data_url(url) == payload

These helpers use strict RFC 4648 parsing, bounded input sizes, and whitespace-tolerant decoding. Data URLs use Base64 and the image/x-wimf MIME type. Base16, Base32, and Base64 are transport encodings-not compression-and expand data by roughly 100%, 60%, and 33%, respectively.

Runtime diagnostics

print(wimf.runtime_info())

The result reports whether native kernels are active, architecture, SIMD path, hardware and effective thread counts, codec version, and Zstandard version.

Mandelbrot example

The included generator renders a Mandelbrot set with NumPy and writes WIMF directly:

python examples/mandelbrot_wimf.py mandelbrot.wimf --width 1920 --height 1080 --quality 7

Use --lossless, force a tile mode with --codec, or zoom using --center-x, --center-y, and --span.

Command-line tools

The unified command covers the normal workflow:

wimf encode photo.png photo.wimf --quality 7
wimf encode artwork.png artwork.wimf --lossless
wimf decode photo.wimf photo.png
wimf decode huge.wimf crop.png --roi 100 200 640 480
wimf info photo.wimf
wimf runtime
wimf view photo.wimf
wimf base16 encode photo.wimf photo.hex
wimf base32 encode photo.wimf photo.b32
wimf base64 encode photo.wimf photo.txt --data-url
wimf corrupt photo.wimf damaged.wimf --seed 42 --area payload
wimf diagnose damaged.wimf --unsafe-preview damaged-preview.png

Run wimf <command> --help for focused options. Metadata uses repeatable --metadata KEY=VALUE arguments. The original specialized commands remain available:

  • wimf-convert and wimf-meta are deprecated compatibility tools in 2.2. Use the unified wimf CLI or WIMF Studio.
  • AWIF authoring is deprecated. Existing animations remain readable, including historical timing metadata.
  • wimf-studio opens the encoder, comparison viewer, tile inspector, protection/history tools, and codec lab.
  • wimf-view is a compatibility alias that opens WIMF Studio.
  • wimf-cat renders supported images in compatible terminals.
  • wimf-meta inspects and edits legacy metadata.

Native C/C++ builds also provide wimf-native, a dependency-free process bridge for lossless PGM/PPM ↔ WIMF conversion.

Tested feature matrix

Feature Status Continuous verification
WIM2 Raw, Predictive, Palette, and Wavelet Implemented Forced modes, automatic mixed modes, exact/lossy reconstruction
Qualities and presets Implemented All qualities 1–10 × Fast/Balanced/Extreme
RGB, RGBA, grayscale, LA, depth channel Implemented Odd dimensions, edge tiles, alpha, five-channel depth access
8-, 10-, and 16-bit pixels Implemented Exact high-bit-depth lossless round trips and native/reference parity
ROI and independent tiles Implemented Cross-tile crops and checksum-isolated corruption
Threading and cancellation Implemented Deterministic 1/2/4-thread output, progress contract, bounded cancellation
Metadata rewrite Implemented Tile payload identity, history retention, anti-rot regeneration
Anti-rot Experimental Two-shard repair, three-shard rejection, damaged parity, protected history
Chrono history Experimental Unchanged/changed states, ordering, random state access, protected history
Base16, Base32, Base64, and data URLs Implemented Strict alphabets, MIME validation, whitespace and safety bounds
Corruption laboratory Experimental Header, metadata, index, payload, extension, and parity targeting
AWIF animation Legacy decode compatibility Committed fixtures and malformed-input safety
WIMF v1, .wif, and ROT! Deprecated authoring; legacy decoding Warning coverage, migration, and protected decode
WIMF Studio and headless CLI Implemented Headless state tests, command help, installed-wheel smoke tests

The visual report separately exercises synthetic mixed content, a credited nature photograph, and a credited animal photograph. It publishes decoded outputs, amplified differences, exact configurations, tile-mode counts, timings, WIMF payloads, and JSON metrics as CI artifacts.

Compatibility and status

Capability WIM2 Legacy decode
Hybrid still images Implemented WIMF v1 supported
Lossless and lossy coding Implemented Supported
ROI and independent tiles Implemented Format-dependent
Anti-rot Two-shard WIM2 extension ROT! supported
Chrono history Indexed WIM2 extension AWIF states supported
Animation creation Legacy-only AWIF encode/decode with preserved timing
Wavelet watermark creation Planned v1 only

See the WIM2 format overview, legacy migration guide, native embedding guide, desktop/application integrations, adoption roadmap, and release checklist.

Verification and roadmap

CI separates Python quality, cross-platform API/feature tests, legacy decode compatibility, standalone C++, sanitizers, packaging, visual evidence, and non-blocking performance measurements. Python-versus-C++ benchmarks cover current WIM2 still images on Windows, Linux, and macOS. The active roadmap is:

  • Measure AVX2 and NEON SIMD acceleration across reference hardware (CRC-32 and predictive filter paths are implemented; wavelet lifting is scalar). Run tools/wimf_simd_bench.cpp locally or read CI job summaries - see docs/simd-benchmarks.md.
  • Verify Linux ARM64 and Windows ARM64 wheels on dedicated native runners.
  • Validate the memory-only synchronous core with Emscripten on the future web branch without changing the WIM2 bitstream.
  • Publish signed standalone C/C++ development archives for the versioned ABI and conformance pack.
  • Build on the Pillow plugin and native PGM/PPM bridge with ImageMagick, FFmpeg, and desktop thumbnailer integrations.
  • Preserve legacy animation and watermark decoding without reviving their deprecated authoring paths.

Target performance is at least 10 MP/s Balanced encoding and 50 MP/s decoding on reference hardware; benchmark results are hardware-dependent and are not claimed until measured.

License

WIMF is licensed under GPL-3.0-or-later.

Reporting bugs

WIMF is experimental. If something breaks, please open a GitHub issue with your operating system, Python version, wimf runtime --json output, and a minimal sample file when possible. WIMF Studio's Help → Report a Bug command copies the relevant runtime diagnostics and opens the issue page.

Release files for wimf 2.2.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for wimf 2.2.3
File Size Uploaded
wimf-2.2.3.tar.gz 702.8 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for wimf 2.2.3
File
wimf-2.2.3-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
wimf-2.2.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
wimf-2.2.3-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
wimf-2.2.3-cp314-cp314-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.15+ x86-64 Details
wimf-2.2.3-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
wimf-2.2.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
wimf-2.2.3-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
wimf-2.2.3-cp313-cp313-macosx_10_13_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.13+ x86-64 Details
wimf-2.2.3-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
wimf-2.2.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
wimf-2.2.3-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
wimf-2.2.3-cp312-cp312-macosx_10_13_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.13+ x86-64 Details
wimf-2.2.3-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
wimf-2.2.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
wimf-2.2.3-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
wimf-2.2.3-cp311-cp311-macosx_10_9_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.9+ x86-64 Details
wimf-2.2.3-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
wimf-2.2.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
wimf-2.2.3-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
wimf-2.2.3-cp310-cp310-macosx_10_9_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.9+ x86-64 Details

Total release size:45.1 MB

Release files / wimf-2.2.3.tar.gz

Download URL wimf-2.2.3.tar.gz
Size 702.8 kB
Tags Source
SHA-256 checksum
How to use checksums
a8c777b212adfd30fff482f9e968f7729c2be8867041f32f88dde894e288e0ed
BLAKE2b-256 checksum
How to use checksums
6328e3a7d1f079a5658400d3e3acda7cf61af22ca984b13a3dff6e6ce29a90b5
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp314-cp314-win_amd64.whl

Download URL wimf-2.2.3-cp314-cp314-win_amd64.whl
Size 722.1 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
600cd04cd66baa0272b29db199db2c010e0f261c8df10d09935d1428d9894987
BLAKE2b-256 checksum
How to use checksums
2e6d4d1e3360c5977ec27febd0be7e4b456ba9a808124ebea7d782228560edc4
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL wimf-2.2.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 6.8 MB
Tags CPython 3.14 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
f8fd889751d8c065463439c768035c1e0e4bce779f6c4ef21bb9d8ce481280dc
BLAKE2b-256 checksum
How to use checksums
0f268f89518fe22d6995de51b5f82b09eaeb0ed93c4b0b35eeab4ce3cd3af70d
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp314-cp314-macosx_11_0_arm64.whl

Download URL wimf-2.2.3-cp314-cp314-macosx_11_0_arm64.whl
Size 667.7 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
9d7a5f3137b3099cb476d4a5c3e02622f4ba8c7ae400620b2a0fc38306756b55
BLAKE2b-256 checksum
How to use checksums
cf779457a089882f5ec59bca66624a99da8f44fa77f7d2a316e815ef8bf3e30e
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp314-cp314-macosx_10_15_x86_64.whl

Download URL wimf-2.2.3-cp314-cp314-macosx_10_15_x86_64.whl
Size 751.6 kB
Tags CPython 3.14 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
b6638a6766f7ff40e37a64da0164f1ef1e6171bfeefb0b969cd8437a598e4c88
BLAKE2b-256 checksum
How to use checksums
2f1b5c4e29b28ed3dffb4f9cb2bd6c857a31adcbbb982d7b62752ff77dbf1ff4
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp313-cp313-win_amd64.whl

Download URL wimf-2.2.3-cp313-cp313-win_amd64.whl
Size 703.7 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
e238c151238f793fe259929b7b97f5b3f5d8cd46df8f893a138febf3d0c2e2aa
BLAKE2b-256 checksum
How to use checksums
1d690dc8cfdf45b3ff0806c61fab989997d8ec2c97952087e72f1cf654d269f6
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL wimf-2.2.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 6.8 MB
Tags CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
71139cca9cf903baeb99d23d075747be5d572bef4ef7a0e2db09b53133910a13
BLAKE2b-256 checksum
How to use checksums
6deea1cf98dd880a6a8ae58407ec0c9b89c063150317dc1096389bbbdb79a1d5
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp313-cp313-macosx_11_0_arm64.whl

Download URL wimf-2.2.3-cp313-cp313-macosx_11_0_arm64.whl
Size 667.1 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
169bb1de021eb38103e307a3be256066393fdf872635fd25c0729ae1c53d7311
BLAKE2b-256 checksum
How to use checksums
9ac3c1bdef221c99688781b9c26473e6406da5da766c3f9eb0b8b58d3c00d5ea
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp313-cp313-macosx_10_13_x86_64.whl

Download URL wimf-2.2.3-cp313-cp313-macosx_10_13_x86_64.whl
Size 751.1 kB
Tags CPython 3.13 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
b80eb7737dffd93464907ae2394f83da02959f2324533681bd4cefa40f56b0ea
BLAKE2b-256 checksum
How to use checksums
e02887a4e14df567246e69b95a12f43d76a0cfa68ea89aa9bd9d709d8bdbf222
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp312-cp312-win_amd64.whl

Download URL wimf-2.2.3-cp312-cp312-win_amd64.whl
Size 703.7 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
e909bf7556f449da09e1ce946a574eb66ebb084dec621ae5f5fc03c788c7edb0
BLAKE2b-256 checksum
How to use checksums
9511604977a611b216dc28a4462e34798b1a53ca09b1c2a5f692567a20c43b23
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL wimf-2.2.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 6.8 MB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
180147b8ee973c4e2b5332699a2d8086aa9228cf603a9e40a1dd088f5c1206a6
BLAKE2b-256 checksum
How to use checksums
086fabc3cf6be8529537ded54baf6b9d1e414985737023b419cedf9d1b312d86
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp312-cp312-macosx_11_0_arm64.whl

Download URL wimf-2.2.3-cp312-cp312-macosx_11_0_arm64.whl
Size 666.9 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
d4ec4b8a7faafc19d160b0d21fac303586cddad1bffbbb7befb3a68f70e16aa8
BLAKE2b-256 checksum
How to use checksums
96736caa8bdbbd41c67e976449ac5440d305f20ad9a0e838b3b7b328992335fb
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp312-cp312-macosx_10_13_x86_64.whl

Download URL wimf-2.2.3-cp312-cp312-macosx_10_13_x86_64.whl
Size 751.0 kB
Tags CPython 3.12 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
8b1710b13f9f4a80d886b7b399eb74a17c7a42c9683164e55980d9d86d15d358
BLAKE2b-256 checksum
How to use checksums
b59b4b34cae07d83c23de8de231e24d767f87d0221d2a36d39441ce26886020c
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp311-cp311-win_amd64.whl

Download URL wimf-2.2.3-cp311-cp311-win_amd64.whl
Size 697.5 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
be1f93a9cee9997f8e17b3bdb8cc818775450723c52626ed12234269a27d0aa5
BLAKE2b-256 checksum
How to use checksums
92118a8e043e4f0b203a9a66b5bfbbd23987a779bc7eda9ceb81f04118f0fa9a
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL wimf-2.2.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 6.7 MB
Tags CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
4c28f7115bd95f39bd3af3d0671d104d6527e180b1f8020e65d6073d9d289cc4
BLAKE2b-256 checksum
How to use checksums
18fe3ec8254a445f23e03b41c6c232dcdc305cfa2880b02aecc90bf62df54cf5
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp311-cp311-macosx_11_0_arm64.whl

Download URL wimf-2.2.3-cp311-cp311-macosx_11_0_arm64.whl
Size 664.0 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
fc704a796323c7db5840405cee82b944f8b958467a5c802fb9e3303415428816
BLAKE2b-256 checksum
How to use checksums
e0561aef99f93ce89a45af7098a63bceb49ca07411be1b1d6da92eccc62651af
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp311-cp311-macosx_10_9_x86_64.whl

Download URL wimf-2.2.3-cp311-cp311-macosx_10_9_x86_64.whl
Size 747.0 kB
Tags CPython 3.11 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
6b07da5ae93cb89e3e451f6c4c0435332674678d5cf20f8181435f4e7dbb740d
BLAKE2b-256 checksum
How to use checksums
bd686a05a466e90e58352e62fe19f0329ce996d9e4b64f349a53870b42a7802d
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp310-cp310-win_amd64.whl

Download URL wimf-2.2.3-cp310-cp310-win_amd64.whl
Size 696.0 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
4e1bad102cf8b902101a78bcd4ab32eaac20773a41b4fb7cd586022f9125b6c1
BLAKE2b-256 checksum
How to use checksums
3cb2e0c50c4da83bb18a8713ec6e025bf9bb79726c55fbec9935041f22ed4c52
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL wimf-2.2.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 6.7 MB
Tags CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
c98a42783d43698bacf104131aca55f2e9eb3e69697e97deb2b9a616c2597e13
BLAKE2b-256 checksum
How to use checksums
c1fedba7789f725ecc4c4eccb6b85d2070621753e33c5bd772623cdcc9575ac5
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp310-cp310-macosx_11_0_arm64.whl

Download URL wimf-2.2.3-cp310-cp310-macosx_11_0_arm64.whl
Size 661.8 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
bef6b475c6c7248fe8742abb1a0808e9cc253cffa986b7eb8a8715335e653ef7
BLAKE2b-256 checksum
How to use checksums
1cf510a7b1821929de326f208a31822e562775b1060ccab2a7a34eb3a3e12daf
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 Aug 25, 2026.

Transparency log

Release files / wimf-2.2.3-cp310-cp310-macosx_10_9_x86_64.whl

Download URL wimf-2.2.3-cp310-cp310-macosx_10_9_x86_64.whl
Size 744.1 kB
Tags CPython 3.10 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
a8cc2c35c51a5f94a24276cf5af3f5163fdd5b9c020bf223454505154767408f
BLAKE2b-256 checksum
How to use checksums
4de7a531fedf15465cf9080c21d548f8b7f02746b1369dea396dd3d6ccf363b0
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 Aug 25, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

2.2.3 This release

21 release files

2.2.2

21 release files

2.2.1

21 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