Skip to main content

Implementation of the "Cancellation Token" pattern

Project description

Downloads Downloads Coverage Status Lines of code Hits-of-Code Test-Package Python versions PyPI version Checked with mypy Ruff DeepWiki

logo

Cancellation Token is a pattern that allows us to refuse to continue calculations that we no longer need. It is implemented out of the box in many programming languages, for example in C# and in Go. However, there was still no sane implementation in Python, until the cantok library.

Quick start

Install it:

pip install cantok

And use:

from random import randint
from cantok import ConditionToken, CounterToken, TimeoutToken

token = ConditionToken(lambda: randint(1, 100_000) == 1984) + CounterToken(400_000, direct=False) + TimeoutToken(1)
counter = 0

while token:
  counter += 1

print(counter)

Read more in the documentation.

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

cantok-0.0.33.tar.gz (10.4 kB view details)

Uploaded Source

Built Distribution

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

cantok-0.0.33-py3-none-any.whl (12.6 kB view details)

Uploaded Python 3

File details

Details for the file cantok-0.0.33.tar.gz.

File metadata

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

File hashes

Hashes for cantok-0.0.33.tar.gz
Algorithm Hash digest
SHA256 9ec33de49400938ab57533bf1152fbf3bd0c982cd95d19c65992bbc7d34a712b
MD5 4bf65417e5a4f5d2efd005ecefa5c5c9
BLAKE2b-256 5223bd4c28bceb271e9cc04e7ed37bba8e633446bb88bf96e9525cbde93f6a65

See more details on using hashes here.

Provenance

The following attestation bundles were made for cantok-0.0.33.tar.gz:

Publisher: release.yml on pomponchik/cantok

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

File details

Details for the file cantok-0.0.33-py3-none-any.whl.

File metadata

  • Download URL: cantok-0.0.33-py3-none-any.whl
  • Upload date:
  • Size: 12.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cantok-0.0.33-py3-none-any.whl
Algorithm Hash digest
SHA256 a7b5ae991c82497bd950d488c168ef5dc83427b16d9d6eea93956fc95f5ad182
MD5 7be41b7b45d2fe573aad3f1f9831b236
BLAKE2b-256 848c57fa3dad6ea6fd1c4613dbe20a133d2d2d63a7039fcee0ccef3201789135

See more details on using hashes here.

Provenance

The following attestation bundles were made for cantok-0.0.33-py3-none-any.whl:

Publisher: release.yml on pomponchik/cantok

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

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page