Skip to main content

Modern datetime library for Python

Project description

⏰ Whenever

Typed and DST-safe datetimes for Python, available in Rust or pure Python.

Do you cross your fingers every time you work with Python's datetime—hoping that you didn't mix naive and aware? or that you avoided its other pitfalls? There’s no way to be sure...

✨ Until now! ✨

Whenever helps you write correct and type checked datetime code, using well-established concepts from modern libraries in other languages. It's also way faster than other third-party libraries, and usually the standard library as well. Don't buy the Rust hype?—don't worry: a pure Python version is available as well.

Shows a bar chart with benchmark results.

Parse, normalize, compare to now, shift, and change timezone (1M times)

⚠️ Note: A 1.0 release is expected this year. Until then, the API may change as we gather feedback and improve the library. Leave a ⭐️ on GitHub if you'd like to see how this project develops!

Why not the standard library?

Over 20+ years, Python's datetime has grown out of step with what you'd expect from a modern datetime library. Two points stand out:

  1. It doesn't always account for Daylight Saving Time (DST). Here is a simple example:

    bedtime = datetime(2023, 3, 25, 22, tzinfo=ZoneInfo("Europe/Paris"))
    full_rest = bedtime + timedelta(hours=8)
    # It returns 6am, but should be 7am—because we skipped an hour due to DST!
    

    Note this isn't a bug, but a design decision that DST is only considered when calculations involve two timezones. If you think this is surprising, you are not alone.

  2. Typing can't distinguish between naive and aware datetimes. Your code probably only works with one or the other, but there's no way to enforce this in the type system!

    # Does this expect naive or aware? Can't tell!
    def schedule_meeting(at: datetime) -> None: ...
    

Why not other libraries?

There are two other popular third-party libraries, but they don't (fully) address these issues. Here's how they compare to whenever and the standard library:

Whenever datetime Arrow Pendulum
DST-safe ⚠️
Typed aware/naive
Fast

Arrow is probably the most historically popular 3rd party datetime library. It attempts to provide a more "friendly" API than the standard library, but doesn't address the core issues: it keeps the same footguns, and its decision to reduce the number of types to just one (arrow.Arrow) means that it's even harder for typecheckers to catch mistakes.

Pendulum arrived on the scene in 2016, promising better DST-handling, as well as improved performance. However, it only fixes some DST-related pitfalls, and its performance has significantly degraded over time. Additionally, it's in a long maintenance slump with only two releases in the last four years, while many serious and long-standing issues remain unaddressed.

Why use whenever?

  • 🌐 DST-safe arithmetic
  • 🛡️ Typesafe API prevents common bugs
  • ✅ Fixes issues arrow/pendulum don't
  • ⚖️ Based on proven and familiar concepts
  • ⚡️ Unmatched performance
  • 💎 Thoroughly tested and documented
  • 📆 Support for date arithmetic
  • ⏱️ Nanosecond precision
  • 🪃 Pydantic support (preview)
  • 🦀 Rust!—but with a pure-Python option
  • 🚀 Supports per-interpreter GIL

Quickstart

>>> from whenever import (
...    # Explicit types for different use cases
...    Instant,
...    ZonedDateTime,
...    PlainDateTime,
... )

# Identify moments in time, without timezone/calendar complexity
>>> now = Instant.now()
Instant(2024-07-04 10:36:56Z)

# Simple, explicit conversions
>>> now.to_tz("Europe/Paris")
ZonedDateTime(2024-07-04 12:36:56+02:00[Europe/Paris])

# A 'naive' datetime can't accidentally mix with other types.
# You need to explicitly convert it and handle ambiguity.
>>> party_invite = PlainDateTime(2023, 10, 28, hour=22)
>>> party_invite.add(hours=6)
Traceback (most recent call last):
  ImplicitlyIgnoringDST: Adjusting a local datetime implicitly ignores DST [...]
>>> party_starts = party_invite.assume_tz("Europe/Amsterdam")
ZonedDateTime(2023-10-28 22:00:00+02:00[Europe/Amsterdam])

# DST-safe arithmetic
>>> party_starts.add(hours=6)
ZonedDateTime(2023-10-29 03:00:00+01:00[Europe/Amsterdam])

# Comparison and equality
>>> now > party_starts
True

# Rounding and truncation
>>> now.round("minute", increment=15)
Instant(2024-07-04 10:30:00Z)

# Formatting & parsing common formats (ISO8601, RFC3339, RFC2822)
>>> now.format_rfc2822()
"Thu, 04 Jul 2024 10:36:56 GMT"

# If you must: you can convert to/from the standard lib
>>> now.py_datetime()
datetime.datetime(2024, 7, 4, 10, 36, 56, tzinfo=datetime.timezone.utc)

Read more in the feature overview or API reference.

Roadmap

  • 🧪 0.x: get to feature-parity, process feedback, and tweak the API:

    • ✅ Datetime classes
    • ✅ Deltas
    • ✅ Date and time of day (separate from datetime)
    • ✅ Implement Rust extension for performance
    • 🚧 Tweaks to the delta API
  • 🔒 1.0: API stability and backwards compatibility

    • 🚧 Customizable parsing and formatting
    • 🚧 Intervals
    • 🚧 Ranges and recurring times
    • 🚧 Parsing leap seconds

Limitations

  • Supports the proleptic Gregorian calendar between 1 and 9999 AD
  • Timezone offsets are limited to whole seconds (consistent with IANA TZ DB)
  • No support for leap seconds (consistent with industry standards and other modern libraries)

Versioning and compatibility policy

Whenever follows semantic versioning. Until the 1.0 version, the API may change with minor releases. Breaking changes will be meticulously explained in the changelog. Since the API is fully typed, your typechecker and/or IDE will help you adjust to any API changes.

License

Whenever is licensed under the MIT License. The binary wheels contain Rust dependencies which are licensed under similarly permissive licenses (MIT, Apache-2.0, and others). For more details, see the licenses included in the distribution.

Acknowledgements

Whenever stands on the shoulders of giants:

  • Its core datamodel takes big inspiration from Noda Time, which in turn is inspired by the influential Joda Time.

  • Whenever also takes a lot of inspiration from the Temporal proposal for JavaScript. After years of design work and gathering feedback, TC39 has come up with an extraodrinarily well-specified API fit for a dynamic language. Whenever takes a lot of cues from Temporal for complex APIs such as handling ambiguity and rounding.

  • Whenever gratefully makes use of datetime's robust and cross-platform handling of the system local timezone.

  • The pure-Python version of whenever also makes extensive use of Python's datetime and zoneinfo libraries internally.

  • Whenever also borrows a few nifty ideas from Jiff: A modern datetime library in Rust which takes inspiration from Temporal.

  • The benchmark comparison graph is adapted from the Ruff project.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

whenever-0.8.8.tar.gz (235.5 kB view details)

Uploaded Source

Built Distributions

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

whenever-0.8.8-py3-none-any.whl (53.5 kB view details)

Uploaded Python 3

whenever-0.8.8-cp313-cp313-win_amd64.whl (322.3 kB view details)

Uploaded CPython 3.13Windows x86-64

whenever-0.8.8-cp313-cp313-win32.whl (329.9 kB view details)

Uploaded CPython 3.13Windows x86

whenever-0.8.8-cp313-cp313-musllinux_1_2_x86_64.whl (584.2 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

whenever-0.8.8-cp313-cp313-musllinux_1_2_i686.whl (627.1 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ i686

whenever-0.8.8-cp313-cp313-musllinux_1_2_armv7l.whl (700.6 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARMv7l

whenever-0.8.8-cp313-cp313-musllinux_1_2_aarch64.whl (574.6 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

whenever-0.8.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (412.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

whenever-0.8.8-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl (451.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ s390x

whenever-0.8.8-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (432.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ppc64le

whenever-0.8.8-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (437.3 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARMv7l

whenever-0.8.8-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (396.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

whenever-0.8.8-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl (452.1 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.5+ i686

whenever-0.8.8-cp313-cp313-macosx_11_0_arm64.whl (375.1 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

whenever-0.8.8-cp313-cp313-macosx_10_12_x86_64.whl (391.2 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

whenever-0.8.8-cp312-cp312-win_amd64.whl (322.3 kB view details)

Uploaded CPython 3.12Windows x86-64

whenever-0.8.8-cp312-cp312-win32.whl (329.9 kB view details)

Uploaded CPython 3.12Windows x86

whenever-0.8.8-cp312-cp312-musllinux_1_2_x86_64.whl (584.2 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

whenever-0.8.8-cp312-cp312-musllinux_1_2_i686.whl (627.1 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ i686

whenever-0.8.8-cp312-cp312-musllinux_1_2_armv7l.whl (700.5 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARMv7l

whenever-0.8.8-cp312-cp312-musllinux_1_2_aarch64.whl (574.6 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

whenever-0.8.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (412.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

whenever-0.8.8-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl (451.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ s390x

whenever-0.8.8-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (432.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ppc64le

whenever-0.8.8-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (437.3 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARMv7l

whenever-0.8.8-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (396.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

whenever-0.8.8-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl (452.0 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.5+ i686

whenever-0.8.8-cp312-cp312-macosx_11_0_arm64.whl (375.1 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

whenever-0.8.8-cp312-cp312-macosx_10_12_x86_64.whl (391.2 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

whenever-0.8.8-cp311-cp311-win_amd64.whl (320.9 kB view details)

Uploaded CPython 3.11Windows x86-64

whenever-0.8.8-cp311-cp311-win32.whl (328.3 kB view details)

Uploaded CPython 3.11Windows x86

whenever-0.8.8-cp311-cp311-musllinux_1_2_x86_64.whl (583.3 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

whenever-0.8.8-cp311-cp311-musllinux_1_2_i686.whl (625.6 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ i686

whenever-0.8.8-cp311-cp311-musllinux_1_2_armv7l.whl (699.9 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARMv7l

whenever-0.8.8-cp311-cp311-musllinux_1_2_aarch64.whl (574.9 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

whenever-0.8.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (412.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

whenever-0.8.8-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl (450.8 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ s390x

whenever-0.8.8-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (430.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ppc64le

whenever-0.8.8-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (436.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARMv7l

whenever-0.8.8-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (397.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

whenever-0.8.8-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl (450.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.5+ i686

whenever-0.8.8-cp311-cp311-macosx_11_0_arm64.whl (375.0 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

whenever-0.8.8-cp311-cp311-macosx_10_12_x86_64.whl (390.1 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

whenever-0.8.8-cp310-cp310-win_amd64.whl (320.9 kB view details)

Uploaded CPython 3.10Windows x86-64

whenever-0.8.8-cp310-cp310-win32.whl (328.3 kB view details)

Uploaded CPython 3.10Windows x86

whenever-0.8.8-cp310-cp310-musllinux_1_2_x86_64.whl (583.3 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

whenever-0.8.8-cp310-cp310-musllinux_1_2_i686.whl (625.6 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ i686

whenever-0.8.8-cp310-cp310-musllinux_1_2_armv7l.whl (699.9 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARMv7l

whenever-0.8.8-cp310-cp310-musllinux_1_2_aarch64.whl (574.9 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

whenever-0.8.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (412.0 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

whenever-0.8.8-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl (450.8 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ s390x

whenever-0.8.8-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (430.7 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ppc64le

whenever-0.8.8-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (436.7 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARMv7l

whenever-0.8.8-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (397.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

whenever-0.8.8-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl (450.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.5+ i686

whenever-0.8.8-cp310-cp310-macosx_11_0_arm64.whl (375.0 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

whenever-0.8.8-cp310-cp310-macosx_10_12_x86_64.whl (390.1 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

whenever-0.8.8-cp39-cp39-win_amd64.whl (321.0 kB view details)

Uploaded CPython 3.9Windows x86-64

whenever-0.8.8-cp39-cp39-win32.whl (328.4 kB view details)

Uploaded CPython 3.9Windows x86

whenever-0.8.8-cp39-cp39-musllinux_1_2_x86_64.whl (583.4 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

whenever-0.8.8-cp39-cp39-musllinux_1_2_i686.whl (625.8 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ i686

whenever-0.8.8-cp39-cp39-musllinux_1_2_armv7l.whl (700.1 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARMv7l

whenever-0.8.8-cp39-cp39-musllinux_1_2_aarch64.whl (575.0 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARM64

whenever-0.8.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (412.1 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

whenever-0.8.8-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl (451.1 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ s390x

whenever-0.8.8-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (430.9 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ppc64le

whenever-0.8.8-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (436.8 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARMv7l

whenever-0.8.8-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (397.3 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

whenever-0.8.8-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl (451.1 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.5+ i686

whenever-0.8.8-cp39-cp39-macosx_11_0_arm64.whl (375.2 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

whenever-0.8.8-cp39-cp39-macosx_10_12_x86_64.whl (390.2 kB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

File details

Details for the file whenever-0.8.8.tar.gz.

File metadata

  • Download URL: whenever-0.8.8.tar.gz
  • Upload date:
  • Size: 235.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for whenever-0.8.8.tar.gz
Algorithm Hash digest
SHA256 d0674d410fbbcf495f6cca0f1f575279e402887d20e4c1ca7d11309cd41b8125
MD5 54768efc72e26e945cdc50d45384344a
BLAKE2b-256 4ab60e871022a7a5ec9c80c3e19028c806a7a079b3e0aaa524e1a8ccfd52e6bf

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-py3-none-any.whl.

File metadata

  • Download URL: whenever-0.8.8-py3-none-any.whl
  • Upload date:
  • Size: 53.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for whenever-0.8.8-py3-none-any.whl
Algorithm Hash digest
SHA256 b63d58613af9e44bed80d4a61ba0427db069bdede28ad5365b40bbe375a12990
MD5 a0fd5b5c17b5fb27c48d46a6c9b38dd7
BLAKE2b-256 e81b6fbe6e7d4a477f7ca2fe9d4f4fcce0e243a145b45ee35adc55dc577bffa7

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: whenever-0.8.8-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 322.3 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for whenever-0.8.8-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 fd71c8ac5cc761efe3b2dece32c5d22d44368155e37d948132b475bd804914d3
MD5 be3896191b6cf8caaf77beb5ebebbc5d
BLAKE2b-256 038f9446a951cb423d76a046b90ba18403488d3282091453407e663af6bf4b2a

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp313-cp313-win32.whl.

File metadata

  • Download URL: whenever-0.8.8-cp313-cp313-win32.whl
  • Upload date:
  • Size: 329.9 kB
  • Tags: CPython 3.13, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for whenever-0.8.8-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 eb8fee01a0955aa9cbf4cc5b348a8562d7f1d277d9d6d0b9da601c0d45ad7f83
MD5 4e7f1d99a3e6a0ca8885cf56aa7264c3
BLAKE2b-256 069b6aaa8d1de1988e93e72135a7c84e02fd831833134383f2eca293def2562d

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 605f0f06b6afbc8c86ca6c1c49a2b69cacb63d6af0fd683bdb1293a2635c3ce5
MD5 8fbfb8891e3299f4922961fb6ce66451
BLAKE2b-256 2efdf7359293eb3663f64da310db5a5e81be43943ffcdc27a3d62a92439f206f

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp313-cp313-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp313-cp313-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 9815709758e58ceb751cfeb8ad222275e23b6ad512b5b7a956566bda70a1c6cd
MD5 3dd04a66032a2d550c01925621718f7e
BLAKE2b-256 35b8143cabfd63ec0d05dbc9bfb6ba30f8d871ff19f5f34654602fb9ecbd572a

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp313-cp313-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp313-cp313-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 7c190f049532157a737a565a4797099684511011e2e1bd57e2488b0f5802a9e6
MD5 7ec4d52d2405d7767de2d7952ad629df
BLAKE2b-256 d5bc22df727937940c0c4a3f0bf492c2d1ca5c03ab79307f0966a585e6159d34

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 fc2dde25b43a9375f7940504f8688259540d2d9960e5c973771d7b96030e3c95
MD5 3708383b580b17e60fefa022109e60b6
BLAKE2b-256 74c1fcd83e53e33d5b36e6b97f127a230dc9439cd5b3dcc5a6e2f546364b4c98

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f1abba00ed463689d2d062eec36e5ea5f0d195d3fe6702121744592d5a234b09
MD5 5a615428b5de387e5f20b5ba1a9d533d
BLAKE2b-256 c761b5e123dd98e90caeedd8ed3ede06b52ca0e18d8d16dfad8133c954702451

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 5c63453e0603bc4583661fbabe9b68ef41059b02f3bef9d572a9668e3dc74793
MD5 c2ddee4ec19a4e9bb74d1342b568ed39
BLAKE2b-256 c5715f005ca40eb0d87804a3863f0c737cbd336e8d8bd234772809eb4dfa0ede

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 53b03e95f34d942e1e8c1c752d64e7166e7454112fbf6b4139d0eb9c017a17c6
MD5 7cf62c13efd8e4a18e696593c53d2c70
BLAKE2b-256 07876d39cb9adf6ef982f3b8471f786fa1330bf73b021e2619204b8934b716b1

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 24c0e9074b6f73d60eadd0d8149c0d29c5b98b054f881d0a1140367c43c9ec94
MD5 641804562cad7f871bb837422a655910
BLAKE2b-256 77e48706da917832a43999142afd7f2f68aabf6bd109fd69142237e61461f787

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4d1b517eab4cd6edd13cbd7236b5bb3d1babf0606dd756141a6cc274580cee56
MD5 6fb2dec67cead4b4ccc42d8082c9a9ff
BLAKE2b-256 8162e28b36a7f478729cee8571bf1667ba77091f2d8638230af705cdd34e8450

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 a05df53c1fe75df0a58c188971d63bf0ada627dcb74f2e0c2ff0fb3dd8d7d097
MD5 3a633ed501c78b1339a004e2c7527a5c
BLAKE2b-256 93a84897328754d8b7ffca335a473f5215380ad23651d19629e0c44290863ba3

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a3b0e34a7afe367f245bcf3b8a9e581b6c09437d623001acf23207b08709837e
MD5 3e83c7e611e7d51c50cb1bda33ae8379
BLAKE2b-256 6a950837ab424edb8568afecad9cf742bac1b4cd588bab8152ef26249c795c90

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 809d56d01440b37b3dae4e3856ebf89322d51333bcddfecacacc235fff3f45c1
MD5 5ead45f1cc63f8dcb2d0faddc7eaf599
BLAKE2b-256 1f315bf53c6ae051cec2ae23477bee58ea7e6d61ef1b4a5f012e8fd65fa14eec

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: whenever-0.8.8-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 322.3 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for whenever-0.8.8-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 cf24b466c6043fe4f0344cdbf6c09b166e4fea03f5d57b6a439eb26f391b6839
MD5 f2e629e91ff09c1044494f1f207f0c2c
BLAKE2b-256 5bcd6e41a11ad795947dc747208a7199aa6be9f3b8b07afba0b153ea6d715a35

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp312-cp312-win32.whl.

File metadata

  • Download URL: whenever-0.8.8-cp312-cp312-win32.whl
  • Upload date:
  • Size: 329.9 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for whenever-0.8.8-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 8766b96c97570c5138100a20488985db0c7f49ad078644f8982a0e3d64080dd3
MD5 b15044154f49967c24843bca3cd0e2bf
BLAKE2b-256 f50ebf591dc9334ba3f44a88996a60a5650408901e45877ca47808976624657a

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 5267dd1977286c7e6231917112fb860b111e7c7c380f94e3725e0c13dd13fdd9
MD5 11554cecfc874a756b9b4e0fd297ca79
BLAKE2b-256 2f2ad85257e332953a77b2cfd27cd698cb1d226f165b3643e588fded9dd801da

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp312-cp312-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp312-cp312-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 800832cf213fe48d58a2b0273304831a7bbfe7341712c2fdc631d9cba92231b0
MD5 86232bf9a6b9e5dfb3f75a5eb35741b3
BLAKE2b-256 40ee041dde993beaba3902ccfbc858a41ddf2782bb274a93b41b635e073aee66

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp312-cp312-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp312-cp312-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 07dad7e78e3f73516630c3d74636dc966c19ae8b5099cbbf9fdb8b52678385fe
MD5 b42bbe9ea1fd76706ae2c36bd618a910
BLAKE2b-256 02a540904c9f9583b2c8a666c3c90ff58c92722b5fd62428470bc0824036d480

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 65889c31520e5241a619b17a82f30252a1b9e9f3dbaf813b1de2b45f218a2c87
MD5 2143b95563a0911fb570e6963a094af7
BLAKE2b-256 02fe16608f4f30c1262a8d9e343e255908772172734331db19d113b6ff5fd0f3

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 52e19d4484413f5c08e5e1f5b8968efc119ce7a8bfe788aab136c5c93a33b93b
MD5 74897f1befd14b5acca23b02d8f45adc
BLAKE2b-256 b3f47c4b828a7e2d8efe16ec989c11522bce8b5c8420a931a7acb97b5028f33c

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 69f745b81e9f75b5fdd39596d39dfa05f8a9d7288de5b3782bb30d590a310e12
MD5 95ca1098a1052f4fc9a09d044c1b8416
BLAKE2b-256 37db49a94b6ace1a3c3d8633fc45b7c87c604005564e5848bcafc548b321ccfb

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 b5731f7d0dc7226f88cc40facc7dfe3810fa921930e19b99cbf4086472e411b6
MD5 33a981b8e1b2fccb5af18c7ccda71f61
BLAKE2b-256 70a3ba827598a30ae11b4e9a5109a295f66cb3d90c7d19456bc9c886d8f84a75

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 6c97861c051babbcf15b4e6ba021d52941096d4a0c46bf98db162f3720f02725
MD5 9ba2d87cbb7a5d7fbc91223d53b21996
BLAKE2b-256 2dfc7a4789b8f9c6335a9ecb027034a65caabe256a140389d3d04ee711070179

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7e929a3a2815bc5e2dd53504afec714a837c99b4b67dbb261e8594b20f395eaf
MD5 94c4976cd4939ae150549a70760c3c37
BLAKE2b-256 2d161844839a6db4de85d8da06beabab2a1207161f40d60bb13a0a5a89b2f997

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 068232acf18432d86e75286b4b5bc6e3d9b4542a8f9b9ba0114e2aa9cdb4778c
MD5 8fc32d4da7c1615fceed4538836baffe
BLAKE2b-256 33c00cebf03683013a0498c48b787be1b8af9b779cc35230f3645cf3c7497c5d

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 82988062e7f8695d1d567e9d259ebeb90f0d43c1b1e34d12019019887375709e
MD5 429dfa1e7a79ce1f9023b81143f1b9a2
BLAKE2b-256 e62dd10a544d536b6fcf807f06355cfc36298c14b584999947932afe16083f53

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 43a0a56b2b2bb6f821161fa4e0c077e24909d02241132f8aad47a5ad604f4239
MD5 7762ad56ce36a82122dab8aa69c6bb6d
BLAKE2b-256 9c67562a89b70ed28bef984a45c022c320ceea6722054b8bb2d54ad089c87978

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: whenever-0.8.8-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 320.9 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for whenever-0.8.8-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9faeee933c9fd22df352c55e5a19ae3959187971ee3d2aecfdded2fd6f4a86e8
MD5 f1d54bda8303c3cc06fb37de872397f1
BLAKE2b-256 af7444253162e1b25fe2b70bde217ef0cd76f7811484a9bbed00df769fabffb6

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp311-cp311-win32.whl.

File metadata

  • Download URL: whenever-0.8.8-cp311-cp311-win32.whl
  • Upload date:
  • Size: 328.3 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for whenever-0.8.8-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 cf4147a361595da9fa981f35e95f5acd58316137ad97d140630407794b280c75
MD5 1e97c89c8703b17011a0a0fbc7a0a8f3
BLAKE2b-256 50b883ba57d8e14c7769f00096aa8de4d8022a034e402ce780abaf56a678e9d4

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 9f4118fd28090c914e8be577ffded3508e53adbbff39c17df03611d16c68c0b2
MD5 1d392480e0843bc2afd6cba58fa3bfff
BLAKE2b-256 29ced17170b7487da4b2c95960499d14838197645cb879c0862dcb35a4edf953

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp311-cp311-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp311-cp311-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 325ae450a6f476837497a4391e7ddc7353f3f944061a5f607f48b9fc3f5d98c0
MD5 245617d4058660cada0d923b8f8e5216
BLAKE2b-256 ddd50c2c8be9e2376417203d950ca77c2df2132018863cde7c73154a114e72b2

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp311-cp311-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp311-cp311-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 c21a8ef5ad6d03d473d782444b2b99a0e65d48ab11951ce11858896aebaf459b
MD5 6a006207d1773fe6d9f81a677514137c
BLAKE2b-256 a504f423acad21fa11cf0240b417e04d9af3b74eb58e15820e500229874c69e5

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 56d3227e3212375f4e3de4c97a006de5e7973f1273b7aedcf69f7c883762ccc3
MD5 a0f342d6baf51e98f0e49d96c6fa6346
BLAKE2b-256 c8a88cff5c1eb4771b999f96e5a784a30db52433f69be56193cf146059eb4174

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e5f98dc66db6016660897e0fa56904e75de35daeacac5a012bf4424ef4d567c5
MD5 730ef40c79034f65c76e39362c63e309
BLAKE2b-256 3bfbcddfc11b0c36787b746052e3e4741d2b61bcdf5636582d9f57ad5ca0b0cc

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 5f331f03bdce04d9709053d49dd982c54e54f21005580273f3564327b42fb242
MD5 4ff8d6f38dad8bd756601648774f6237
BLAKE2b-256 6caa1ea65baee041b268ddd8352e3582bd6c3fb87c1f77329b44ac61ab59e22c

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 aea29c76221f5d0ccdbbaf806c3b181c1aba9efade5726d501ce26ebed70b692
MD5 a4da841a181bde0d7325d7a6cad11d8f
BLAKE2b-256 d5786c616a30a518afecd7135928b6ca741ab274ab2021b631a21724cd056ae9

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 1f6b813e15f845f9f8be7d6226cafc5cbd89746289fb302ad40213f28d1911ec
MD5 d5ec3707cf81825220504cf6ffca3871
BLAKE2b-256 48081d9c49c8f35afc6342eded722d11503f6b0105b66e4861d6776a05111960

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 bc6fe69fe491751c91d9d5a11bd18e3e15fa6d0d294e661d71e9df7e8cee3f9e
MD5 9c01c33b5fee310f9339759073aa9677
BLAKE2b-256 0ca6be07090cedde0fd27be569012609b933eb22c49e651e59cbba96951691da

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 182d4ed4df2f09f173e09c606a866bc324f2ae4a67145f391cb669e915c4b0f4
MD5 8a3d541e6363a966e2ae3a5144741083
BLAKE2b-256 ff573d79a393c66e3999408f746159ba977b3ef5494b95503b3a1ac687251969

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 943f1e4054afc664b79b44929569598513587978395ef159340253ed0bf73e6e
MD5 0d3634952951d6938f8acf4e949e701e
BLAKE2b-256 87f0b4bcdd4d8edeec098d8acbdedb35c066559a51752e383c6a3f944d4e3703

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 0cbdcba2df308f09d26db924459d31ee5c5bcb09e72a16bfb9fd7cdd05812920
MD5 b27b123646d2f342a4519c5a07e6165d
BLAKE2b-256 393d240aa3d1dc6627e633470449f2ac8e8179e8d5b4e6c41ca5e805c0776f68

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: whenever-0.8.8-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 320.9 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for whenever-0.8.8-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 828f96be5c7d7a1f4e92f6ab532287f7ad14b7875a468444d41ddf6efe1c38f1
MD5 413eb90fc4cc338012be47ec481b8304
BLAKE2b-256 567935cb777225e8a1d5ddc0fbbb7eaef1b83722ea08f1dcaec93b8d43db1f9e

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp310-cp310-win32.whl.

File metadata

  • Download URL: whenever-0.8.8-cp310-cp310-win32.whl
  • Upload date:
  • Size: 328.3 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for whenever-0.8.8-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 c93f0a647bc3a229069f90f03b9fb6a0e7b940b8b5fabfbbbcfc349c2821ffc7
MD5 896751770e133e6ce5bb92aa9b08e99b
BLAKE2b-256 e3b994f9018f05580e97ccba1fe2b1cc8802802de7dbe844fc242ff2d485378a

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 79344ebf1464040d65bc3ca7559004a7da24c34fe92388aa3b736c8e04c14918
MD5 cfe3aaa981f450b9f7ba90828eeb7447
BLAKE2b-256 43404319bf1ab4355102d5d4681acec1d29941f4253912a57002bc2f7a7c9b3a

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp310-cp310-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp310-cp310-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 f94b6849ea1513acd221ed682b85fc5911cb6655922522cae5ce046737aa1a39
MD5 916402e3e739902bcee1fe9008253199
BLAKE2b-256 95d10da36a1e8dd707df49f9cf59febd86dbbbc5e010274d888c94f08bae0392

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp310-cp310-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp310-cp310-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 4a00cb99bb93d6cd08ca24d8c365fe853a6cbfbb864d248f5f971bab74f0f557
MD5 64bddb3a2a6342990421360d149be974
BLAKE2b-256 077f3d430615ef792840e44686d6c71addceddd2e753536a13844b6df86610bf

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 1757cd133fa50b65c80f7e4c0efd54ad123d8be41b58b598c8458f256e8ac18d
MD5 a815af8203befdcd827a546187598b43
BLAKE2b-256 cd879109ba68e52fb95cefd3ac98edf2201fd0a9efd0f45406fc48b28fb52413

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2310b65eef476457bce177f629dbf737a46a373b8889ded9847ad11e1f6c290a
MD5 7cb67efc37d9ff745dddd75d3ba36eed
BLAKE2b-256 4a371ce9957e74470aff3ff7da688e9b7e0c1f137556a41179aab72287631616

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 ebd84e4ec14795df7e3b09b6924fd4d7753b1155809062531e2c02602b13774f
MD5 189877833a3ff4bd034d22e935b278ef
BLAKE2b-256 3b6a03c2a0779694104ce6676dff3bf2aaf74965aea1f070d83ec9afddea9ec2

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 58bc22da46f63d722f4833ffa6def9be88acbf2f45b7ef45c6160633b4de1217
MD5 c368f339380dde4bda5dd84d162bc670
BLAKE2b-256 77642fe516e3d9fa850669806160df080a874395cb064ddf92a4083e0dde97ea

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 c17e1a1477c7a61b3e38d58eeb2ecad2fe993c77f96b7119e56e97d7aec647b9
MD5 d9a6aa45411237af5687b61a60d4f373
BLAKE2b-256 dbcfb30b8e83b22b82060ce9c0fd95c4cd8d0095772d7183741fea06c4bde153

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9ca2e0e1ff3f2d43839b027b3469eb38ecdf991ed2455da13b8e7533e0f0d25e
MD5 b0662b25d12d75cd0dcff41fc91bd25a
BLAKE2b-256 0da76aa4be5f7d41c3d317700565c5773e98a85ce65e47d96591dcd037348f4f

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 8100b512bfb56d5228d1485c1e35fafd8f561f37831943d7b3a5f15ebfcb6fac
MD5 1736da9394844e8e239a8eff4ed707c8
BLAKE2b-256 76325a907f2392cd3f4e2aa7adbd5c4bb94c53acc0976923e05ade830ff8c8ac

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e2ecb1d61e0d710f4818e6fe492f96b31f66c46463bb776204c0a1d610c71e92
MD5 bdeceeb6d000fd6fc197d19203f8e688
BLAKE2b-256 72c500b16e6163a15bb4f58c2a8bacd34a004d8383648ebd9c6f39886d069aaa

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a19d7b43646755315d5848ffb4e87cdb9e24881d70fb25da2b28aa50d9bd4778
MD5 54cefce2ccf90001ccbf4493a4dc337d
BLAKE2b-256 f9b10e13853054d21c395d82e520b86281a487a86ff4e7f99138716c0c8b8983

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: whenever-0.8.8-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 321.0 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for whenever-0.8.8-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 838dac438c33e9591aaedb6d900a35b706de9a0a92d5eb31391ce52c6a64b93f
MD5 caffdd6b5a08a3ff451af75847cd8f54
BLAKE2b-256 b252b0d8845e28f1be3209b7676ff29d91c43d6301caae0316e9f6bfedadc2a0

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp39-cp39-win32.whl.

File metadata

  • Download URL: whenever-0.8.8-cp39-cp39-win32.whl
  • Upload date:
  • Size: 328.4 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for whenever-0.8.8-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 17bbc06cb193cf26ce108be365817fa4e5a55a5ee7976b74f29d98f5a499d5b3
MD5 4ffcadd44666317269f11f07f05ab650
BLAKE2b-256 0bf928e4f249a354e5b3af2be83d328dfd65b4e9f6c716cb9c8487d29614de3d

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 eea0dd48b8f17c3d7ebce2534562117cadc2fa9337d0cf2aac9cc5dd56bc8fc0
MD5 91191f4c844ba41a3ed9d44a0ff8219f
BLAKE2b-256 41c40b8b31dbe571c0cc0a8f32b97031610fb3e379d7cfc0d2a94b3194c91dca

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp39-cp39-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp39-cp39-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 6df5bca4c709781c6593c8c4c914f2945decb3a811bb7ba4a7b3c6d557417d41
MD5 d5d62979337f39c02dee1e12c1663afd
BLAKE2b-256 5173d8f9f834078860ebef8ea23f2b6c8e029f12b824c667a196708b32f2a037

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp39-cp39-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp39-cp39-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 86407aa7535b798cd3c94a38b82f76677a49b139e65eaf5b7c7dc9f6ffec2263
MD5 4694dd6a89c8c17eaca79e9b98d0fdfa
BLAKE2b-256 6b83600fd27d9eac77a29b1a27a0a7536dba539852c7d75baccbb3aaf1070a03

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp39-cp39-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp39-cp39-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 90b6f14077fcdbcec19e022c7c56c3e8fca48bdba12579e3fbaf889e40c5e98a
MD5 020c63f25fb12553a22ad0f9a8cdfc3c
BLAKE2b-256 dbc31096fce5ac7cb45709d4c57d005b32cef76d620c33aff540ce526bd17fba

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c22bc3cf622f21f6091223d94c9f8c54cc1e3542ef576df41d31137a15512403
MD5 cc447e23f93249f24aa3e276def9b356
BLAKE2b-256 9d54076c011f44ed38531c6e2cd685d752d0c3589bf53065ba9e88d0595c32b8

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 16c578c7631115963784cd9f7ab905a802f1384591d02b5070a128ec2e81ab7b
MD5 5f52bb37e367af2f6cee6ca4eb3db863
BLAKE2b-256 c1a77031e4704f68737e1a3c59e0586f04b3c15a63e17956a277141ed80af0df

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 85bd781140a1b01e2e61599b5da68baef36725e55737baae8c1c05e871210ec7
MD5 dc61a19cc368e02e0b6607c34b5e5bab
BLAKE2b-256 1f8b300290b381657ee1c608898157a53c285168506d9dde491c6aa7065bf405

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 6d8e5ad4e2d2cfe8cbdc474a5d5f75e21c9b3cc72caa4fb22ff77369a56b99ac
MD5 4f8c558aed11369415a29dde270d1384
BLAKE2b-256 d05715255fb866b98329f74e05a1d10555954f82a9b2f39def4398afb85e3f5f

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a40c096cbfe3e87b234aa7b3d03fd282c12311e34339e2f0d82891613d488e11
MD5 0f6c88eb651e4583952f1721327a47d7
BLAKE2b-256 35eb9a3669e8e18b37b8655389653203973a63898edaf937e8a6dd98a9fdb562

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 56030ceff83f0a3744695112a07ec5e166b58864c79ff4653a6213afc8055475
MD5 161ee17e5d71ed3c7f3a9788a12d64e7
BLAKE2b-256 09a38eea7b0e2991ebe1432712ec4057265ba7ae7486ae6f3a8be3fbf6175532

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ae51688a82169cc79ebef1b45c9ef22b4dd45b6cb3a82f555c01cfcac3cd1c08
MD5 a8339a5182c0d29c8a8f20b2e6d73c90
BLAKE2b-256 7404fed9095438cd20ebe00bab94d5e19c69e775166e586b79115d087c086ae9

See more details on using hashes here.

File details

Details for the file whenever-0.8.8-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for whenever-0.8.8-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 bb779600038bcc510e99735c07f8e0c47290c8525f00691896e0d7f279e1c1d2
MD5 11ef0dde90c05cb2f84d18b8c1fef83b
BLAKE2b-256 afc7e49c2049ab4458f7f7fb7e68fc0b183412c1776e697cdcf3b6a01b657943

See more details on using hashes here.

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