Skip to main content

Football (soccer) Data & Modelling Made Easy

Project description

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.
  • 📊 Model Matches Efficiently: High-performance implementations of Poisson, Bivariate Poisson, Dixon-Coles, and other advanced statistical models, optimized with Cython for rapid analysis.
  • Scrape Data: Collect match statistics from sources like FBRef, 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.

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

Installation

pip install penaltyblog

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, efficient implementations (via Cython), and real-world workflows, from scraping public data to modelling outcomes and optimising fantasy teams.

Built by Martin Eastwood, who has worked with football clubs, governing bodies, and player agencies worldwide, penaltyblog is the foundation for football analytics.

Whether you're a club analyst, independent researcher, or just data-curious, penaltyblog gives you the tools to go from data to insight — fast, flexibly, and with confidence.

Support & Collaboration

If you're working at a football club, agency, or organisation and want help applying these tools to your own data or workflows, I'm open to:

  • 📂 Integration support
  • 🔧 Custom model development
  • 🧠 Technical collaboration on football analytics projects

➡️ Get in touch here

Project details


Download files

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

Source Distribution

penaltyblog-1.4.1.tar.gz (664.0 kB view details)

Uploaded Source

Built Distributions

penaltyblog-1.4.1-cp313-cp313-win_amd64.whl (988.5 kB view details)

Uploaded CPython 3.13Windows x86-64

penaltyblog-1.4.1-cp313-cp313-win32.whl (940.6 kB view details)

Uploaded CPython 3.13Windows x86

penaltyblog-1.4.1-cp313-cp313-musllinux_1_2_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

penaltyblog-1.4.1-cp313-cp313-musllinux_1_2_aarch64.whl (2.6 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

penaltyblog-1.4.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.7 MB view details)

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

penaltyblog-1.4.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (2.7 MB view details)

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

penaltyblog-1.4.1-cp313-cp313-macosx_11_0_arm64.whl (984.2 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

penaltyblog-1.4.1-cp313-cp313-macosx_10_13_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

penaltyblog-1.4.1-cp312-cp312-win_amd64.whl (989.6 kB view details)

Uploaded CPython 3.12Windows x86-64

penaltyblog-1.4.1-cp312-cp312-win32.whl (941.7 kB view details)

Uploaded CPython 3.12Windows x86

penaltyblog-1.4.1-cp312-cp312-musllinux_1_2_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

penaltyblog-1.4.1-cp312-cp312-musllinux_1_2_aarch64.whl (2.6 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

penaltyblog-1.4.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.7 MB view details)

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

penaltyblog-1.4.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (2.7 MB view details)

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

penaltyblog-1.4.1-cp312-cp312-macosx_11_0_arm64.whl (987.6 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

penaltyblog-1.4.1-cp312-cp312-macosx_10_13_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

penaltyblog-1.4.1-cp311-cp311-win_amd64.whl (988.0 kB view details)

Uploaded CPython 3.11Windows x86-64

penaltyblog-1.4.1-cp311-cp311-win32.whl (940.5 kB view details)

Uploaded CPython 3.11Windows x86

penaltyblog-1.4.1-cp311-cp311-musllinux_1_2_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

penaltyblog-1.4.1-cp311-cp311-musllinux_1_2_aarch64.whl (2.6 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

penaltyblog-1.4.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.7 MB view details)

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

penaltyblog-1.4.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (2.7 MB view details)

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

penaltyblog-1.4.1-cp311-cp311-macosx_11_0_arm64.whl (988.4 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

penaltyblog-1.4.1-cp311-cp311-macosx_10_9_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

penaltyblog-1.4.1-cp310-cp310-win_amd64.whl (988.0 kB view details)

Uploaded CPython 3.10Windows x86-64

penaltyblog-1.4.1-cp310-cp310-win32.whl (941.8 kB view details)

Uploaded CPython 3.10Windows x86

penaltyblog-1.4.1-cp310-cp310-musllinux_1_2_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

penaltyblog-1.4.1-cp310-cp310-musllinux_1_2_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

penaltyblog-1.4.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.6 MB view details)

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

penaltyblog-1.4.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (2.6 MB view details)

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

penaltyblog-1.4.1-cp310-cp310-macosx_11_0_arm64.whl (985.3 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

penaltyblog-1.4.1-cp310-cp310-macosx_10_9_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

File details

Details for the file penaltyblog-1.4.1.tar.gz.

File metadata

  • Download URL: penaltyblog-1.4.1.tar.gz
  • Upload date:
  • Size: 664.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for penaltyblog-1.4.1.tar.gz
Algorithm Hash digest
SHA256 6abe470a8d871bf3fec7eb838c9cbdd5ca35065509b55a9c42237a6000fcad55
MD5 141eb8bfff6c8014e9761c0201b8a0f4
BLAKE2b-256 fcb2e744f1080df0ec837725b53bce9aeabbebebd671d30b658a489ee77f9333

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1.tar.gz:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: penaltyblog-1.4.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 988.5 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for penaltyblog-1.4.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 13fb6835873df52d831b3c966e1ac49b56b2801212aa3c534a0bdd52291dc7d2
MD5 4ef1a2ee000f659e7b4a7e8b55a393d7
BLAKE2b-256 c39269e961e34a9532a272932deb4941a2a68bbae1bc380cd3258ffdb8a35e3f

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp313-cp313-win_amd64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp313-cp313-win32.whl.

File metadata

  • Download URL: penaltyblog-1.4.1-cp313-cp313-win32.whl
  • Upload date:
  • Size: 940.6 kB
  • Tags: CPython 3.13, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for penaltyblog-1.4.1-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 31c6623719aa3708961eed0184b0a637af1844f36bf9b6e73c4af0cea1898c87
MD5 5086b55f6147a73138d36eaf47f9bcda
BLAKE2b-256 3388b20d6ea7653f01599464e037c62cd2c5ade92beea8fc58cffa7f1cdc4124

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp313-cp313-win32.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 fb6914ee9f8dd23fab2a6b11c351d536a8bb20047a9ce4ca63a3000a0596b006
MD5 88eef2c1be05161e4d40845955da42f4
BLAKE2b-256 ee82807db83529eb48e345688caadf9d092517cbf9225cb4fbe6411ea45b233f

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 239560a8782b6152af79ce12729ecbfeedd656e7630812a537fc42637d0b99c2
MD5 a2740e50b66f4b9d818c5ae05e79648f
BLAKE2b-256 ea7e28c7b2ca9e36bd8a4a8ab58a0aec53e8b316f08239ab3fbe4531f8c00563

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp313-cp313-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 78c83f879472dc1dd59c69cdf47f7ab1d8353c744a88766fd69a70f532ef3ef6
MD5 901c1d345a1e19006d74e5607653e898
BLAKE2b-256 a1858656cf385efb36ae8b806cc261d04507bf425d745f709cb424ca4a7f268d

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a3e2c361f56854742b2b0e6466d7c38ee8318d5cfd3faa862ad36e5c0ca86032
MD5 9fda3addc68e1021954058cde7f52c27
BLAKE2b-256 ba3b4d4c53570b77b8a6f953bbde3d13ca95c702cd83eba0d28e895a4761f0bb

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f033b1d8824155f35364325fc3efa028505da668273e4d8ea9dc03947e7a9dd6
MD5 2f591b2d265c2db82e881aa1e8d158ae
BLAKE2b-256 a29871366ac9ac5332c5dab1c1e1dcdd84c40aebc1884850d8e817df4c4d815c

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 e8f37164881de9e88b22c06cf753cd75a1b49817c396009cd6f48c812f55c8b7
MD5 5b993014af731cb77162611290db6e57
BLAKE2b-256 a78064b0b5d8fc0116ddf3b0da0e5bebf8fd664b4966029cc0c9f87eb64ae694

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: penaltyblog-1.4.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 989.6 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for penaltyblog-1.4.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 85b12b7b972da2d1252660d5d3d70f1e18e595716808f5c5d9ad35d38328688f
MD5 ae37386236f5843553b66023ec9e5f7e
BLAKE2b-256 41811f92f9ec75420261e1b007036f4743b5e0b2c83fe06d5acb5de14fe280ef

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp312-cp312-win_amd64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp312-cp312-win32.whl.

File metadata

  • Download URL: penaltyblog-1.4.1-cp312-cp312-win32.whl
  • Upload date:
  • Size: 941.7 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for penaltyblog-1.4.1-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 779e0d6008bc867b799e55b44f7504e9d7ca928e4a2811bff1c50eacc967fbc9
MD5 ca058eb4f9ab1a8b9e56d0f7b483561c
BLAKE2b-256 d86ca39b68301fd93dfbe6ebcdb2906be708296317bbe01fde2675d2d8342950

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp312-cp312-win32.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 4ab60e741e60378ab6c6aa1e49799466f67fe4a7709e6794db44ee2d8f718e29
MD5 4b36e66d1968075232b471347f49c416
BLAKE2b-256 ea364ef2d1183e7616f2c7c921d499d72b81b4edd82e43f5c1016c3c12098df5

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 579c372cf9aeb45d3407e5bfbd5e1775e27f0677f9b41ee6de654b7eed7ffa82
MD5 610498f6002cb3941051281b5a03ea0d
BLAKE2b-256 c6dbc4039896afe2972a95806afcd00398b1d9a5f2d88208abeb9addb58c7b3f

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp312-cp312-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 25aca5d035b1fe16c601076f585ffb507f757caa865be490aeff420276615d2b
MD5 1af5e5d16bd97bc49c879e960e4bd27c
BLAKE2b-256 8874b47f290fe66a597a52689389b5d7801a972acf7fefce613c5c107b2a2876

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e4ec97165136f151b4d3cf1e65b920f2f4ed159412ec73ea2e8a6d0533b56375
MD5 0c81a4d0776acc99ba2cf49b40d1a15f
BLAKE2b-256 fe04cd519fb91b3b8fd9c7c0275e33e3b13505c30a8d53b5a0968b729b968985

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ef24f25464193d67b980e1b69822d69814a9dfdd3c0da1d9b65892295c19a0ca
MD5 5407ddfa91d763b94009aa21f4d56e7f
BLAKE2b-256 bf27b312bed077b259375ce4a8ae9266efcd70e77d4c0ab5bc08c538d717ef7c

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 3ada844939f875b643b9de9bd5c477037beb7a67727ca7525ba60e1b5a7e3e1e
MD5 305875547fadd0b1934a8667496e0879
BLAKE2b-256 f35f706ea3fada6054c98c79d16e46987d2017d3e17f949d7c4a62d66f1765fa

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: penaltyblog-1.4.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 988.0 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for penaltyblog-1.4.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9758a4ec9a0803790e090b1ca05b7922546c1ee741092393b0d8c94d1d26814b
MD5 55f4cb8d09ff5c0901645f02bbfde7c6
BLAKE2b-256 0c6a894ce8fdb759bed4d6ec4aa8118b779bd7784ba429baf3c1c30276e7ee7f

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp311-cp311-win_amd64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp311-cp311-win32.whl.

File metadata

  • Download URL: penaltyblog-1.4.1-cp311-cp311-win32.whl
  • Upload date:
  • Size: 940.5 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for penaltyblog-1.4.1-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 5ebd67dda5a9927a47058343dd6f08b064b133d139f60a03c0107392ffe3982d
MD5 d95ab1966381a9f5150910e9f360593d
BLAKE2b-256 eb394a0bffc286d641bb026301a942e98457a012aaf2ac7ae55ba2d27e0f58bc

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp311-cp311-win32.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 61ef7d4c95e9195e2fa62bc5cebe0e9da36229ca09be2708c14e9f520ccae3ca
MD5 19b742ee3b8bc899f7a68232c2fbac19
BLAKE2b-256 9ed93baf2d669b3027e5a361a6c15864951b53f6077716529e5c3eeb4e95fdb3

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 a78d57ed42ba44ef5a18426802f76b41ab7db3ea158e353c7b4b0203db286948
MD5 1a882684833eca9633e344e80d6fa129
BLAKE2b-256 fc4857a94dbd4beb0fc18e76b3899feb8dbbcc3b321a45474ee507cede5bc83b

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp311-cp311-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4fc9754a7cead5497dfdb947afac33d25f41e24467f7ef91bed0cf9397a30e72
MD5 83ca34c07db30500ab2888fe4e46c02d
BLAKE2b-256 2643921399c3a5feee24812250101a0d111e3965dcb1c2a3354e3336c79655b3

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 bc5bd73007fc6f3cd9ad405cd904134c2dca6de83824c333f6862a678c831b8c
MD5 5d50bea01f2fe4d3e21ba2e83ecd5b68
BLAKE2b-256 a1115e80d7fae95691252f2c29e2ce7a2f324fbe62bf101136a27778b2f04483

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 893b6c6a10d03c6aebad53890160e36667752dcf8ab2685a03b84f8b96e8faf3
MD5 524428136b3347098b49c12fd140e138
BLAKE2b-256 369ce2560710b0ca6b98061cd94e565bd20bd678113daf0d9d42c9669aa9ce10

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 8c30a547b9b2582a99fdc40a53eb3022cf27a3dc4414a6ed02797a24096f0633
MD5 1e44c0f230730ff1f49646a5c0bfb2de
BLAKE2b-256 c0d4bde51e205223f7ce41f8d7f1d6b433611fe7cd4b76a8e897ada4804144a1

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: penaltyblog-1.4.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 988.0 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for penaltyblog-1.4.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 06b309e2b3fa81e5ae812b6ddc57ed22c6cc6f7d6b2ce3606885af911e4215f0
MD5 f2acb7312e7b4428d92f2055454cc9f1
BLAKE2b-256 7b564566fdd5b9ffd5d9762955a71ab019d2c52bdb1c003721c798ec26c568f0

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp310-cp310-win_amd64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp310-cp310-win32.whl.

File metadata

  • Download URL: penaltyblog-1.4.1-cp310-cp310-win32.whl
  • Upload date:
  • Size: 941.8 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for penaltyblog-1.4.1-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 bcd3e7274711bad0f8cd10205b55b3b6d0ecbc287a85d85b9b8f791e4f7a824d
MD5 865c8462357a3b2121625dbd2b2e5bf9
BLAKE2b-256 436a1f63a830ffca52c7b139db5ced77951255e504d9de1a8fe9b6384bc69875

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp310-cp310-win32.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 69171670e1fb76ec613f6d08170d42fbacf7e14092fdbb4ac6580d49019b816e
MD5 9e80640821657fb90e1341d292ae12ba
BLAKE2b-256 a56c896abf380de88dca462f3e7a25ce1c5bc508835b85fc29aca91ece210c28

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp310-cp310-musllinux_1_2_x86_64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 f97aa192b6eeebff584292a5970cec321ef390981f42eab5304ee238ba816b1a
MD5 0d9cf0af5c634ae07cb61e8ad4d16bb3
BLAKE2b-256 95b0d85bc32999c1d7e567e9f352ac9d5270da6f7fb84398801db807fbbfcf3a

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp310-cp310-musllinux_1_2_aarch64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cf2c80fe67e659a3ca19e43866573fdb77e5f70a4fdb4e9ae4403b780300bac1
MD5 dbf59965de2e943a4ef996abfb639421
BLAKE2b-256 9d70514a7aa20a76f08a69a7c68664f756096e670f50a866499a30f65c9d91f8

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 7fe8f6e02696c435b50fd0767f359930aacd7abd68d4b145884135e4f5144c40
MD5 a0be56bd66decc27e714a0221e315413
BLAKE2b-256 1216fe44c644ed4b15cc96a0a928b047fec861f92598c083009f14e7e6bcd354

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c28e1f3fac71a94bf9408a97be079b21ddb4955a3280f28671f703692a4ac53e
MD5 708b9ec48b52339f09e6a5ed318c0903
BLAKE2b-256 6c6bf4aee7feec1c19bf82e865d78875ca09e766af378a3c2d06baeb3c3bf684

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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

File details

Details for the file penaltyblog-1.4.1-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for penaltyblog-1.4.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 3db23f889c1657616733f82a7e6c0baa347b0f72499ada06a878b8939839b29b
MD5 33a7326d053857c24713de8bf71b6a2d
BLAKE2b-256 62408a119ac0350d3e4e065c6c83bc49b6a7604b3aec810f1a01b00757ff0bbd

See more details on using hashes here.

Provenance

The following attestation bundles were made for penaltyblog-1.4.1-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: publish.yml on martineastwood/penaltyblog

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 Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page