Conditionally select which method implementation survives class creation — decided at runtime, at startup, or at class build time.
Documentation: https://OWNER.github.io/conditional-method/
Source Code: https://github.com/OWNER/conditional-method
A decorator @cfg (aliases: @cm, @if_) that selects a
method implementation among those that are identically named on a class — during
class build time. Only the selected method remains in the class attributes, i.e.
the class is well-formed. The same decorators also work on module-level
functions and on classes themselves.
- Conditional method selection — define several implementations of the same name; the one whose condition is true survives.
- Decided when you need it — evaluate conditions at import/startup time (boolean) or lazily per call (callable).
- Clean class design — keep conditional logic out of the method body; the resulting class exposes only the chosen implementation.
- Conditional decorators —
@cfg_attrapplies decorators only when a condition is true. - Type-safe — ships
py.typedand a stable public API. - Zero runtime dependencies.
- Fast — the entire implementation is a C extension (
conditional_method._c) built against the Python Limited API (abi3): a singlecp39-abi3wheel covers CPython 3.9–3.14. - Debuggable — optional debug logging for troubleshooting.
Requirements
Python 3.9+ (CPython 3.9, 3.10, 3.11, 3.12, 3.13, 3.14).
Installation
$ pip install conditional-method
---> 100%
Successfully installed conditional-method
Example
Pick one implementation per environment
import os
from conditional_method import cfg
ENVIRONMENT = os.environ.get("ENV", "development")
class Worker:
@cfg(condition=ENVIRONMENT == "production")
def work(self, *args, **kwargs):
return "production"
@cfg(condition=ENVIRONMENT == "development")
def work(self, *args, **kwargs):
return "development"
@cfg(condition=ENVIRONMENT == "staging")
def work(self, *args, **kwargs):
return "staging"
worker = Worker()
print(worker.work())
# development
print(Worker.__dict__)
# Only ONE `work` survives — the class is well-formed:
# {'__module__': '__main__', 'work': <function Worker.work at 0x...>, ...}
Callable conditions — decided lazily, per call
import os
from conditional_method import cfg
class DatabaseConnector:
@cfg(condition=lambda f: os.environ.get("ENV") == "production")
def connect(self, config):
print("Connecting to the production database...")
@cfg(condition=lambda f: os.environ.get("ENV") == "development")
def connect(self, config):
print("Connecting to the development database...")
When a condition is false, the corresponding function/class raises TypeError
if called or instantiated. If no condition is true, the last false one is kept
as the raiser. If several conditions are true, the last one that evaluated
true wins.
Apply decorators conditionally with @cfg_attr
import os
from conditional_method import cfg_attr
os.environ["FEATURE_FLAG"] = "enabled"
@cfg_attr(
condition=os.environ.get("FEATURE_FLAG") == "enabled",
decorators=[log_calls, cache_result],
)
def experimental_feature(value): ...
Decorators are applied in order — but only when condition is true.
More examples live in the examples/ directory and in the
documentation.
Debugging
Enable debug logging by setting the environment variable
__conditional_method_debug__ to any value other than "false":
# Linux / macOS
export __conditional_method_debug__=true
# Windows
set __conditional_method_debug__=true
License
This project is licensed under the terms of the MIT license.
Links
- Documentation: https://OWNER.github.io/conditional-method/
- Changelog: CHANGELOG.md
- Security: SECURITY.md
- Source: https://github.com/OWNER/conditional-method
- PyPI: https://pypi.org/project/conditional-method
Release files for conditional-method 0.2.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| conditional_method-0.2.6.tar.gz | 20.0 kB | Details |
Built distributions (wheels)
Total release size: 699.8 kB
Release files / conditional_method-0.2.6.tar.gz
| Download URL | conditional_method-0.2.6.tar.gz |
|---|---|
| Size | 20.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a1ff0f35a8599246b506dc15e81060bfd2886f8218ca231a4d5d3d2586de3b82
|
|
BLAKE2b-256 checksum How to use checksums |
d5cd321b4c6965141270d4f7d7a8614ff38b47881441a0276ecbc42c562ee58a
|
| 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 Aug 17, 2026.
Transparency logRelease files / conditional_method-0.2.6-cp39-abi3-win_arm64.whl
| Download URL | conditional_method-0.2.6-cp39-abi3-win_arm64.whl |
|---|---|
| Size | 23.7 kB |
| Tags | CPython 3.9 Windows ARM64 abi3 |
|
SHA-256 checksum How to use checksums |
576b79dea6d8e1cff135aab0b5ffb2dd32d0ec24d9ce265b76020adaf491991a
|
|
BLAKE2b-256 checksum How to use checksums |
765c0ddd2d9f8a494dbb63967495ec2d2c87f5ab57cb1a62294d5f3409f5a7a8
|
| 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 Aug 17, 2026.
Transparency logRelease files / conditional_method-0.2.6-cp39-abi3-win_amd64.whl
| Download URL | conditional_method-0.2.6-cp39-abi3-win_amd64.whl |
|---|---|
| Size | 22.9 kB |
| Tags | CPython 3.9 Windows x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
1cef9ae9af9dac817393345a8c8d76bd040d7951e88a59275717f1202d4844e3
|
|
BLAKE2b-256 checksum How to use checksums |
8002cab4b331993fb977eae6e406c7d88dd91e2f36e6d2ddb4c3d0bf4cb612ff
|
| 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 Aug 17, 2026.
Transparency logRelease files / conditional_method-0.2.6-cp39-abi3-win32.whl
| Download URL | conditional_method-0.2.6-cp39-abi3-win32.whl |
|---|---|
| Size | 22.3 kB |
| Tags | CPython 3.9 Windows x86-32 abi3 |
|
SHA-256 checksum How to use checksums |
e688e3705c647f0de1ac4ad1ae97db6dd1ba17e79ef5fb2e1bdf5ca03b718675
|
|
BLAKE2b-256 checksum How to use checksums |
0ec5f4bd6f0bfadfd8c53c72b8ec7529ff3997d8bb6b09c2541a48a0abce9fde
|
| 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 Aug 17, 2026.
Transparency logRelease files / conditional_method-0.2.6-cp39-abi3-musllinux_1_2_x86_64.whl
| Download URL | conditional_method-0.2.6-cp39-abi3-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 46.0 kB |
| Tags | CPython 3.9 Linux musl 1.2+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
1d6e652dc89574ddd36d4cf6584a96ed6eb21c1dfa8215dbabd729d4948b806a
|
|
BLAKE2b-256 checksum How to use checksums |
99e28f1bd2c079971cc145ebb48dc0a5800f1b0ad66b6bcd68a8fb03f33b9ac5
|
| 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 Aug 17, 2026.
Transparency logRelease files / conditional_method-0.2.6-cp39-abi3-musllinux_1_2_s390x.whl
| Download URL | conditional_method-0.2.6-cp39-abi3-musllinux_1_2_s390x.whl |
|---|---|
| Size | 46.2 kB |
| Tags | CPython 3.9 Linux musl 1.2+ IBM System/390x abi3 |
|
SHA-256 checksum How to use checksums |
a2d5ec54b22a8197906f12501d29ac7a76a0da37c483fe680b6f0ae43ac9c444
|
|
BLAKE2b-256 checksum How to use checksums |
5be945aca760113e9c75220722334cd816f6427762632d10c2df6db6d48c6f0c
|
| 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 Aug 17, 2026.
Transparency logRelease files / conditional_method-0.2.6-cp39-abi3-musllinux_1_2_ppc64le.whl
| Download URL | conditional_method-0.2.6-cp39-abi3-musllinux_1_2_ppc64le.whl |
|---|---|
| Size | 48.9 kB |
| Tags | CPython 3.9 Linux musl 1.2+ PowerPC 64-le abi3 |
|
SHA-256 checksum How to use checksums |
bd3c7f69c27d9214b42442a30e05ceb290c56989203ec157da5fb12a93940d3f
|
|
BLAKE2b-256 checksum How to use checksums |
5a628bff04273e81076f2b6a5e2b0ea5449f4ab51f9435cc4bf25c41fd383066
|
| 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 Aug 17, 2026.
Transparency logRelease files / conditional_method-0.2.6-cp39-abi3-musllinux_1_2_i686.whl
| Download URL | conditional_method-0.2.6-cp39-abi3-musllinux_1_2_i686.whl |
|---|---|
| Size | 45.1 kB |
| Tags | CPython 3.9 Linux musl 1.2+ x86-32 abi3 |
|
SHA-256 checksum How to use checksums |
c543e0d9020a067d282423215384db0b755268bb57b85cfd7e54f200a4645645
|
|
BLAKE2b-256 checksum How to use checksums |
6ebd1d50483296bad62d569ea4ce7dfad3af330262fb5c19638b95bf87fff991
|
| 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 Aug 17, 2026.
Transparency logRelease files / conditional_method-0.2.6-cp39-abi3-musllinux_1_2_armv7l.whl
| Download URL | conditional_method-0.2.6-cp39-abi3-musllinux_1_2_armv7l.whl |
|---|---|
| Size | 44.7 kB |
| Tags | CPython 3.9 Linux musl 1.2+ ARMv7l abi3 |
|
SHA-256 checksum How to use checksums |
cc5cfa3dd0e59c0c7e8ff2f3d578dfa0f62d3fbc5ca6563913eeb6716c95de03
|
|
BLAKE2b-256 checksum How to use checksums |
d57eb9932c23568f7e5065194be6e7fe45eef6070968df9832fac04e2308eb98
|
| 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 Aug 17, 2026.
Transparency logRelease files / conditional_method-0.2.6-cp39-abi3-musllinux_1_2_aarch64.whl
| Download URL | conditional_method-0.2.6-cp39-abi3-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 46.3 kB |
| Tags | CPython 3.9 Linux musl 1.2+ ARM64 abi3 |
|
SHA-256 checksum How to use checksums |
fae33d2ab070465fca1069f802bbdde28d5338be2fbc5f91d3c915843e613bc2
|
|
BLAKE2b-256 checksum How to use checksums |
b060cd2f8decefa47fd328392b2cd95e3d6babd5ce0605f7c9e0ed3820490714
|
| 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 Aug 17, 2026.
Transparency logRelease files / conditional_method-0.2.6-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
| Download URL | conditional_method-0.2.6-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl |
|---|---|
| Size | 48.3 kB |
| Tags | CPython 3.9 Linux glibc 2.17+ IBM System/390x abi3 |
|
SHA-256 checksum How to use checksums |
d8469a30f4ccb38e41d4325509dfbfdb586247acb4fa902e4647db8ca6c490aa
|
|
BLAKE2b-256 checksum How to use checksums |
ba8750b730403cda71d749fccdfb4672c29034d559e173833c4dde4585eaea4b
|
| 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 Aug 17, 2026.
Transparency logRelease files / conditional_method-0.2.6-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
| Download URL | conditional_method-0.2.6-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl |
|---|---|
| Size | 51.1 kB |
| Tags | CPython 3.9 Linux glibc 2.17+ PowerPC 64-le abi3 |
|
SHA-256 checksum How to use checksums |
c9dac6752d5c95af42a2fc1c208bae4173bc2f7422babd423c162eb7814e2aa1
|
|
BLAKE2b-256 checksum How to use checksums |
eab6679ebb96ae1affdcf6cabfac3d824bd3111437e265258041205416acfab9
|
| 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 Aug 17, 2026.
Transparency logRelease files / conditional_method-0.2.6-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.manylinux_2_31_armv7l.whl
| Download URL | conditional_method-0.2.6-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.manylinux_2_31_armv7l.whl |
|---|---|
| Size | 49.9 kB |
| Tags | CPython 3.9 Linux glibc 2.17+ ARMv7l Linux glibc 2.31+ ARMv7l abi3 |
|
SHA-256 checksum How to use checksums |
5910a6be27f0282c616662d40d3da99ab676222f6055cbfb7dfb64133c464de9
|
|
BLAKE2b-256 checksum How to use checksums |
a5d107aa3ce186870811d0f057ff3fec661ca0f6964df9bd7a822210c2e44ac4
|
| 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 Aug 17, 2026.
Transparency logRelease files / conditional_method-0.2.6-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | conditional_method-0.2.6-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 48.0 kB |
| Tags | CPython 3.9 Linux glibc 2.17+ ARM64 abi3 |
|
SHA-256 checksum How to use checksums |
37a730e29d7d24fb41082927d92fab2517ae5426fabba535154a1ab1bc266c7e
|
|
BLAKE2b-256 checksum How to use checksums |
53b763e486ffea6f88cc2529d92be336ff65403619b6c4a947189fffc531fe2a
|
| 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 Aug 17, 2026.
Transparency logRelease files / conditional_method-0.2.6-cp39-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | conditional_method-0.2.6-cp39-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 47.5 kB |
| Tags | CPython 3.9 Linux glibc 2.17+ x86-64 Linux glibc 2.5+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
eb5ecc4740ac120799dcd34513a8d1cdfabf4edfa043835fc25d541148a1447b
|
|
BLAKE2b-256 checksum How to use checksums |
f40f881c6080439b2f0ba37adbb956d505d4d846ff92001c5479058fd121f47b
|
| 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 Aug 17, 2026.
Transparency logRelease files / conditional_method-0.2.6-cp39-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
| Download URL | conditional_method-0.2.6-cp39-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl |
|---|---|
| Size | 45.6 kB |
| Tags | CPython 3.9 Linux glibc 2.17+ x86-32 Linux glibc 2.5+ x86-32 abi3 |
|
SHA-256 checksum How to use checksums |
18c25e881d99f93a438ae50f9ecc56137041076de99857df2b505935367b8602
|
|
BLAKE2b-256 checksum How to use checksums |
cd6ee449debd83aed2068c7c4d3c3e1e3a3a479e010a9cdb1e8cb17e2e0708c4
|
| 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 Aug 17, 2026.
Transparency logRelease files / conditional_method-0.2.6-cp39-abi3-macosx_11_0_arm64.whl
| Download URL | conditional_method-0.2.6-cp39-abi3-macosx_11_0_arm64.whl |
|---|---|
| Size | 21.9 kB |
| Tags | CPython 3.9 abi3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
1a05eefbb0d4800f920030dfc6fd46be835e814070cf06c3d5ae6835ce0c417b
|
|
BLAKE2b-256 checksum How to use checksums |
edcfc184b336417c707d45755ca8742b8f8ec8e0a1b0f56526aecf2c8d21eb80
|
| 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 Aug 17, 2026.
Transparency logRelease files / conditional_method-0.2.6-cp39-abi3-macosx_10_9_x86_64.whl
| Download URL | conditional_method-0.2.6-cp39-abi3-macosx_10_9_x86_64.whl |
|---|---|
| Size | 21.6 kB |
| Tags | CPython 3.9 abi3 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
ca1a0cc25fc9a310054fb895931ff6e678e58fe57bdafab66084ff189b457a9c
|
|
BLAKE2b-256 checksum How to use checksums |
deff442fe510261e3190867c800d1834cee2bd5bc3213519061b26aecf086399
|
| 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 Aug 17, 2026.
Transparency log