Skip to main content

Thread-safe Python caching decorator powered by a Rust extension. Implements SIEVE eviction for scan-resistant, near-optimal hit rates with zero-cost locking under the GIL — entire cache lookup in a single Rust __call__, no Python wrapper overhead. 16–23M ops/s single-threaded, 25× faster than cachetools, with cross-process shared memory support.

Project description

warp_cache

A thread-safe Python caching decorator built in Rust. Uses SIEVE eviction and GIL-conditional locking - no overhead under the GIL, per-shard RwLock when the GIL is disabled.

Why this exists

I needed single @cache() decorator that works across sync functions, async functions, and threads - with TTL - without juggling separate solutions. Existing options each had gaps:

  • functools.lru_cache - not thread-safe (needs manual Lock), no TTL, no async awareness
  • cachetools - has TTL and multiple strategies, but pure Python (slow) and not thread-safe
  • cachebox / moka-py - Rust-backed and thread-safe, but weren't designed for GIL-conditional locking or shared memory

warp_cache fills this gap: one decorator, thread-safe by default, async-aware (cache hits return without awaiting), TTL support, and shared memory backend for cross-process use.

With free-threaded Python (3.13+) removing the GIL, thread-safe caching stops being optional. warp_cache handles both cases via conditional compilation (GilCell under GIL, RwLock under no-GIL).

Quick start

from warp_cache import cache

@cache()
def expensive(x, y):
    return x + y

expensive(1, 2)  # computes and caches
expensive(1, 2)  # returns cached result

If you're already using functools.lru_cache, switching is one-line change. Unlike lru_cache, this is thread-safe out of the box:

-from functools import lru_cache
+from warp_cache import cache

-@lru_cache(maxsize=128)
+@cache(max_size=128)
 def expensive(x, y):
     return x + y

Like lru_cache, all arguments must be hashable. See the usage guide for details.

How it works

Entire cache lookup happens in single Rust __call__ - no Python wrapper function, no serialization, no key allocation on hits:

Python: fn(42)
  └─ tp_call (PyO3) ─────────────────────────────── one FFI crossing
       ├─ hash(args)           via ffi::PyObject_Hash (raw FFI, no PyO3 wrapper)
       ├─ shard select         hash & shard_mask (power-of-2 bitmask)
       ├─ GilCell::read()      zero-cost under GIL (UnsafeCell)
       ├─ HashMap lookup       hashbrown + passthrough hasher (no re-hash)
       ├─ equality check       via ffi::PyObject_RichCompareBool (borrowed pointer)
       ├─ SIEVE visited=1      AtomicBool store, lock-free
       └─ return cached value

On cache hit, the lookup uses BorrowedArgs (a raw pointer + precomputed hash) via hashbrown's Equivalent trait, so there is no CacheKey allocation and no refcount churn. CacheKey is only created on miss when the entry needs to be stored.

Two backends:

  • Memory (default) - sharded hashbrown::HashMap with passthrough hasher and GilCell/RwLock locking. Everything stays in-process.
  • Shared (backend="shared") - mmap'd shared memory with seqlock. Reads don't take any locks (optimistic seqlock path). Serialization uses a fast-path for primitives (serde), with pickle fallback for complex types.

Why SIEVE

Both backends use SIEVE (NSDI'24) for eviction. The main reason: cache hits don't need a write lock.

LRU requires reordering a linked list on every hit - that means write lock (or CAS loop) on every read. SIEVE replaces this with a single store (visited = 1), which needs no lock on either backend. On eviction, a "hand" scans the entry list: visited entries get a second chance (bit cleared), unvisited entries get evicted.

Why not the others:

  • LRU - write lock on every hit, which defeats the point of GilCell
  • ARC - two lists + ghost entries, much more complex for small gains
  • TinyLFU - frequency counting overhead, bloom filter maintenance

The hit rate is also better than LRU. Measured with Zipf-distributed keys (1M requests, benchmarks/bench_sieve.py):

Workload SIEVE LRU Miss Reduction
Zipf, 10% cache 74.5% 67.5% +21.6%
Scan resistance (70% hot) 69.9% 63.5% +17.6%
One-hit wonders (25% unique) 53.9% 43.7% +18.1%
Working set shift 75.5% 69.7% +16.6%

See eviction quality benchmarks for the full breakdown.

Performance

Python 3.13.2, Apple M-series (arm64), cache size 256, Zipf-distributed keys (2000 unique), median of 3 rounds. Source: benchmarks/

If you need thread-safe caching, warp_cache is the fastest option available. If you don't need thread safety, lru_cache is faster - it's C code in CPython with no FFI boundary to cross.

Single-threaded

Library ops/s Notes
lru_cache 31.0M C code, no FFI, no safety overhead
warp_cache 20.4M Rust via PyO3, thread-safe, SIEVE
moka_py 3.9M Rust (moka), thread-safe
cachebox 1.5M Rust, thread-safe
cachetools 826K Pure Python, not thread-safe

lru_cache wins by about 1.5x single-threaded. The gap comes from PyO3 call dispatch (~5ns) and refcount management (~3ns) - the price you pay for crossing an FFI boundary with a safe wrapper.

Multi-threaded (GIL-enabled)

Threads warp_cache lru_cache + Lock cachetools + Lock
1 20.7M 12.6M 767K
4 20.8M 12.5M 788K
8 20.4M 12.6M 793K
16 19.5M 11.9M 795K

With multiple threads, warp_cache is about 1.6x faster than lru_cache + Lock. lru_cache itself isn't thread-safe, so real multi-threaded code needs a threading.Lock() on every call, and that lock overhead adds up. warp_cache's GilCell has no overhead under the GIL because the GIL itself already serializes access.

Shared memory (cross-process)

Processes Total Throughput Per-Process Avg
1 5.0M ops/s 5.0M ops/s
2 7.8M ops/s 3.4M ops/s
4 8.1M ops/s 2.0M ops/s

The seqlock's optimistic read path means reads don't take locks, which is why multi-process scaling works. No other Python cache library has cross-process shared memory.

Multi-thread scaling: GIL vs no-GIL

Full benchmarks and optimization history in docs/performance.md.

Installation

Prebuilt wheels are available for Linux (x86_64, aarch64), macOS (x86_64, arm64), and Windows (x86_64):

pip install warp_cache

If no wheel is available for your platform, pip will fall back to the source distribution (requires a Rust toolchain).

Design notes

Why single FFI crossing? Early versions had Python wrapper around Rust cache - two FFI crossings per call. Moving __call__ into Rust saves ~10-15ns by cutting out the wrapper.

Why BorrowedArgs? On cache hit we only need to look up a key, not store it. BorrowedArgs holds a raw pointer + precomputed hash and implements hashbrown's Equivalent trait, so there is no allocation on the hot path. CacheKey (which owns the PyObject) is only created on miss.

Why PassthroughHasher? Python already computes hashes for all hashable objects. Feeding that through hashbrown's default foldhash would just re-hash something that's already hashed. PassthroughHasher passes it through as-is, saves ~1-2ns per lookup.

Why GilCell instead of RwLock? When the GIL is enabled, it already serializes access, so a real RwLock would just waste ~8ns per hit doing nothing useful. GilCell is an UnsafeCell wrapper with the same API as RwLock but no actual locking. Under free-threaded Python (#[cfg(Py_GIL_DISABLED)]), real per-shard RwLock is compiled in instead.

Why sharded HashMap? Under free-threaded Python, per-shard RwLock lets different threads read from different shards in parallel. Shard count is power-of-2 (selected via hash & shard_mask) for bitmask indexing.

Why seqlock for shared memory? Cross-process synchronization can't use futexes portably. The seqlock does optimistic reads (just check a sequence counter) with a TTAS spinlock for writes - all in userspace, no kernel calls on the read side.

Status

  • Core API is stable. Prebuilt wheels on PyPI, Python 3.9-3.14.
  • Free-threading codepath (#[cfg(Py_GIL_DISABLED)]) is tested but gets less real-world usage than the GIL-enabled path.
  • Shared memory layout is v3, stable. Existing shared caches survive process restarts.

When warp_cache makes sense:

  • You need thread-safe caching (especially with free-threaded Python)
  • You need TTL, async support, or cross-process shared memory
  • You want better eviction than LRU without configuring anything

When to use something else:

  • Maximum single-threaded speed, no thread safety needed - use functools.lru_cache
  • Stampede prevention or per-entry TTL - use cachebox or moka-py
  • Manual cache object API (dict-like interface) - use moka-py or cachebox

Documentation

  • Usage guide - SIEVE eviction, async, TTL, shared memory, decorator parameters
  • Performance - benchmarks, architecture details, optimization history
  • Alternatives - comparison with cachebox, moka-py, cachetools, lru_cache
  • Examples - runnable scripts for every feature (uv run examples/<name>.py)
  • llms.txt / llms-full.txt - project info for LLMs and AI agents (spec)

Contributing

Contributions welcome! See CONTRIBUTING.md for setup instructions, coding standards, and PR guidelines.

For security issues, please see SECURITY.md.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

warp_cache-0.6.0.tar.gz (2.9 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

warp_cache-0.6.0-cp314-cp314-win_amd64.whl (149.5 kB view details)

Uploaded CPython 3.14Windows x86-64

warp_cache-0.6.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (259.9 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

warp_cache-0.6.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (249.6 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

warp_cache-0.6.0-cp314-cp314-macosx_11_0_arm64.whl (236.6 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

warp_cache-0.6.0-cp314-cp314-macosx_10_12_x86_64.whl (249.5 kB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

warp_cache-0.6.0-cp313-cp313-win_amd64.whl (149.4 kB view details)

Uploaded CPython 3.13Windows x86-64

warp_cache-0.6.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (259.4 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

warp_cache-0.6.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (249.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

warp_cache-0.6.0-cp313-cp313-macosx_11_0_arm64.whl (236.2 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

warp_cache-0.6.0-cp313-cp313-macosx_10_12_x86_64.whl (248.8 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

warp_cache-0.6.0-cp312-cp312-win_amd64.whl (149.7 kB view details)

Uploaded CPython 3.12Windows x86-64

warp_cache-0.6.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (259.6 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

warp_cache-0.6.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (249.4 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

warp_cache-0.6.0-cp312-cp312-macosx_11_0_arm64.whl (236.3 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

warp_cache-0.6.0-cp312-cp312-macosx_10_12_x86_64.whl (249.0 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

warp_cache-0.6.0-cp311-cp311-win_amd64.whl (150.9 kB view details)

Uploaded CPython 3.11Windows x86-64

warp_cache-0.6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (258.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

warp_cache-0.6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (248.5 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

warp_cache-0.6.0-cp311-cp311-macosx_11_0_arm64.whl (236.1 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

warp_cache-0.6.0-cp311-cp311-macosx_10_12_x86_64.whl (249.4 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

warp_cache-0.6.0-cp310-cp310-win_amd64.whl (151.2 kB view details)

Uploaded CPython 3.10Windows x86-64

warp_cache-0.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (258.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

warp_cache-0.6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (248.6 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

warp_cache-0.6.0-cp310-cp310-macosx_11_0_arm64.whl (236.3 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

warp_cache-0.6.0-cp310-cp310-macosx_10_12_x86_64.whl (249.7 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

warp_cache-0.6.0-cp39-cp39-win_amd64.whl (153.6 kB view details)

Uploaded CPython 3.9Windows x86-64

warp_cache-0.6.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (260.7 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

warp_cache-0.6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (250.2 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

warp_cache-0.6.0-cp39-cp39-macosx_11_0_arm64.whl (237.9 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

warp_cache-0.6.0-cp39-cp39-macosx_10_12_x86_64.whl (251.5 kB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

File details

Details for the file warp_cache-0.6.0.tar.gz.

File metadata

  • Download URL: warp_cache-0.6.0.tar.gz
  • Upload date:
  • Size: 2.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for warp_cache-0.6.0.tar.gz
Algorithm Hash digest
SHA256 a198d120cec32dc6ca5b515b5f2a76258b6b0d8f3b62a190b7fadcd7c0fa5110
MD5 da10c2b33e04e74169871091253bfe7c
BLAKE2b-256 9fd33c5d44678d591388db687a5c4fdd7d9fb2f9eea68f4acfe9bc0c03c2f845

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0.tar.gz:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: warp_cache-0.6.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 149.5 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for warp_cache-0.6.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 4d5b47b06b44387ecb4bfff3c7586ce80227ab380a270cd1bf92652a46456adf
MD5 22a9d9724c473baa7329a066e98e782c
BLAKE2b-256 c293eb50d2fd968817fb1e06eee04170974f7c9660a49cf2421f78420808def9

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp314-cp314-win_amd64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b109997a216de2230ff281913bae724b295404c7db6aa4c9cc66b6eebf43aa80
MD5 ea4efeb5208f7303a8f14d372d19c09a
BLAKE2b-256 98420852c540a4b637588f852b8a5d29da3ef752d39ac31b9a4cf44eb656b94c

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 69413741985ab5912650c1002ef960e5e7a084f04fcb2373a19074af8b0b368b
MD5 5c9b8ed198bed0f8511e5dfe6bd5574a
BLAKE2b-256 21d10d8e591e0c50bbf5de39273d672ae1babf22c44544b1948c37cda7d83f7c

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f5ce10cfa669ae484355ed88b04d3a07df94d16cf3369fd432fa8af1659d1370
MD5 569820e21a777c32817b710d0769efcb
BLAKE2b-256 d99cae1d80ebd8c9500215da3481d8504a3e1cb7e789a7e4771c2e2f37ca7b70

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 af3bcc37368807089e277ab9254616c236fdab1b769f38e277dad0ca96b37a64
MD5 cf3db2a91ca444823d5754a4fe9d4215
BLAKE2b-256 6ec675fd28166918555099c5877f478090b9d5832cfa94b25d52bf32380a450f

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp314-cp314-macosx_10_12_x86_64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: warp_cache-0.6.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 149.4 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for warp_cache-0.6.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 1a00d834647ca96e9efa6faa09a16d44369547aea9ddc3f114d8768fdaa9e6d0
MD5 939356909a21c03915eea09a726f1cf6
BLAKE2b-256 c932ae3f8001aae5b203c4e7eb675aff2c46e333a15b13c0bbd8d08e228c7562

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp313-cp313-win_amd64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 64edeca8d5b88c92038760b894319989d3bdb4426cdbc91fd4233b275717f850
MD5 58752e73359173ee71daa824a5edfd0e
BLAKE2b-256 a6ef54aeeb6b572cbcc69acb512a173e4feab30d7d3ef4228b669215a73dbd36

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6f9c738b851bc57fd5b5513fabf02dd599044dff840d51054ee8e5c06250b3d0
MD5 738c794593cd4dcf4adbb4031e4d0c34
BLAKE2b-256 ac68e804e90e344b25e10b5fd55a5f587c387d6827163da49e645cd244cebf1c

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f8d057cc5f1d1c6e7c4e6e209e260439da4efd0f9d863ab77e16cd4237d625fb
MD5 78fbd5dc7f2e92577be81f861da51c3f
BLAKE2b-256 45dedc0117514228b0381f37afa6e8452630582f43ad194a4f4e45c926b81df4

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 323abd5ccf39f67942862188125312699842d61cc9bca5476e43d02111b79434
MD5 4e8929b8a0fcb7311f20ac44c14446e6
BLAKE2b-256 6c05733c10895b2632210619c9a75e951cb7e321d7212727a9dfe06509b6b20b

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp313-cp313-macosx_10_12_x86_64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: warp_cache-0.6.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 149.7 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for warp_cache-0.6.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 f1417adfdcc8dc1adf8f6d34f10a919dc5e7578e625e7eae876ca86655d89c2f
MD5 7b40f11cb3ae47b4a875cc101c68fa8d
BLAKE2b-256 0eed4ff9f328400460ee029e8b8bf621fcbfde1adb91f272ce5eb9a6db9d6d3d

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp312-cp312-win_amd64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1db502f9b18f31a11d19afccae0fd521e2afcc8ebc93ce8b1e82e2cb4c662d9a
MD5 4104f843d88a8f0b5706b4169834ff05
BLAKE2b-256 5362937247e644f748b84cecafe95b61b64d287ae078c388829a871bd521a937

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b6d9c93c9d43f28d9f01934f14416e559e62d20d1b0fd92415dae0a0e8e694d6
MD5 f7a950b169fcdd4e2aa4368d63237dc6
BLAKE2b-256 8523c51a6c65a28ecf7f615a097a32ed1d344d6137ce54721ddc676015af71bc

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 eadba0929a90fb56b8caca18dcb17c14c05f72fe17612771060e66ccd0ffed99
MD5 12dc06fbe08a6c0228cc2beab9aad326
BLAKE2b-256 99830588e75494db275e94a969d4e6c3c7b237c679ead3a3f8cb912537ceaf1a

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1325827ff4139a1dcfb024fee6071848f69638af880aec226fc071fd5a919cf2
MD5 30fb9e8f9de627baa92edd799b93d087
BLAKE2b-256 78694a9afd6d836994d6271dee26973c22771d265bda9e8736b62fe89051fb8c

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp312-cp312-macosx_10_12_x86_64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: warp_cache-0.6.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 150.9 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for warp_cache-0.6.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 e207d4604b883ca37a0f831071195037fa8dadd2720741cd72f094d556936546
MD5 a04730a18de4d0252cb3d546e8a93b1d
BLAKE2b-256 7b9c508d19de4ee85bf6a155cba700c1a1cb7182c9ea61d15150ebbaf7fa8bb7

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp311-cp311-win_amd64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 36de8ae2470def7c5da0bc9f6789f1be6982d580fba8e57f08e5ac80b3427e9b
MD5 bd57a1aab6a309508526d627e5825f12
BLAKE2b-256 c2abb866612c2578facc6157235ba84c314e6ed9292b90afc976ba927c7ad894

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6f20ad004b2855c9196f39f532477bbb64b6da59734fb77fd0f429913855f753
MD5 d38ec601c06de77f1226d90bcf91d6a7
BLAKE2b-256 5aad7f9246ec2476cfadaee3ed1b97258ed9553f066b4b6d82e576af29c788e1

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 03a8b0d0b488ad32c41db5c26e2d59430f80b0938ce5d96568f3f936ce5d1c82
MD5 eba8d9cf723102f0293cd0a78dc95d0c
BLAKE2b-256 d56956240a4ce68439d5f929110ed0982c0df99f3ed428df69a7c187c6275d03

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 e2b6d3802ad5a26ba56475228b826e284e66abd4a8c0c3450a59172b94edd050
MD5 e77541c08bf47ca03e4b6a9584342ab6
BLAKE2b-256 f07aff1cadf3a4ead6e117a12ef5e1ef61e421133488622f52f9893fda19d19f

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp311-cp311-macosx_10_12_x86_64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: warp_cache-0.6.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 151.2 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for warp_cache-0.6.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 76a4a577c78fdd7e9441879109e9ee046f89bf90d9c6ba83f9c3d67e982536ee
MD5 1bf13403d97179e9f07ba469f7a61eb8
BLAKE2b-256 4d5e685e1ee42ec079ea30bf2313e53098da8b737f454b2251ebe46310346b15

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp310-cp310-win_amd64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4bb4bfccad20ffa35988ddb866b95f2951229d633167760e6030ad6d74bc977c
MD5 b150f23da38eb5b42834c5a59fa802bc
BLAKE2b-256 c2b6c5a5361c1b8965123d66bf179022d1bbede05bb22f56d88e7817a730cdee

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6ebe255aae41b80e58b7236d70b6ba391d3994581041cb76105e45b64cab73b2
MD5 73a1e41409efd2c31cda6ae15ccf7c46
BLAKE2b-256 a81602daebe4651d04a21726891ad21f45ee1720e3e88ede45fa6ae7a94075fe

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c3bade4e59d11e57618a0a880800eddd09aafe47f3bd8c985723f4b150ea8132
MD5 3169c2bcdf271a632a0f5b984f3ee1ea
BLAKE2b-256 0250ea982c3345a933132c1c01be7e9c366e470f3081afd1aa1949f511b559c3

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 67525c445442d5d31fe25c8974456978564abe38585292c821e43edc146783b6
MD5 0d59d58f8654e557ef15cfbe9806a052
BLAKE2b-256 6eb2e9335c2e7fd9c931f480a51b8426f4cda5128c01d0f7b18703423566189e

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp310-cp310-macosx_10_12_x86_64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: warp_cache-0.6.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 153.6 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for warp_cache-0.6.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 4079f0f33b68af4a72cc78df724b2255b82c0fd96ad5b8578db3086f8dd560e4
MD5 488c9ddcf7ea7725dc7a643c1d33cf7a
BLAKE2b-256 640edbc2a42a102a81c75f0126b05911b3dd95be752923ba0205eef283e70072

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp39-cp39-win_amd64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9547f807b51cea7e7001760f97ee72be036108d23b640bac596c2b2ce699c7f6
MD5 e5101184d84a97464272ac0d86eb63c2
BLAKE2b-256 8116bc2a6d576336903167a499c1c53b895eebd95dc4f6c6ba1a0f6f30647e36

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5d9dfa88f0c485f7aac454f02bf9a1fc3bed3a901fc69e7f3232860a0107ec24
MD5 6fe006350c02d6c653069d45ec49f106
BLAKE2b-256 a0c19e4df1382e591141c6bfab03b75a9b8f2a4caa37e9f84f546e44ee38a410

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 34a79943a8b06a1152d7ff2d89da113afe39f0a7cb97b5b8b2ed95e105188dbb
MD5 0ee4b7d7591e861c13aabfaca789509c
BLAKE2b-256 12510a18ac69e1114555d363b5f43f0b7c11425195d04719b4bae2bd5aaa7221

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file warp_cache-0.6.0-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for warp_cache-0.6.0-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 156bb8ccad56de4f10a6a8b4b500f388feb57181f64375c96cee749187e179fa
MD5 9366c29b9a6c4d93ae56fbb99232f883
BLAKE2b-256 582e357992f0d94a13d37df29f6271ccf1d03e4282b81a8fe40bfdabc56d76f1

See more details on using hashes here.

Provenance

The following attestation bundles were made for warp_cache-0.6.0-cp39-cp39-macosx_10_12_x86_64.whl:

Publisher: publish.yml on toloco/warp_cache

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page