Skip to main content

Epochly - Transparent performance optimization for Python applications

Project description

Epochly - Transparent Performance Optimization

PyPI version Python 3.9-3.14

Significant performance improvement with zero code changes!

Epochly provides transparent performance optimization for Python applications through a progressive enhancement system.

🚀 Installation

pip install epochly

That's it! Epochly is now ready to accelerate your Python code.

⚡ Quick Start

Method 1: Automatic Optimization (Recommended)

import epochly  # Just this import provides optimization!

# Your existing code runs faster automatically
import numpy as np

def matrix_computation():
    a = np.random.rand(1000, 1000)
    b = np.random.rand(1000, 1000)
    return np.dot(a, b)

result = matrix_computation()  # Automatically optimized!

Method 2: Selective Optimization

from epochly import optimize

@optimize
def slow_function(data):
    # This function will be optimized
    return complex_computation(data)

Method 3: Context Manager

from epochly import optimize_context

with optimize_context():
    # All code in this block is optimized
    result = heavy_computation()

✨ Key Features

  • Zero Configuration: Just import and go - Epochly automatically detects and optimizes your workloads
  • Progressive Enhancement: Four optimization levels from monitoring to full sub-interpreter parallelization
  • 100% Compatibility: Works with existing Python code, libraries, and frameworks
  • Production Ready: Controlled deployment with emergency controls and monitoring
  • Transparent Activation: Automatic activation via sitecustomize.py for seamless integration

📊 Performance Results

Epochly provides transparent optimization through 5 progressive enhancement levels:

  • Level 0: Monitoring and analysis
  • Level 1: Basic threading optimization
  • Level 2: JIT compilation
  • Level 3: Full optimization with sub-interpreters and shared memory
  • Level 4: GPU acceleration (when available)

Average performance improvement varies by workload type.

🎯 Use Cases

Perfect for:

  • Scientific computing and data analysis
  • Machine learning preprocessing
  • Financial modeling
  • Image and signal processing
  • Any CPU-intensive Python code

🔧 Advanced Configuration

from epochly import configure, EnhancementLevel

# Set optimization level
configure(enhancement_level=EnhancementLevel.LEVEL_3_FULL)

# Enable profiling
configure(profile_enabled=True)

# Control worker threads
configure(max_workers=8)

📖 Documentation

For comprehensive documentation, visit https://epochly.com/docs

🏃 Demo

Try our performance demo:

# After installation
python -m epochly.benchmark

💻 System Requirements

  • Python 3.9-3.14
  • Linux, macOS, or Windows
  • No GPU required (CPU optimization)

🚀 Deployment

Transparent Activation

Epochly can be transparently activated for all Python processes:

# Install sitecustomize.py for automatic activation
epochly-deploy install

# Selective activation by environment
export EPOCHLY_ENABLED=1
python your_app.py

# Configuration file control
echo "enabled: true" > ~/.epochly/config.yml

Production Deployment

# Controlled rollout
epochly-deploy enable --percentage 10 --monitor-only

# Emergency disable
epochly-deploy disable --emergency

# Monitor deployment
epochly-deploy status --detailed

📊 Monitoring

Epochly provides comprehensive monitoring and observability:

import epochly

# Get performance metrics
metrics = epochly.get_metrics()
print(f"Enhancement level: {metrics.get('enhancement_level')}")
print(f"Functions optimized: {metrics.get('functions_optimized', 0)}")

# Check current status
status = epochly.get_status()
print(f"Enabled: {status['enabled']}")

🔒 Security

Epochly implements comprehensive security measures:

  • Memory isolation between interpreters
  • Access control for shared memory
  • Audit logging for all operations
  • Side-channel attack mitigation
  • Secure deployment controls
  • HMAC-signed pickle helper for trusted IPC boundaries (epochly.security.signed_pickle)
  • Hardened AST sanitizer for dynamically-compiled user code paths
  • Prometheus exporter defaults to loopback (127.0.0.1) with explicit warning when an operator opts into 0.0.0.0 without authentication
  • Bounded Prometheus metric-name cardinality (user-input hashing + 1000-name ceiling)

Stability & Memory Correctness

Verified by the 2026-04-16 P0 stabilization sweep (24 behavioral assertions in validation-contract.md, 30+ new regression tests):

  • Bounded HALF_OPEN probe concurrency in the memory circuit breaker
  • Adjacent-block coalescing in HybridLargeBlockManager (no long-run fragmentation)
  • Real OS mprotect(PROT_NONE) enforcement on memory-pool guard pages
  • Fixed small-slab (<64 object) bitmap math
  • Serialized FastMemoryPool bookkeeping under contention
  • Verified on Linux RTX 4070 (NVIDIA GPU path): 1012 passed, 90 skipped, 0 failed across the memory + progression suites
  • 5% wall-clock overhead budget preserved on non-beneficial workloads (tests/validation/test_acceleration_proof.py)

Phase 2 Stabilization (P1/P2/P3)

Verified by the 2026-04-16 Phase 2 stabilization sweep (116 additional behavioral assertions across 9 milestones, M5–M13):

  • NUMA-aware memory placement and monitoring hardening (M5–M6)
  • Runtime, JIT, and ML-path correctness (M7–M8); banned env-var writes rerouted through config helpers
  • Licensing integrity (trial endpoint hardening, dev-token horizons, license integrity, progression protection) (M9)
  • Boot-sequence, core, and config robustness (M10); CLI, Jupyter, and deployment paths (M11)
  • GPU and native inference sweep on RTX 4070 with zero mission regressions (M12)
  • Closeout sweeps: progression integrity, hygiene (0 TODO/FIXME/HACK/XXX, 0 mocks, 0 banned env writes), Cython wheel verification, Python 3.9 compatibility fix (M13)
  • Hygiene guardrails landed as executable tests: tests/validation/test_no_mocks_in_src.py and tests/validation/test_no_banned_env_writes.py

M6 Post-Merge Followups

Final m6 followup validation on main head e24291509718a89b6820075aa55051ec34a3e996 covered:

  • Merged followup PRs: #519, #522, #525, #527, #528, and #529.
  • Closed issues touched by the followups: #117, #517, #520, #521, #524, and #526.
  • Open infrastructure / known-pre-existing trackers intentionally left open: #498, #512, and #518.
  • PR #515 remains in the author's court and was not merged because review identified a cross-platform Level-2 JIT effectiveness regression.

📚 Documentation

🤝 Contributing

We welcome contributions! Please see our Contributing Guide for details.

# Development setup
git clone https://github.com/epochly-python/epochly.git
cd epochly
python3.12 -m venv .venv
source .venv/bin/activate
pip install -e '.[dev]'
pre-commit install

# Run tests (always activate the venv first)
source .venv/bin/activate
pytest tests/unit/

# Run benchmarks
pytest tests/performance/ --benchmark-only

Note: Epochly supports Python 3.9 through 3.14. Cython extensions build with python setup.py build_ext --inplace. Cross-version development venvs (.venv-py39, .venv-py310, .venv-py311, .venv-py312, .venv-py313) can be created alongside .venv for compatibility testing.

📄 License

Epochly is proprietary commercial software licensed under the Epochly Software License Agreement (ESLA). See LICENSE for the complete license terms.

🙏 Acknowledgments

Epochly builds upon the excellent work of:

  • Python core developers for sub-interpreter support
  • NumPy and SciPy communities for numerical computing foundations
  • PyPy team for JIT compilation insights
  • Numba developers for compilation techniques

Epochly - Making Python Fast, Transparently 🐍⚡

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

epochly-0.6.6-cp314-cp314-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.14Windows x86-64

epochly-0.6.6-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (6.3 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

epochly-0.6.6-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (6.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

epochly-0.6.6-cp314-cp314-macosx_15_0_arm64.whl (2.4 MB view details)

Uploaded CPython 3.14macOS 15.0+ ARM64

epochly-0.6.6-cp313-cp313-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.13Windows x86-64

epochly-0.6.6-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (6.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

epochly-0.6.6-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (6.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

epochly-0.6.6-cp313-cp313-macosx_15_0_arm64.whl (2.4 MB view details)

Uploaded CPython 3.13macOS 15.0+ ARM64

epochly-0.6.6-cp312-cp312-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.12Windows x86-64

epochly-0.6.6-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

epochly-0.6.6-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (6.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

epochly-0.6.6-cp312-cp312-macosx_15_0_arm64.whl (2.4 MB view details)

Uploaded CPython 3.12macOS 15.0+ ARM64

epochly-0.6.6-cp311-cp311-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.11Windows x86-64

epochly-0.6.6-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (6.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

epochly-0.6.6-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (6.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

epochly-0.6.6-cp311-cp311-macosx_15_0_arm64.whl (2.4 MB view details)

Uploaded CPython 3.11macOS 15.0+ ARM64

epochly-0.6.6-cp310-cp310-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.10Windows x86-64

epochly-0.6.6-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (6.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

epochly-0.6.6-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (6.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

epochly-0.6.6-cp310-cp310-macosx_15_0_arm64.whl (2.4 MB view details)

Uploaded CPython 3.10macOS 15.0+ ARM64

epochly-0.6.6-cp39-cp39-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.9Windows x86-64

epochly-0.6.6-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (6.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

epochly-0.6.6-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (6.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

epochly-0.6.6-cp39-cp39-macosx_15_0_arm64.whl (2.4 MB view details)

Uploaded CPython 3.9macOS 15.0+ ARM64

File details

Details for the file epochly-0.6.6-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: epochly-0.6.6-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 2.2 MB
  • 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 epochly-0.6.6-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 9560384215259835a753ba9a630d5542b88b3200030d026280fd8eca6fa5d638
MD5 669d942349a531fe17622272dcb76d6b
BLAKE2b-256 3f765535845bc07c4038f833f558dac57907b9bf416738afbc5d810250935539

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp314-cp314-win_amd64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for epochly-0.6.6-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e7675bf0fb694c0f3af9247b6d40286a6baf3498254b0d6e0fe950e797116a7d
MD5 ee07838d09813bed95b3c8bed200717c
BLAKE2b-256 6a0d29f2c46a31d0f5543e7b555e9fa6af4f5c5972f1be234beeea18a4f5add4

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for epochly-0.6.6-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 c31caafafdef1e4939aafa8c67080356407324dfef719a062c1b442ec4061d3e
MD5 63626d9b59e6e32a188d459ade15ef82
BLAKE2b-256 b3a8837e12a41faca095ba23c7faa0983f26afecff26becd4f8b734613ba7989

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp314-cp314-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for epochly-0.6.6-cp314-cp314-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 b05780308130e2c8980230bf9a1807fc47996d294f3e400138efd3b2c3a797d7
MD5 feb8e4db6b640e31feae0f63c22cecb9
BLAKE2b-256 021d65419be34cae31d25529360d4d52440c7692889ee9680358c654cc36b3ee

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp314-cp314-macosx_15_0_arm64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: epochly-0.6.6-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 2.2 MB
  • 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 epochly-0.6.6-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 118c2e3ee21a56eb33c88fd57b5151ecc328ed4dfd59dee92842e4c03ed7622f
MD5 a7ffaa861623e8a8d340571d23bf4698
BLAKE2b-256 45ca542eae6dd724d9413c6cfd2d6fca9d86717dea1092ffd3f1ec64c6dd57a6

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp313-cp313-win_amd64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for epochly-0.6.6-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8d9417c02fcb00c58516c8dbf08d4866ac1ad2707c182be3897af5a67ff5e553
MD5 bec86332d9b4ab5139ed793950dbe3cf
BLAKE2b-256 45f180c9f628523bc29dc9cb3a8408846a7dbce781c023785be58a5436d6e387

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for epochly-0.6.6-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a208d479b1989f294ca1e19a6309d9aab29bf2879ebd63c0ece1f5ae2500700b
MD5 dff15f66515018981f1edde23300728e
BLAKE2b-256 703b1a36659f3ec3b618fb4391f8f2408209b954e6d756d2d7cecbf1b5717fbd

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp313-cp313-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for epochly-0.6.6-cp313-cp313-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 e5495bbb1a135cdd56fe549608a79bd87d2798e5d818085623e1c52ccf2ae230
MD5 d54853d45a47b39099e786c64fe682a6
BLAKE2b-256 9564acb37ec211790f1143222d17ced575a5b19e5993f6e9b44b3060e72738a8

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp313-cp313-macosx_15_0_arm64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: epochly-0.6.6-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 2.2 MB
  • 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 epochly-0.6.6-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 f161e143165c29136897656a7ba11b6e00c621a257194713b6c160fccf5c20cb
MD5 e2de0348ecd597f1a2974905187fb267
BLAKE2b-256 fc7d1f34b235f0c77ac84fbbfdb714b8c9e742f6ebeded4f3f701dcf9ca72e11

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp312-cp312-win_amd64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for epochly-0.6.6-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a3884710441cb5f24b8a0ef1566247044379adbe96da6ca01ef57e2f287ac730
MD5 0d4d3d87f8ce473250fe2db51ab49036
BLAKE2b-256 dd6d725fc63f8c2f0a4edef3c819bcb81904f7b26c5e5222f7087346dd9ca3d3

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for epochly-0.6.6-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 7cf0c6e0fd4ebbb670de4dafe5daf7138dd181208f64e1d846369d6b4a385a1c
MD5 26c42a9b52185bfab1b7842d463c4f1a
BLAKE2b-256 601ca11df1f474fc0692d3479a9645b35836623a5141a9849638842906b6c193

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp312-cp312-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for epochly-0.6.6-cp312-cp312-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 b9a42e1c942a302910feeabe72a7cdd5ddb0c947017ad429229733b5634e8742
MD5 28860f1a86ba2f58d6d948867d0daf38
BLAKE2b-256 634346962445a82e848c568b20e6e44dbbd95bb8b7bce6f3645331b7428beb85

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp312-cp312-macosx_15_0_arm64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: epochly-0.6.6-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 2.2 MB
  • 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 epochly-0.6.6-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 76843abb5a7e822f602d2a474ad45ce9d2eb492f9ffd364f6eb187142f028925
MD5 4d3ec8c9d5b85773dd36cde3bb9b54c7
BLAKE2b-256 3cd0b3866b74124545c0846cbd7c62cead52d2aaa49a9e2fcc266db0b3f5dbe6

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp311-cp311-win_amd64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for epochly-0.6.6-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 379f60f73b474c0996027738dac24b0caf97bd6d57057a319a659c76ae057778
MD5 70b8c9c436bb5ec795449efe838ec9e8
BLAKE2b-256 91b6f72d5a00cc433f0d0c597c30647069d71ea3b0a7ed11182dfdbdaf1913e4

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for epochly-0.6.6-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 68d690296aba68263c697678668f3c4b94090415ba498d25340abac2c2d7f602
MD5 22cfc199d1c7e9a9eeb4776c8bb0f06d
BLAKE2b-256 b2d159d8339e93059a698a416d7db28e390803cf797c415630aec4182b8900c5

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp311-cp311-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for epochly-0.6.6-cp311-cp311-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 25fdbf1590e9859c8780164a5f06d11d51d6b7500f0f556467f5b6fdd890ee7a
MD5 b63c8eda7f1cd5a0c559d13ccae61881
BLAKE2b-256 96b5cc459e476f993868c77abba827c9ceae89a066661c0080507031d5364639

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp311-cp311-macosx_15_0_arm64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: epochly-0.6.6-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 2.2 MB
  • 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 epochly-0.6.6-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 b85c0eac696e5943bcc68275a8aaffb3f40595a3674f00dfd26c43540183e30e
MD5 299ac6741fd1123bf6eda00c678d06b9
BLAKE2b-256 87c30b6dda001d17c0e3bb2c703918655d08ca3d090cfba433b26e187d0262b7

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp310-cp310-win_amd64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for epochly-0.6.6-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8979d14386e164db2eb6644756bfa92edd965484aaa9b5f83089f0353a59e9b7
MD5 91dc1033ea76c031943d6388d96bea4e
BLAKE2b-256 ecbbb1ac600f6b085ea1705b65076a12d646234f1b1a82cb2fdf6120e218c183

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for epochly-0.6.6-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f497f5e45c4e1cb5fde3abb4532e86fce97d2d34297519a0d0924e19450e63dd
MD5 4f83c9889c5714ac14e870fac2494a57
BLAKE2b-256 4478185cc094e46b70d3cb03292571df458615c87ceb2d04c456a1dca7cec6bc

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp310-cp310-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for epochly-0.6.6-cp310-cp310-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 926442fb76c08125ea210486c5f0ed1ff11a358c97c4d2baa1af266f8322c7cb
MD5 1a9a58cf68b504650e35efab2cf55741
BLAKE2b-256 133d21c2e9a6a56ebf89a1e263e3049772513e8b91c97f7a6f3815d8df29007d

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp310-cp310-macosx_15_0_arm64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: epochly-0.6.6-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 2.2 MB
  • 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 epochly-0.6.6-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 686e809787b929398052795f80ca8a6aa100942dcb8b71f49411a5d61294374e
MD5 caded51bffa0cfe6e8687fd42c622caf
BLAKE2b-256 9e23f83c77e5d584283b497714e6eef4517a038b3e5785437ec82bebe408e07d

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp39-cp39-win_amd64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for epochly-0.6.6-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5cdc49a7a0e4108b740c389c51b5b2e5a65f1c7701ce9b18cf92cfe20b86c35e
MD5 253950018b1930ad1182577561150b0f
BLAKE2b-256 99fc6280ffe0d977d6f1911b12c69b39b2db0d604518005edc3e4fa94e8bd947

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for epochly-0.6.6-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 7ee4555c8a6dccacca2f308b9a51150c64e78c6be43ded12a91e0fec9279b7d2
MD5 416cd1ec3bfe4825eab93ef0257ee05e
BLAKE2b-256 a0998880c39ac5376af575c05d1342eef1bfb1a7ee9c711c5a8e9e1abfd43e31

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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

File details

Details for the file epochly-0.6.6-cp39-cp39-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for epochly-0.6.6-cp39-cp39-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 653d2da675a5752b515e140807b6e6dae1855ef3ea3cc717ed4a6f1e2a600da4
MD5 07f46d218848a57912a66fd41fe2d769
BLAKE2b-256 e8f8edecba8c50c781a6f70337c3deb42e5fc721f87b72df86e364661923f969

See more details on using hashes here.

Provenance

The following attestation bundles were made for epochly-0.6.6-cp39-cp39-macosx_15_0_arm64.whl:

Publisher: publish-pypi.yml on chandlercvaughn/epochly

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