Skip to main content

Penalty Blog

Penalty Blog Logo

penaltyblog: Football Data & Modelling Made Easy

penaltyblog is a production-ready Python package designed for football (soccer) analytics, providing powerful tools from pena.lt/y/blog for data analysis, outcome modelling, and betting insights. Optimized with Cython, penaltyblog delivers high-performance modelling to power faster, efficient predictions.

Features

  • 🔄 Streamline JSON Workflows with MatchFlow: Process nested football data using a lazy, streaming pipeline built for JSON. Filter, select, flatten, join, group, and summarize large datasets without loading everything into memory.
  • 🔌 Connect to Professional APIs: Seamlessly stream and filter data directly from industry leaders, like StatsBomb and Opta. Query matches, events, and stats using lazy loading without handling massive JSON dumps.
  • 📊 Model Matches Efficiently: High-performance implementations of Poisson, Bivariate Poisson, Dixon-Coles, and other advanced statistical models, optimized with Cython for rapid analysis.
  • 🧠 Advanced Bayesian Modelling: Full posterior distributions for match outcomes using MCMC sampling. Includes Hierarchical Bayesian models to automatically learn league-wide variances and handle parameter uncertainty.
  • ⚽ Scrape Data: Collect match statistics from sources like Understat, Club Elo, and Fantasy Premier League.
  • 💰 Bet Smarter: Precisely estimate probabilities for Asian handicaps, over/under totals, match outcomes, and more.
  • 🏆 Rank Teams: Evaluate team strengths with sophisticated methods including Elo, Massey, Colley, and Pi ratings.
  • 📈 Decode Bookmaker Odds: Accurately extract implied probabilities by removing bookmaker margins (overrounds).
  • 🎯 Fantasy Football Optimisation: Mathematically optimize your fantasy football squad to maximize performance.
  • 🎨 Visualize with Style: Create publication-ready pitch visualizations and data flow diagrams with customizable themes, supporting multiple data providers and flexible layouts.

Take your football analytics and betting strategy to the next level with penaltyblog 🚀

Installation

pip install penaltyblog

Agent Support

If you are using a coding agent such as Claude Code, Cursor, or Copilot, the repository includes a skill file at .claude/skills/penaltyblog/SKILL.md that gives your agent full context about the penaltyblog API. The file is self-contained and covers all public modules — no additional files are needed.

🚀 Quick Start - Try it Now!

Run these examples directly in your browser (no installation required):

Example Description Colab
Predict Soccer Match Results Build a match prediction model from scratch Open In Colab
Process Soccer Data the Easy Way Lazy processing of football data using Matchflow Open In Colab
Calculate Massey Ratings Calculate teams' attack and defense strengths Open In Colab
Use Pi Ratings Like Elo ratings, but better Open In Colab
Create Interactive Charts Create your own interactive football vizualisations Open In Colab
Work Directly With Statsbomb Data Connect directly to Statsbomb's API, including their free open data sets Open In Colab
Calculate Implied Probabilities Calculate implied probabilities from bookmaker's odds Open In Colab
Calculate Expected Threat (xT) Calculate xT from event data Open In Colab

Documentation

Learn more about how to utilize penaltyblog by exploring the official documentation and detailed examples:

Why Penaltyblog?

Unlike many football analytics resources that are academic, one-off, or hard to scale, penaltyblog is designed from the ground up to be production-ready, performance-optimized, and practically useful.

It combines advanced statistical models (including Bayesian and Hierarchical Bayesian variants), efficient implementations (via Cython), and real-world workflows, from scraping public data to modelling outcomes and optimising fantasy teams.

The project is maintained by Martin Eastwood, a data scientist focused on the intersection of high-performance computing and sports analytics. penaltyblog aims to provide the community with a robust, audited foundation for advanced modeling.

Community & Contributions

I am always interested in seeing how penaltyblog is being applied in research and industry. If you have feedback, bug reports, or want to collaborate on new features, feel free to:

Metadata

Release files for penaltyblog 1.12.3

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

Source distribution (sdist)

Source distribution for penaltyblog 1.12.3
File Size Uploaded
penaltyblog-1.12.3.tar.gz 1.6 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for penaltyblog 1.12.3
File
penaltyblog-1.12.3-cp315-cp315t-win_amd64.whl CPython 3.15 CPython 3.15 free-threading Windows x86-64 Details
penaltyblog-1.12.3-cp315-cp315t-win32.whl CPython 3.15 CPython 3.15 free-threading Windows x86-32 Details
penaltyblog-1.12.3-cp315-cp315t-musllinux_1_2_x86_64.whl CPython 3.15 CPython 3.15 free-threading Linux musl 1.2+ x86-64 Details
penaltyblog-1.12.3-cp315-cp315t-musllinux_1_2_aarch64.whl CPython 3.15 CPython 3.15 free-threading Linux musl 1.2+ ARM64 Details
penaltyblog-1.12.3-cp315-cp315t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.15 CPython 3.15 free-threading Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
penaltyblog-1.12.3-cp315-cp315t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.15 CPython 3.15 free-threading Linux glibc 2.28+ ARM64, Linux glibc 2.17+ ARM64 Details
penaltyblog-1.12.3-cp315-cp315t-macosx_11_0_arm64.whl CPython 3.15 CPython 3.15 free-threading macOS 11.0+ ARM64 Details
penaltyblog-1.12.3-cp315-cp315t-macosx_10_15_x86_64.whl CPython 3.15 CPython 3.15 free-threading macOS 10.15+ x86-64 Details
penaltyblog-1.12.3-cp315-cp315-win_amd64.whl CPython 3.15 CPython 3.15 Windows x86-64 Details
penaltyblog-1.12.3-cp315-cp315-win32.whl CPython 3.15 CPython 3.15 Windows x86-32 Details
penaltyblog-1.12.3-cp315-cp315-musllinux_1_2_x86_64.whl CPython 3.15 CPython 3.15 Linux musl 1.2+ x86-64 Details
penaltyblog-1.12.3-cp315-cp315-musllinux_1_2_aarch64.whl CPython 3.15 CPython 3.15 Linux musl 1.2+ ARM64 Details
penaltyblog-1.12.3-cp315-cp315-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.15 CPython 3.15 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
penaltyblog-1.12.3-cp315-cp315-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.15 CPython 3.15 Linux glibc 2.28+ ARM64, Linux glibc 2.17+ ARM64 Details
penaltyblog-1.12.3-cp315-cp315-macosx_11_0_arm64.whl CPython 3.15 CPython 3.15 macOS 11.0+ ARM64 Details
penaltyblog-1.12.3-cp315-cp315-macosx_10_15_x86_64.whl CPython 3.15 CPython 3.15 macOS 10.15+ x86-64 Details
penaltyblog-1.12.3-cp314-cp314t-win_amd64.whl CPython 3.14 CPython 3.14 free-threading Windows x86-64 Details
penaltyblog-1.12.3-cp314-cp314t-win32.whl CPython 3.14 CPython 3.14 free-threading Windows x86-32 Details
penaltyblog-1.12.3-cp314-cp314t-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64 Details
penaltyblog-1.12.3-cp314-cp314t-musllinux_1_2_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ ARM64 Details
penaltyblog-1.12.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
penaltyblog-1.12.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.28+ ARM64, Linux glibc 2.17+ ARM64 Details
penaltyblog-1.12.3-cp314-cp314t-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64 Details
penaltyblog-1.12.3-cp314-cp314t-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 free-threading macOS 10.15+ x86-64 Details
penaltyblog-1.12.3-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
penaltyblog-1.12.3-cp314-cp314-win32.whl CPython 3.14 CPython 3.14 Windows x86-32 Details
penaltyblog-1.12.3-cp314-cp314-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ x86-64 Details
penaltyblog-1.12.3-cp314-cp314-musllinux_1_2_aarch64.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ ARM64 Details
penaltyblog-1.12.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
penaltyblog-1.12.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
penaltyblog-1.12.3-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
penaltyblog-1.12.3-cp314-cp314-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.15+ x86-64 Details
penaltyblog-1.12.3-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
penaltyblog-1.12.3-cp313-cp313-win32.whl CPython 3.13 CPython 3.13 Windows x86-32 Details
penaltyblog-1.12.3-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details
penaltyblog-1.12.3-cp313-cp313-musllinux_1_2_aarch64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ ARM64 Details
penaltyblog-1.12.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
penaltyblog-1.12.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
penaltyblog-1.12.3-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
penaltyblog-1.12.3-cp313-cp313-macosx_10_13_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.13+ x86-64 Details
penaltyblog-1.12.3-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
penaltyblog-1.12.3-cp312-cp312-win32.whl CPython 3.12 CPython 3.12 Windows x86-32 Details
penaltyblog-1.12.3-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details
penaltyblog-1.12.3-cp312-cp312-musllinux_1_2_aarch64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ ARM64 Details
penaltyblog-1.12.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
penaltyblog-1.12.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
penaltyblog-1.12.3-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
penaltyblog-1.12.3-cp312-cp312-macosx_10_13_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.13+ x86-64 Details
penaltyblog-1.12.3-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
penaltyblog-1.12.3-cp311-cp311-win32.whl CPython 3.11 CPython 3.11 Windows x86-32 Details
penaltyblog-1.12.3-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details
penaltyblog-1.12.3-cp311-cp311-musllinux_1_2_aarch64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ ARM64 Details
penaltyblog-1.12.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
penaltyblog-1.12.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
penaltyblog-1.12.3-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
penaltyblog-1.12.3-cp311-cp311-macosx_10_9_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.9+ x86-64 Details
penaltyblog-1.12.3-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
penaltyblog-1.12.3-cp310-cp310-win32.whl CPython 3.10 CPython 3.10 Windows x86-32 Details
penaltyblog-1.12.3-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details
penaltyblog-1.12.3-cp310-cp310-musllinux_1_2_aarch64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ ARM64 Details
penaltyblog-1.12.3-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
penaltyblog-1.12.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
penaltyblog-1.12.3-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
penaltyblog-1.12.3-cp310-cp310-macosx_10_9_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.9+ x86-64 Details

Total release size: 259.9 MB

Release files / penaltyblog-1.12.3.tar.gz

Download URL penaltyblog-1.12.3.tar.gz
Size 1.6 MB
Tags Source
SHA-256 checksum
How to use checksums
6e30add2e29193ae3bbc1f74a6b728e65413291f17ef172812667763bc503a3d
BLAKE2b-256 checksum
How to use checksums
e99a77fd866d8e0c777cd8b58909db8b7239bfc5d28d67a744e24fe09a6d8a90
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp315-cp315t-win_amd64.whl

Download URL penaltyblog-1.12.3-cp315-cp315t-win_amd64.whl
Size 2.3 MB
Tags CPython 3.15 CPython 3.15 free-threading Windows x86-64
SHA-256 checksum
How to use checksums
9edd53c09d0eb29be65aa7370b79f279a5706529ac0995a2ac69b74cf8b17fe6
BLAKE2b-256 checksum
How to use checksums
ca3a1776ed6600364a0fc5faef6f47de9a2c3549944c644074520940d93f5775
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp315-cp315t-win32.whl

Download URL penaltyblog-1.12.3-cp315-cp315t-win32.whl
Size 2.2 MB
Tags CPython 3.15 CPython 3.15 free-threading Windows x86-32
SHA-256 checksum
How to use checksums
76ddf70196bd026876154fedda8b13392bd4d02215b80f6774f814f2644146e5
BLAKE2b-256 checksum
How to use checksums
90e2c71bf7e628ea242ee9c67711e04cceddefd51606255cf2fe7aff272729e0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp315-cp315t-musllinux_1_2_x86_64.whl

Download URL penaltyblog-1.12.3-cp315-cp315t-musllinux_1_2_x86_64.whl
Size 5.8 MB
Tags CPython 3.15 CPython 3.15 free-threading Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
b82af19a05304f25826c6e72882bb13e0c4bc3db1a39cd51da1b6a5374925e27
BLAKE2b-256 checksum
How to use checksums
220d7aa44f495c4222f0965a2496da64552730dddc710ff4a296940162992c3f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp315-cp315t-musllinux_1_2_aarch64.whl

Download URL penaltyblog-1.12.3-cp315-cp315t-musllinux_1_2_aarch64.whl
Size 5.7 MB
Tags CPython 3.15 CPython 3.15 free-threading Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
67df4dec9ebf33212310730bf2099fd36893b51b41814110882b2d43ac95caa7
BLAKE2b-256 checksum
How to use checksums
94d035238190833a78ffe66f3074975beeee7b0aca5a1a54a9b3423fbd423eaa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp315-cp315t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL penaltyblog-1.12.3-cp315-cp315t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 5.8 MB
Tags CPython 3.15 CPython 3.15 free-threading Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
5b23de7bcfa6410f85958a442ed93aaaa2bcb70e98dba589306d9d1ec71da614
BLAKE2b-256 checksum
How to use checksums
8adc9b6c24c75b974f9c9e75e9e957e068c1f3da9c86bbdd5db1778ae684c47d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp315-cp315t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL penaltyblog-1.12.3-cp315-cp315t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 5.8 MB
Tags CPython 3.15 CPython 3.15 free-threading Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
9ee4d3f7dc7926650765e07f8c28aadc609777b0f77ae723ae2cd729f6297b03
BLAKE2b-256 checksum
How to use checksums
0ec8d1f8a368a6aa1720625c55424582794e2a672359faa45c874b61238d1727
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp315-cp315t-macosx_11_0_arm64.whl

Download URL penaltyblog-1.12.3-cp315-cp315t-macosx_11_0_arm64.whl
Size 2.3 MB
Tags CPython 3.15 CPython 3.15 free-threading macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
26b3f72d23b965f4af2d301e5a537ed68d8bd974b71a3cfa1839023a34c9738d
BLAKE2b-256 checksum
How to use checksums
853f67ca272dbeb28ef20ec9bef7a8957ef831e3adb505353aec000b7922a891
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp315-cp315t-macosx_10_15_x86_64.whl

Download URL penaltyblog-1.12.3-cp315-cp315t-macosx_10_15_x86_64.whl
Size 2.3 MB
Tags CPython 3.15 CPython 3.15 free-threading macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
aeb8acffe83745665fefc001e621f84f8cbeb6d1bee67ed9d27eab32802b86e2
BLAKE2b-256 checksum
How to use checksums
a52e557de23073119ba4c5db79b54292aab7430e6b75ed9c3ed8e8e15e165b6b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp315-cp315-win_amd64.whl

Download URL penaltyblog-1.12.3-cp315-cp315-win_amd64.whl
Size 2.3 MB
Tags CPython 3.15 Windows x86-64
SHA-256 checksum
How to use checksums
02f010c39235e1047de691abcda1a9047b92f2ab770ce097ab41cf5f3a87f7eb
BLAKE2b-256 checksum
How to use checksums
4678c87c5ed467e3e1fd7b8a7a87f541628815a34a8da0b1808deaf4f9a114e3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp315-cp315-win32.whl

Download URL penaltyblog-1.12.3-cp315-cp315-win32.whl
Size 2.1 MB
Tags CPython 3.15 Windows x86-32
SHA-256 checksum
How to use checksums
a5939006ce4941a483d2240fbaf7b7786bdf32f5b624bca3aeec8f162fda3854
BLAKE2b-256 checksum
How to use checksums
1c87eaec50cb927524e9e1ebc3d0fa5a2d7598e9e54005e10a4174c6c0bf9026
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp315-cp315-musllinux_1_2_x86_64.whl

Download URL penaltyblog-1.12.3-cp315-cp315-musllinux_1_2_x86_64.whl
Size 5.8 MB
Tags CPython 3.15 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
0826216f57e7e6eeb43b732166b5378e73bb0c134088d3bb06238e26e46bcc18
BLAKE2b-256 checksum
How to use checksums
1dbc4a37809d7b1f8176b7fb3c02ada0a67120919df8f5c25d51869aa0b30024
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp315-cp315-musllinux_1_2_aarch64.whl

Download URL penaltyblog-1.12.3-cp315-cp315-musllinux_1_2_aarch64.whl
Size 5.7 MB
Tags CPython 3.15 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
e0177fc40435a84861c2de0b19ef9b5b98f5edb3a89c53ced6b36b9a4d41e0bc
BLAKE2b-256 checksum
How to use checksums
85c0aa582660ec2d95d20c764df963ec4b12502483e897c6f112ffe0cb68f900
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp315-cp315-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL penaltyblog-1.12.3-cp315-cp315-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 5.9 MB
Tags CPython 3.15 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
f897dcda41ea637f70aea8970f9730e599ed64b9178137c17cbb1d81dcb33157
BLAKE2b-256 checksum
How to use checksums
c7c007abca12aea95a1337e1b8d43898b395070f5079a0a497dc1d3a3ac3cc96
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp315-cp315-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL penaltyblog-1.12.3-cp315-cp315-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 5.8 MB
Tags CPython 3.15 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
e7e7fcc0ff4032651f1bc1e3ac25adf102f27baf080c1b4c2a1d2fac0c24874c
BLAKE2b-256 checksum
How to use checksums
5a43504ffe503d5de4ead25a883871ba1f6a70754ad497ab6dac7733c3df5811
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp315-cp315-macosx_11_0_arm64.whl

Download URL penaltyblog-1.12.3-cp315-cp315-macosx_11_0_arm64.whl
Size 2.3 MB
Tags CPython 3.15 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
5508e315bbfdd26ee083504e4c816256c703ea9bf524a1799b46a277dd364d65
BLAKE2b-256 checksum
How to use checksums
4bb2e2ff979a9da9f24900a31a236b02259604be13bed99465c6cbb5bb41a8b7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp315-cp315-macosx_10_15_x86_64.whl

Download URL penaltyblog-1.12.3-cp315-cp315-macosx_10_15_x86_64.whl
Size 2.3 MB
Tags CPython 3.15 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
3b1d200805b2d541ec3ffedf1ce8305f1a8cb56b8b4c7f33afdaadac95c9de0d
BLAKE2b-256 checksum
How to use checksums
50fb497cc3956a2f16e6eed4aeb8ea1571e6e1a472834d8b026f8a3cb4c24ad6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp314-cp314t-win_amd64.whl

Download URL penaltyblog-1.12.3-cp314-cp314t-win_amd64.whl
Size 2.3 MB
Tags CPython 3.14 CPython 3.14 free-threading Windows x86-64
SHA-256 checksum
How to use checksums
917d5974ad330ac3b3ede10550cfd239024a9abb73f5c62a9c09ab59da3bba74
BLAKE2b-256 checksum
How to use checksums
bc17fc1e14a2de46a57f8ce5f20a31ec2610b310460e67d3d2a462d68969cef0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp314-cp314t-win32.whl

Download URL penaltyblog-1.12.3-cp314-cp314t-win32.whl
Size 2.2 MB
Tags CPython 3.14 CPython 3.14 free-threading Windows x86-32
SHA-256 checksum
How to use checksums
9e7cf85c55ca9e0d11a9ba28dc8ba8bc013a8a0ecc29871a3b8a3830f11aeaa3
BLAKE2b-256 checksum
How to use checksums
ee810b1c24b5951ec0ec3b5f007d9ddfc132e9e3b690291a366430fb93bc7f04
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp314-cp314t-musllinux_1_2_x86_64.whl

Download URL penaltyblog-1.12.3-cp314-cp314t-musllinux_1_2_x86_64.whl
Size 5.8 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
ae6e0172a15ce913d5a6d86ea6eff4f7741abc266aab2bea08fb088f81734022
BLAKE2b-256 checksum
How to use checksums
ad2502f0911595b3a4c997cff2b1064dac68b26ceda297ab9389e551c3d13b2b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp314-cp314t-musllinux_1_2_aarch64.whl

Download URL penaltyblog-1.12.3-cp314-cp314t-musllinux_1_2_aarch64.whl
Size 5.7 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
80b31ce41302d47b679c70f71ec6c0c8f15060614e7d613e70deeafc335de92f
BLAKE2b-256 checksum
How to use checksums
c747014728dbf0acba0ba283ddb19c349b7ee32ec8bdc3d764daec27fb1c6129
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL penaltyblog-1.12.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 5.8 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
df9c9ed0875fcf65c913be2e02d232947f73464f18e3d5e67115677ef10a1f42
BLAKE2b-256 checksum
How to use checksums
c719f1790de7ba0ae4fe7f79c6d43aed6726590ee3a7d7dca8704632e0fa25de
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL penaltyblog-1.12.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 5.9 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
d4fdd834302f7f10675295a8bf1426d72512ac7b97741a27b79010e6a4eb4d21
BLAKE2b-256 checksum
How to use checksums
064cf21e718e41e0458df78c88ba4b94821bd6b40de0602eabce87035ccd9699
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp314-cp314t-macosx_11_0_arm64.whl

Download URL penaltyblog-1.12.3-cp314-cp314t-macosx_11_0_arm64.whl
Size 2.3 MB
Tags CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
fa5b300d93e634492da1cea26f7446a0dda9edbb5a679d8436d5238c0ff2679b
BLAKE2b-256 checksum
How to use checksums
84c4dc333cb02791f34999a738a4c1d731c4615b62089045f64133848013c809
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp314-cp314t-macosx_10_15_x86_64.whl

Download URL penaltyblog-1.12.3-cp314-cp314t-macosx_10_15_x86_64.whl
Size 2.3 MB
Tags CPython 3.14 CPython 3.14 free-threading macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
7d0ec55f54581c9afbc0244a6eb8ae69e755e8a43dd5351f393af8be2f64e356
BLAKE2b-256 checksum
How to use checksums
17b8e5b49b61291e706f88c2a0f2ae83949ec84fef5a6cecad4056c9191dba98
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp314-cp314-win_amd64.whl

Download URL penaltyblog-1.12.3-cp314-cp314-win_amd64.whl
Size 2.3 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
8de2f3c99fd3e68d2f3f9b5e3720dee8c4e54902ccbb662242669e5a696a491e
BLAKE2b-256 checksum
How to use checksums
cb9b726712a623275b07e31c48ba73fef559ef04d8c5db2830c9e1181a4602f4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp314-cp314-win32.whl

Download URL penaltyblog-1.12.3-cp314-cp314-win32.whl
Size 2.1 MB
Tags CPython 3.14 Windows x86-32
SHA-256 checksum
How to use checksums
fd2a9b02e938d35651b281b6e4ae6568129c6ed9d35d73467c72f67f58b4d7a5
BLAKE2b-256 checksum
How to use checksums
e12964185e3b0ca043a96ace8bddccb993f1c5e2e9d799dcdfb1ecf3af3fd347
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp314-cp314-musllinux_1_2_x86_64.whl

Download URL penaltyblog-1.12.3-cp314-cp314-musllinux_1_2_x86_64.whl
Size 5.8 MB
Tags CPython 3.14 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
7a6a3c688967de935d0074b0c31f79fb649eec4d673ffb4b2525b33d63c759cb
BLAKE2b-256 checksum
How to use checksums
d1494e0426b41e1e04db75b14cd6f5a25c120e1b00a435167a5a094d4121f3c6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp314-cp314-musllinux_1_2_aarch64.whl

Download URL penaltyblog-1.12.3-cp314-cp314-musllinux_1_2_aarch64.whl
Size 5.7 MB
Tags CPython 3.14 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
ee948bc87a11c8905715d5862601fac6527d9166b7955f631901aa91bb2ffab9
BLAKE2b-256 checksum
How to use checksums
1744fc0fca1cb96ea768bbae60b39e8b879d17a69631cf32886e83865dc4ac2c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL penaltyblog-1.12.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 5.9 MB
Tags CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
ed9cbc7fe1297edc8d9cbcb780d6e6d33ba7825de58e6933b13a26167e9e6a9a
BLAKE2b-256 checksum
How to use checksums
d9198a8a355be42e3b89ad8943b90db6de9a284aef1174c6892ddcef12f10325
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL penaltyblog-1.12.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 5.8 MB
Tags CPython 3.14 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
1829b74fdba9841572c7f56a331385be81637c0fb0b6b33a6bfbb88876ec229a
BLAKE2b-256 checksum
How to use checksums
2cfd78b30edbfe2c13fb9a9c759130c966a4c719c93dc6f18a91b90468d6f122
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp314-cp314-macosx_11_0_arm64.whl

Download URL penaltyblog-1.12.3-cp314-cp314-macosx_11_0_arm64.whl
Size 2.3 MB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
02984a914410190e0bc782cfc4b1a5a60a534f3f14f1bdf23f99039247d64099
BLAKE2b-256 checksum
How to use checksums
6b3937e7930c1cfbb3310932944f3ff423641e89884b2ca394df308ce2444d90
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp314-cp314-macosx_10_15_x86_64.whl

Download URL penaltyblog-1.12.3-cp314-cp314-macosx_10_15_x86_64.whl
Size 2.3 MB
Tags CPython 3.14 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
f653e6f4f1257c44606387a54bfd5e1c8f3a3d467aa3cf711b344d0a39ab293b
BLAKE2b-256 checksum
How to use checksums
649d9d49fb5d74dacde5b206c5d829c4547084841ffa7793ba4279e12848fc36
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp313-cp313-win_amd64.whl

Download URL penaltyblog-1.12.3-cp313-cp313-win_amd64.whl
Size 2.2 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
0203c2e5de308407366d08d76432b969f29be09d85f2803bb81a139ec79c2409
BLAKE2b-256 checksum
How to use checksums
db3febb079ecd34e0fd85148598988ef5b2f5be6305ef2b83aef32fcd7b78a99
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp313-cp313-win32.whl

Download URL penaltyblog-1.12.3-cp313-cp313-win32.whl
Size 2.1 MB
Tags CPython 3.13 Windows x86-32
SHA-256 checksum
How to use checksums
315b44187a7cfd0460ebbbf5601a455b59f7f7ade52f6d01d8b3628e078b6cf0
BLAKE2b-256 checksum
How to use checksums
1c205246d691e457b9a26b765638d7473b2735654676629c48f1d84a976753b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL penaltyblog-1.12.3-cp313-cp313-musllinux_1_2_x86_64.whl
Size 5.9 MB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
7bc1802e5bf21212c6b79e7086dd253f0edb200a2cf8cc06c2d3e4ab75412c54
BLAKE2b-256 checksum
How to use checksums
695d7f483eacbdb9638eb15a04778036ba00b1cd0ed9bdaabef752a35580f1bd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp313-cp313-musllinux_1_2_aarch64.whl

Download URL penaltyblog-1.12.3-cp313-cp313-musllinux_1_2_aarch64.whl
Size 5.7 MB
Tags CPython 3.13 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
f0f04f46c646a6487d188ff4af1e318ec0f033f5847a1284e6660797c632445c
BLAKE2b-256 checksum
How to use checksums
15f75e7e1eacb80e4c8e0e6451c9950e2e51963c8ae07adafd955ad77c86563e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL penaltyblog-1.12.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 5.9 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
071f09a76514e5d25f0025df8cb30efce583fb35db6dd3a7d197e8c7c923434f
BLAKE2b-256 checksum
How to use checksums
af486c86ab421a7315f49b94902968997b05ca1fa70714bef687b3495e899852
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL penaltyblog-1.12.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 5.8 MB
Tags CPython 3.13 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
a9a9cdb1b7e768634cc76cbb1d9930d876650c2e3cf47578e60feb7366eafed5
BLAKE2b-256 checksum
How to use checksums
87a3623899355d5d2970b51300599f113c50c3754d1b11b614704a863917e606
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp313-cp313-macosx_11_0_arm64.whl

Download URL penaltyblog-1.12.3-cp313-cp313-macosx_11_0_arm64.whl
Size 2.3 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
e43dea843c926f55483276c58b9e3c179016cd18ffb418ba63b39988a7450955
BLAKE2b-256 checksum
How to use checksums
6368a7d1d07067b63611a176d18d8aef9abbefc248fd3ef1ec76f9443f619cf4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp313-cp313-macosx_10_13_x86_64.whl

Download URL penaltyblog-1.12.3-cp313-cp313-macosx_10_13_x86_64.whl
Size 2.3 MB
Tags CPython 3.13 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
2e08c7db9516937818da032bfb2e98df6d7664117ce1fcf8b7d80fcd079be04f
BLAKE2b-256 checksum
How to use checksums
637ccee98de44179c80acb1bbe9154eaba15c996c03f26f54ab971bde7232c05
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp312-cp312-win_amd64.whl

Download URL penaltyblog-1.12.3-cp312-cp312-win_amd64.whl
Size 2.2 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
5d8bfd89b8465070a17745d6b0c2dfc65b579d531ead9af029caa4f24469536c
BLAKE2b-256 checksum
How to use checksums
1d49c937743b9ec273ec13751bc4bb4e2d3a366216b7c27c13998a613a1be391
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp312-cp312-win32.whl

Download URL penaltyblog-1.12.3-cp312-cp312-win32.whl
Size 2.1 MB
Tags CPython 3.12 Windows x86-32
SHA-256 checksum
How to use checksums
b1f547ef9d669f8644c54c12390acfbd9f5bdd1a9555d70a0f031e9ae4aa1db7
BLAKE2b-256 checksum
How to use checksums
24a365f4b51767f556bf65703333f33d793010703fe5e0364b847e75217fccab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL penaltyblog-1.12.3-cp312-cp312-musllinux_1_2_x86_64.whl
Size 5.9 MB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
7ff489164e1c8fd31ddb4c146023ab37ae0ea0c8b0f51b0dab16d8960430d6b8
BLAKE2b-256 checksum
How to use checksums
261e3cde2158e48813335833f82db7200983a03c158074ff236beb30c9f445cc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp312-cp312-musllinux_1_2_aarch64.whl

Download URL penaltyblog-1.12.3-cp312-cp312-musllinux_1_2_aarch64.whl
Size 5.8 MB
Tags CPython 3.12 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
6ec400c79b466d9f239204e5c908e6a8f05cea54c7281721a73efff68a96e983
BLAKE2b-256 checksum
How to use checksums
01fc733c700bca85132ddc9613c145baa57647474725464ca532ed80a2c220da
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL penaltyblog-1.12.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 5.9 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
f4d63a4eefb51c7f6a96860689c73a85e58193d4280fa207afb43bf5f3e498fe
BLAKE2b-256 checksum
How to use checksums
77b6c76c37d146c2810b1d3aa5c426b9ccb80cf79c6c3045b221297317543d1a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL penaltyblog-1.12.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 5.8 MB
Tags CPython 3.12 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
bcd287f15dc246fd4e797606a610841ff62686658b1c98f4db910b6ff66e1167
BLAKE2b-256 checksum
How to use checksums
8552cddd2c505f739a5c4b58cce3f05f0fc1b81f4a86c709b50dcbe50c10bc47
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp312-cp312-macosx_11_0_arm64.whl

Download URL penaltyblog-1.12.3-cp312-cp312-macosx_11_0_arm64.whl
Size 2.3 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
2559c64bf1be9237e606c231db6cce07eb62b0a420b2741d324852ddffb2b862
BLAKE2b-256 checksum
How to use checksums
3bc18d0a6ce112f310e6ac370432b9502050efc7d5c7541a9aa15137851686be
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp312-cp312-macosx_10_13_x86_64.whl

Download URL penaltyblog-1.12.3-cp312-cp312-macosx_10_13_x86_64.whl
Size 2.3 MB
Tags CPython 3.12 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
aeffdff0f3278c2cdd8a95dc1da82280c8099c19da4c307361d25349346a7ddc
BLAKE2b-256 checksum
How to use checksums
52c09a63db92faefb2fc55895dc701d9d2149a5eedaf85506fea01cca590a271
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp311-cp311-win_amd64.whl

Download URL penaltyblog-1.12.3-cp311-cp311-win_amd64.whl
Size 2.2 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
cb50de5f2f172a83d73d561b4cc435185647196b479798f1a9173b69d64d305f
BLAKE2b-256 checksum
How to use checksums
2540caced6395fbcd95722844cc1c1412bc80df6260fa5e66198c92eb176bfcb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp311-cp311-win32.whl

Download URL penaltyblog-1.12.3-cp311-cp311-win32.whl
Size 2.1 MB
Tags CPython 3.11 Windows x86-32
SHA-256 checksum
How to use checksums
fc360781f7577fb5a2176a40e17ba1415b7ecdb01c1afc8b647406b566a5f93e
BLAKE2b-256 checksum
How to use checksums
8c0eb5f583244fa124777c7cdeccf37b5b7b11bd4cae3cd1456836b561379dc9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL penaltyblog-1.12.3-cp311-cp311-musllinux_1_2_x86_64.whl
Size 5.9 MB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
e33ef41764b46517d06fabad7576edcde99bae832e75efc38a523832fbf3fd1d
BLAKE2b-256 checksum
How to use checksums
5b9d94cf9c687446a789a39291bce4c1f67213e1afbc001a0fa004ff015544c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp311-cp311-musllinux_1_2_aarch64.whl

Download URL penaltyblog-1.12.3-cp311-cp311-musllinux_1_2_aarch64.whl
Size 5.8 MB
Tags CPython 3.11 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
aa3315b7e6e3c6742c668f9bfe1c2b0eea04b87f9ecb257e18347f96f662007b
BLAKE2b-256 checksum
How to use checksums
e477f4ae67471fa78dab3dfba1bcf4c21c62872fec6872dcaf20d7dec0b08838
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL penaltyblog-1.12.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 5.9 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
fb58a9efe2c1bf62c8b47cd0b9d569254d61957f8cb74619c26bb4d4dca2d0dc
BLAKE2b-256 checksum
How to use checksums
51934456413c33d52524bdf67645afea0172a6494e9ce26e73dbde0dda67d9d8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL penaltyblog-1.12.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 5.9 MB
Tags CPython 3.11 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
18c8df9be8abd4c730b1426eb060623623e753bcd66da94e1fbc321a616feaa4
BLAKE2b-256 checksum
How to use checksums
e057364057ba36bf2295c70ead3b8b191d809abd2aa092523f2d04226a605b71
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp311-cp311-macosx_11_0_arm64.whl

Download URL penaltyblog-1.12.3-cp311-cp311-macosx_11_0_arm64.whl
Size 2.3 MB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
b6682c55c0b6e4cc7c08e90d9fd4123ab80c5e03dd1d1e2d1ac8b9f34d1b0490
BLAKE2b-256 checksum
How to use checksums
cd9023925aaa18649e2017c15e1f64a640355a3a6971014dd6cbb6307183097a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp311-cp311-macosx_10_9_x86_64.whl

Download URL penaltyblog-1.12.3-cp311-cp311-macosx_10_9_x86_64.whl
Size 2.3 MB
Tags CPython 3.11 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
c490db582bed9f3e8e8903b538342626ac57157fd245d6078bc7fc093f5d78e4
BLAKE2b-256 checksum
How to use checksums
7253231147f78b2c15d6bd17d80e9912072ac31dc268b9e54f53c93f632ac16d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp310-cp310-win_amd64.whl

Download URL penaltyblog-1.12.3-cp310-cp310-win_amd64.whl
Size 2.2 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
033c0e39955a6f23d64dade1531950088951cb19293315a476b1900f50a4c24e
BLAKE2b-256 checksum
How to use checksums
f55e966d747cb482240e8353ffccf166c4f66a119d610230d394850927a2ae87
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp310-cp310-win32.whl

Download URL penaltyblog-1.12.3-cp310-cp310-win32.whl
Size 2.1 MB
Tags CPython 3.10 Windows x86-32
SHA-256 checksum
How to use checksums
0857ae537638bfba7ac95bca135b4d246df1c91e4f958bb988bee436b265cc6c
BLAKE2b-256 checksum
How to use checksums
47ed50ec84b703767e914df8ae1786efe49c4dc853ce7757e5227c2b9fc5f581
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL penaltyblog-1.12.3-cp310-cp310-musllinux_1_2_x86_64.whl
Size 5.8 MB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
e2198e2514f46aa79d6683b2be827ec9fa5bc2065301fc4b2f1082db27e6584d
BLAKE2b-256 checksum
How to use checksums
177f70cf63ff2314b8f3ba8a2c4b7ee6b6494639bfb803d5ff7200a290aeb9cd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp310-cp310-musllinux_1_2_aarch64.whl

Download URL penaltyblog-1.12.3-cp310-cp310-musllinux_1_2_aarch64.whl
Size 5.6 MB
Tags CPython 3.10 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
7c8b2a53575053b59f69ab81390837d6bae639df7f986aa2cc43a3b190f3760f
BLAKE2b-256 checksum
How to use checksums
d7d482d2b2bd61349dda8bcb7f65e1f527895caa85ee206df6c0217adb92190d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL penaltyblog-1.12.3-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 5.7 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
9743e0a05c03cd14283fa8876d8dd625102e951f5eb89004725d41c0e582a82c
BLAKE2b-256 checksum
How to use checksums
eb0af6e24721e840900e703c2af9351dd8271b104273d895597f3a7843ff9239
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL penaltyblog-1.12.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 5.7 MB
Tags CPython 3.10 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
4759371def722bb833f6c48db3d7b4f61d0d1e2af2742f4687cb466bd0aafed5
BLAKE2b-256 checksum
How to use checksums
090310b968e6a25dea94c7af1d8f7ea1d0002d94f2e63f6a5d6a17fc86b6eeae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp310-cp310-macosx_11_0_arm64.whl

Download URL penaltyblog-1.12.3-cp310-cp310-macosx_11_0_arm64.whl
Size 2.3 MB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
096b387ef7fe39508c7990700bf6e32bcecc08c1a7e439cb62231de97f98bccb
BLAKE2b-256 checksum
How to use checksums
0ef8d893a210600049f55aadf9469a20a7e94061d7fd8c5aae6a94a105c0eb5d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / penaltyblog-1.12.3-cp310-cp310-macosx_10_9_x86_64.whl

Download URL penaltyblog-1.12.3-cp310-cp310-macosx_10_9_x86_64.whl
Size 2.3 MB
Tags CPython 3.10 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
45f3ac0178074173149f1466307872165b73362ffb2a98987d5208fe5593e3f3
BLAKE2b-256 checksum
How to use checksums
11e00998dffe408b7f12f2e0cbe0d6781d045b1e9bb05283011df7bc1703334b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.12.3 This release

65 release files

1.9.0

49 release files

1.7.1

49 release files

1.6.2

49 release files

1.6.1

49 release files

1.6.0

49 release files

1.5.1

49 release files

1.5.0

49 release files

1.4.1

33 release files

1.4.0

33 release files

1.3.0

41 release files

1.2.0

41 release files

1.1.0

41 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page