Skip to main content

Production-ready Redis caching for Python with intelligent reliability features and Rust-powered performance

Project description

cachekit

Python caching, batteries included

Production-ready caching for Python with intelligent reliability features and Rust-powered performance.

PyPI Version Python Versions codecov License: MIT


[!WARNING] Alpha Software โ€” cachekit is under active development. While we've been building and testing for ~6 months, the API is not yet stable and breaking changes may occur between releases. We're committed to making this library rock-solid, but we need your help!

๐Ÿ› Found a bug? Please open an issue โ€” even small ones help us improve.

๐Ÿ’ก Something feel off? We want to hear about rough edges, confusing APIs, or missing features.

Your feedback directly shapes the path to 1.0. Cheers!


Why cachekit?

Simple to use, production-ready out of the box.

from cachekit import cache

@cache
def expensive_function():
    return fetch_data()

That's it. You get:

Feature Description
Circuit breaker Prevents cascading failures
Distributed locking Multi-pod safety
Prometheus metrics Built-in observability
MessagePack serialization Efficient with optional compression
Zero-knowledge encryption Client-side AES-256-GCM
Adaptive timeouts Auto-tune to system load

Quick Start

Installation

pip install cachekit

Or with uv (recommended):

uv add cachekit

Setup (Redis โ€” recommended default)

# Run Redis locally or use your existing infrastructure
export REDIS_URL="redis://localhost:6379"
from cachekit import cache

@cache  # Uses Redis backend by default
def expensive_api_call(user_id: int):
    return fetch_user_data(user_id)

[!TIP] No Redis? No worries! Use @cache(backend=None) for L1-only in-memory caching, like lru_cache, but with all the bells and whistles.

More Backends

CachekitIO โ€” Managed SaaS (Alpha)
import os
from cachekit import cache

# Set your CachekitIO API key
# export CACHEKIT_API_KEY="your-api-key"  # pragma: allowlist secret

@cache.io()  # Uses CachekitIO SaaS backend โ€” no Redis to manage
def expensive_api_call(user_id: int):
    return fetch_user_data(user_id)

cachekit.io is in closed alpha โ€” request access to get started.

Memcached โ€” Optional
from cachekit import cache
from cachekit.backends.memcached import MemcachedBackend

# pip install cachekit[memcached]

backend = MemcachedBackend()  # Defaults to 127.0.0.1:11211

@cache(backend=backend)
def expensive_api_call(user_id: int):
    return fetch_user_data(user_id)

Requires: pip install cachekit[memcached] or uv add cachekit[memcached]


CachekitIO Cloud (Alpha) Managed caching with zero infrastructure. L1+L2 caching, circuit breaker, and automatic failover โ€” no Redis to manage. cachekit.io is in closed alpha โ€” request access to get started.


Intent-Based Optimization

cachekit provides preset configurations for different use cases:

# Speed-critical: trading, gaming, real-time
@cache.minimal
def get_price(symbol: str):
    return fetch_price(symbol)

# Reliability-critical: payments, APIs
@cache.production
def process_payment(amount):
    return payment_gateway.charge(amount)

# Security-critical: PII, medical, financial
@cache.secure
def get_user_profile(user_id: int):
    return db.fetch_user(user_id)
Feature @cache.minimal @cache.production @cache.secure @cache.io() @cache.local()
Circuit Breaker - โœ… โœ… โœ… -
Adaptive Timeouts - โœ… โœ… โœ… -
Monitoring - โœ… Full โœ… Full โœ… Full โœ… Basic
Integrity Checking - โœ… Enabled โœ… Enforced โœ… Enabled -
Encryption - - โœ… Required - -
Backend Redis Redis Redis CachekitIO SaaS In-process
Use Case High throughput Production reliability Compliance/security Managed cloud Opaque objects
Additional Presets
# Development: debugging with verbose output
@cache.dev
def debug_expensive_call():
    return complex_computation()

# Testing: deterministic, no randomness
@cache.test
def test_cached_function():
    return fixed_test_value()

Architecture

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                        Application                          โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚                     @cache Decorator                        โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”‚
โ”‚  โ”‚   Circuit   โ”‚  โ”‚  Adaptive   โ”‚  โ”‚    Distributed      โ”‚  โ”‚
โ”‚  โ”‚   Breaker   โ”‚  โ”‚  Timeouts   โ”‚  โ”‚      Locking        โ”‚  โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚  L1 Cache (In-Memory)  โ”‚  L2 Cache (Pluggable Backend)     โ”‚
โ”‚       ~50ns            โ”‚  Redis / CachekitIO / File /      โ”‚
โ”‚                        โ”‚  Memcached    ~2-50ms             โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚                    Rust Core (PyO3)                         โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”‚
โ”‚  โ”‚    LZ4      โ”‚  โ”‚  xxHash3    โ”‚  โ”‚    AES-256-GCM      โ”‚  โ”‚
โ”‚  โ”‚ Compression โ”‚  โ”‚  Checksums  โ”‚  โ”‚    Encryption       โ”‚  โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

[!TIP] Building in Rust? The core compression, checksums, and encryption are available as a standalone crate: cachekit-core Crates.io


Features

Production Hardened

  • Circuit breaker with graceful degradation
  • Connection pooling with thread affinity (+28% throughput)
  • Distributed locking prevents cache stampedes
  • Pluggable backend abstraction (Redis, CachekitIO, File, Memcached, custom)

[!NOTE] All reliability features are enabled by default with @cache.production. Use @cache.minimal to disable them for maximum throughput.

Smart Serialization

Serializer Speed Use Case
StandardSerializer โ˜…โ˜…โ˜…โ˜…โ˜† General Python types, NumPy, Pandas
OrjsonSerializer โ˜…โ˜…โ˜…โ˜…โ˜… JSON APIs (2-5x faster than stdlib)
ArrowSerializer โ˜…โ˜…โ˜…โ˜…โ˜… Large DataFrames (6-23x faster for 10K+ rows)
EncryptionWrapper โ˜…โ˜…โ˜…โ˜…โ˜† Wraps any serializer with AES-256-GCM
Serializer Examples
from cachekit.serializers import OrjsonSerializer, ArrowSerializer, EncryptionWrapper

# Fast JSON for API responses
@cache.production(serializer=OrjsonSerializer())
def get_api_response(endpoint: str):
    return {"status": "success", "data": fetch_api(endpoint)}

# Zero-copy DataFrames for large datasets
@cache(serializer=ArrowSerializer())
def get_large_dataset(date: str):
    return pd.read_csv(f"data/{date}.csv")

# Encrypted DataFrames for sensitive data
@cache(serializer=EncryptionWrapper(serializer=ArrowSerializer()))
def get_patient_data(hospital_id: int):
    return pd.read_sql("SELECT * FROM patients WHERE hospital_id = ?", conn, params=[hospital_id])

Integrity Checking

[!IMPORTANT] All serializers support configurable checksums for corruption detection using xxHash3-64 (8 bytes). Enabled by default in @cache.production and @cache.secure.

Performance Impact (benchmark-proven):

Data Type Latency Reduction (disabled) Size Overhead
MessagePack (default) 60-90% 8 bytes
Arrow DataFrames 35-49% 8 bytes
JSON (orjson) 37-68% 8 bytes

Security

[!CAUTION] When handling PII, medical, or financial data, always use @cache.secure to enforce encryption.

cachekit employs comprehensive security tooling:

  • Supply Chain Security: cargo-deny for license compliance + RustSec scanning
  • Formal Verification: Kani proves correctness of compression, checksums, encryption
  • Runtime Analysis: Miri + sanitizers for memory safety
  • Fuzzing: Coverage-guided testing with >80% code coverage
  • Zero CVEs: Continuous vulnerability scanning
Security Commands
make security-install  # Install security tools (one-time)
make security-fast     # Run fast checks (< 3 min)

Security Tiers:

Tier Time Coverage
Fast < 3 min Vulnerability scanning, license checks, linting
Medium < 15 min Unsafe code analysis, API stability, Miri subset
Deep < 2 hours Formal verification, extended fuzzing, full sanitizers

See SECURITY.md for vulnerability reporting and detailed documentation.

Built-in Monitoring

  • Prometheus metrics - Production-ready observability
  • Structured logging - Context-aware with correlation IDs
  • Health checks - Comprehensive status endpoints
  • Performance tracking - Built-in latency monitoring
Thread Safety Details

Per-Function Statistics:

  • Statistics tracked per decorated function (shared across all calls)
  • Thread-safe via RLock (all methods safe for concurrent access)
from concurrent.futures import ThreadPoolExecutor

@cache()
def expensive_func(x):
    return x ** 2

# All threads share same stats
with ThreadPoolExecutor(max_workers=10) as executor:
    results = list(executor.map(expensive_func, range(100)))

print(expensive_func.cache_info())
# CacheInfo(hits=90, misses=10, maxsize=None, currsize=10)

Documentation

Start Here

Guide Description
Comparison Guide How cachekit compares to lru_cache, aiocache, cachetools
Getting Started Progressive tutorial from basics to advanced
API Reference Complete API documentation

Feature Deep Dives

Feature Description
Serializer Guide ArrowSerializer vs StandardSerializer benchmarks
Circuit Breaker Prevent cascading failures
Distributed Locking Cache stampede prevention
Prometheus Metrics Built-in observability
Zero-Knowledge Encryption Client-side security
Adaptive Timeouts Auto-tune to infrastructure

Configuration

Environment Variables

# Redis Connection (priority: CACHEKIT_REDIS_URL > REDIS_URL)
CACHEKIT_REDIS_URL="redis://localhost:6379"  # Primary (preferred)
REDIS_URL="redis://localhost:6379"           # Fallback

# CachekitIO SaaS Backend (closed alpha โ€” request access at cachekit.io)
CACHEKIT_API_KEY="your-api-key"             # Required for @cache.io()  # pragma: allowlist secret
CACHEKIT_API_URL="https://api.cachekit.io"  # Default SaaS endpoint

# Memcached Backend (optional: pip install cachekit[memcached])
CACHEKIT_MEMCACHED_SERVERS='["mc1:11211", "mc2:11211"]'  # Default: 127.0.0.1:11211
CACHEKIT_MEMCACHED_CONNECT_TIMEOUT=2.0                   # Default: 2.0 seconds
CACHEKIT_MEMCACHED_TIMEOUT=1.0                            # Default: 1.0 seconds
CACHEKIT_MEMCACHED_KEY_PREFIX="myapp:"                    # Default: "" (none)

# Optional Configuration
CACHEKIT_DEFAULT_TTL=3600
CACHEKIT_MAX_CHUNK_SIZE_MB=100
CACHEKIT_ENABLE_COMPRESSION=true

[!NOTE] If both CACHEKIT_REDIS_URL and REDIS_URL are set, CACHEKIT_REDIS_URL takes precedence.


Development

git clone https://github.com/cachekit-io/cachekit-py.git
cd cachekit-py
uv sync && make install
make quick-check  # format + lint + critical tests

See CONTRIBUTING.md for full development guidelines.


Requirements

Component Version
Python 3.9+

License

MIT License - see LICENSE for details.


PyPI ยท GitHub ยท Issues

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

cachekit-0.8.0.tar.gz (218.8 kB view details)

Uploaded Source

Built Distributions

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

cachekit-0.8.0-cp313-cp313-win_amd64.whl (431.8 kB view details)

Uploaded CPython 3.13Windows x86-64

cachekit-0.8.0-cp313-cp313-manylinux_2_28_aarch64.whl (508.4 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

cachekit-0.8.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (528.4 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

cachekit-0.8.0-cp313-cp313-macosx_11_0_arm64.whl (488.4 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

cachekit-0.8.0-cp313-cp313-macosx_10_12_x86_64.whl (512.3 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

cachekit-0.8.0-cp312-cp312-win_amd64.whl (431.8 kB view details)

Uploaded CPython 3.12Windows x86-64

cachekit-0.8.0-cp312-cp312-manylinux_2_28_aarch64.whl (508.4 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

cachekit-0.8.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (528.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

cachekit-0.8.0-cp312-cp312-macosx_11_0_arm64.whl (488.4 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

cachekit-0.8.0-cp312-cp312-macosx_10_12_x86_64.whl (512.2 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

cachekit-0.8.0-cp311-cp311-win_amd64.whl (432.4 kB view details)

Uploaded CPython 3.11Windows x86-64

cachekit-0.8.0-cp311-cp311-manylinux_2_28_aarch64.whl (509.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

cachekit-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (529.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

cachekit-0.8.0-cp311-cp311-macosx_11_0_arm64.whl (488.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

cachekit-0.8.0-cp311-cp311-macosx_10_12_x86_64.whl (511.8 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

cachekit-0.8.0-cp310-cp310-win_amd64.whl (432.6 kB view details)

Uploaded CPython 3.10Windows x86-64

cachekit-0.8.0-cp310-cp310-manylinux_2_28_aarch64.whl (510.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

cachekit-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (529.3 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

cachekit-0.8.0-cp310-cp310-macosx_11_0_arm64.whl (488.4 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

cachekit-0.8.0-cp310-cp310-macosx_10_12_x86_64.whl (512.2 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

cachekit-0.8.0-cp39-cp39-win_amd64.whl (432.7 kB view details)

Uploaded CPython 3.9Windows x86-64

cachekit-0.8.0-cp39-cp39-manylinux_2_28_aarch64.whl (510.3 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ ARM64

cachekit-0.8.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (529.4 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

cachekit-0.8.0-cp39-cp39-macosx_11_0_arm64.whl (488.5 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

cachekit-0.8.0-cp39-cp39-macosx_10_12_x86_64.whl (512.4 kB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

File details

Details for the file cachekit-0.8.0.tar.gz.

File metadata

  • Download URL: cachekit-0.8.0.tar.gz
  • Upload date:
  • Size: 218.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cachekit-0.8.0.tar.gz
Algorithm Hash digest
SHA256 11dbf6fd859155b9875d7cd01b0516f78f4a8ec56e8927a625d5f9c439def783
MD5 06305042a960e92c66c1e854810ff0c9
BLAKE2b-256 ed55f047d907981fd4c7267c5524dc94b17a9d930a0397b12692dba794151969

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0.tar.gz:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: cachekit-0.8.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 431.8 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cachekit-0.8.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 2f91228688c29ab6146a66d2baef8b847f3571ddea85d4d0b660db35c52f38b0
MD5 74bbfe8620f39342c3a0aeb8d8ab8420
BLAKE2b-256 a304719fe2c7e95cb6446e2e6a81333a6c1ed57627843fb2932733b0d15b2594

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp313-cp313-win_amd64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6dc4facefad955d3aa7613f6cc1dee20871b169645ac8908746ac8b8c9d25de6
MD5 f47e4bcdbf6830285e46d27912a7804b
BLAKE2b-256 205700ee0350c325bbcea631766229c772385bf0abf58e31993963d59ecebde2

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp313-cp313-manylinux_2_28_aarch64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 29de9b0dd0953f74a529ba91bbf861e60124bfb32cba0a661b7446806307f760
MD5 fac143f65bc72e7ffcb9421d91c29109
BLAKE2b-256 ba48c85a98e169a80430796ee90a1db9af214ef22a5a7623d8f52bd0f3cfd1bf

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f6de86c6240a5f1bbe5ffc26480a6207d936f928c1bc0ddeaee58c5da678be89
MD5 e73cda5d70168071349ab7a10d8ec91d
BLAKE2b-256 71b2e7ff655ce8d0ad5ba351637a723a287b7d4ed0cf9870c1d4a0600d858844

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8c08bf130885b061aef48caf464b69183af02955a09d2df85bb473f0674d7974
MD5 ce20d5232ba2fb6255f09b8edc50faaa
BLAKE2b-256 c9d0e03a3df6727aa1cffbadaaf5282b96a7539bf35fb1bda18bbb30a4b0b651

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp313-cp313-macosx_10_12_x86_64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: cachekit-0.8.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 431.8 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cachekit-0.8.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 af35076239b53553e55539ed31827f9ee24899a51f4142101c388b19eb58003e
MD5 7ff9e0aeeb424a5fd9a592b595d6cd60
BLAKE2b-256 e32374f00d507fecf32bf9a197313f024bba51309448a1c74ab90253a9325af7

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp312-cp312-win_amd64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 2f3c249224227f615350ed95a36e1d9c0ba0a0ffe4744ea5a39b62c88f253069
MD5 15f8ef6be2cfc121b763b92797ea3b3b
BLAKE2b-256 71bd482b7b60e230b53f308d10bb44b984761a1acb8fd60f6cf45725c30a4ed8

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp312-cp312-manylinux_2_28_aarch64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 91e4f14b496942463538c470b40fa4cbc7fb12b79a615cb8df29214d27f664c8
MD5 7f97c73f8fb6e2685d6a90e226bc7a28
BLAKE2b-256 a59dc1f5e8cf072dadc73c33cb79e2c0891dc4048f80adddc5a394bd6b8cc1d6

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 745fc739a9b217250e8d77cebed4c015671c3831317d239f83f01cddf71074dd
MD5 09d3bad2cdf05540016d2b8310f96d33
BLAKE2b-256 3917f9cb8d32d720f2ba1f14af03ef86dfbd38d220a9caebed599c2ab2555c07

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 6bec5f6b22e1549cf296052787c2f7907b371fc0efb392d979e55590935ebecf
MD5 5c1e58465427a2fac415fa61a0157b77
BLAKE2b-256 98b31d90b548ca70839c2dbf81c9117b07d3ddf7533aafb903db0925e798e864

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp312-cp312-macosx_10_12_x86_64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: cachekit-0.8.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 432.4 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cachekit-0.8.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 8e327f5766ccda56932626fdc8b5f75e1067fe20b5a1c1a81eb779af8e1f5a26
MD5 43b9360afaafbd4c6911c030193e1006
BLAKE2b-256 5542e8d6dfc857baa7cbfe211b8fb92994f832eb47c36d47c95fe73a3867296f

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp311-cp311-win_amd64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 42805c73f9f9436b7185b2b8abbe07f0e3d6a7704d25d86d5bd6cb8343b031a7
MD5 c8aa7b0f1a9186fe5a7da11ca67a3f2b
BLAKE2b-256 204675431ed266a115c2954355e4c1e8e481e9511ed557fb18909ebcfade9d60

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp311-cp311-manylinux_2_28_aarch64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ba858290e06331d7378d54fc9a3ae4497dbeedaf2e71b8186f66ba0cb5494383
MD5 24793ef3a6146aa5bd88bb6e23b02ffa
BLAKE2b-256 47794485fa806e93d31c246a018c76e76af6a6ef11232ee338eb70fa1f558a14

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ba194e4f9e7848296b14948691c90826011ca4f4455084d3831661249a7e342d
MD5 185de3ddcf10e75b650d3f651cfc8045
BLAKE2b-256 17e8247b9178200d5cc024acee7a29a26fe66368a909bf8d9c2a8a0b06a10629

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 edc0e244499770d38184d05ff7c45e7367d5d75889ca141dfdf70a35e1e7d440
MD5 63e5fe3cdf178660d7a2cc09e2c108fd
BLAKE2b-256 bd95cd56d3afef6c4fbb97ad78839347035b82420af220477997c79c77aaa7aa

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp311-cp311-macosx_10_12_x86_64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: cachekit-0.8.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 432.6 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cachekit-0.8.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 a36621c845ad646bcda7ea2d63ba287f14cae4148b2963d07da67557da04f199
MD5 5d12d3e1feb1c2d29901b0a7df7fafcc
BLAKE2b-256 2c57fdbc8a6118a72355a518fdb618dfec48d58cc90c84eebe12c1ffc905d0f8

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp310-cp310-win_amd64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 bc21403662fe0300836ec14a30bed72b49937a79a0ae3ec8b527c9c9f93aad1f
MD5 a1883952d01100783911a52346ea5274
BLAKE2b-256 294820b705b486f315049275c1efe9ea0234a7f3651ca2c40dce39935fd80bdd

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp310-cp310-manylinux_2_28_aarch64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 31913e895a6070d13f089a0db3b4bf13b14d8a27a86178d486b7023aaee2a29a
MD5 de59b7e427a307c203e456437643b2e9
BLAKE2b-256 c4b890c2fe9fae19e66ec714e6ea168ab9507483c990167fdc2f5cc5dabbd5a8

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3c1984f78464140bb539deab5368d9f5a5362b6b3286ef08c5385f5d8fa768e8
MD5 7855a1cc152af661e16434666dd2522b
BLAKE2b-256 82b38599e4b2957fb4b862f719159011378cc16fd0bda82f24ebb3f1d2adcdc5

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b200257e27b56c66b598c12156175b7cedd167e6902e9a59d5515c145976a22c
MD5 d3c1adcedf0a2ad6ff10d1874bd78152
BLAKE2b-256 89731ac3e6d2051db55b53ebe8662d90bd98483f1b6afd7f54918f9dc4a6cd7f

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp310-cp310-macosx_10_12_x86_64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: cachekit-0.8.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 432.7 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cachekit-0.8.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 12340d2adc107a629f28e0649e6884183de985b65c0b08950094aec98f1d5b07
MD5 98008572889a65f8c89e684ec9cccc57
BLAKE2b-256 4d2bdb88609027b3f7565e5469a267605a7cd3210184bb6f94a3f02051118274

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp39-cp39-win_amd64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp39-cp39-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp39-cp39-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 47c402ff2285423f2428232bc36e78d1fde6c32c9927a27e6c457aec8d88565e
MD5 310868dd085fbcd6042900b955ac7786
BLAKE2b-256 8b070acf183d67c31e39c5bbfe1571f09de254bc56bdde15e968dd22905553e6

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp39-cp39-manylinux_2_28_aarch64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ec007685b8e2eed7623038ebe4b48e932359b0439b9835ba51f1cf7b0a5cc280
MD5 e1cccb8f96ba5914fe1d59c1666fe5c3
BLAKE2b-256 630bc33764b61fa6d6b2f1acf411b000fba782091e453e07e0759157ac141ea8

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6d2f23e9213e04cdeb325173722d543c0b57c1a082a3c4be3f84d2719d84e64c
MD5 bd86a2ddd49eaa8acb8e6c3dc2c00348
BLAKE2b-256 d1a1c1956d3e36832a77703f83f0014366521cb6eb77d9d480337761e50d087e

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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

File details

Details for the file cachekit-0.8.0-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for cachekit-0.8.0-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 aca55bda17d4c50fe58e51a4debaf63d9fdd2bb7535306e1c55d9f6c55c0d193
MD5 c6b744f73ef11a304b0e51cb220bfee6
BLAKE2b-256 7e1b6e4755a27f551e3e511779897d39295034cb055c0a76375d1d6a8fa437dc

See more details on using hashes here.

Provenance

The following attestation bundles were made for cachekit-0.8.0-cp39-cp39-macosx_10_12_x86_64.whl:

Publisher: release-please.yml on cachekit-io/cachekit-py

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