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 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.2.tar.gz (126.3 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.2-cp313-cp313-win_amd64.whl (338.4 kB view details)

Uploaded CPython 3.13Windows x86-64

whenever-0.8.2-cp313-cp313-win32.whl (342.7 kB view details)

Uploaded CPython 3.13Windows x86

whenever-0.8.2-cp313-cp313-musllinux_1_2_x86_64.whl (601.9 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

whenever-0.8.2-cp313-cp313-musllinux_1_2_i686.whl (651.1 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ i686

whenever-0.8.2-cp313-cp313-musllinux_1_2_armv7l.whl (711.8 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARMv7l

whenever-0.8.2-cp313-cp313-musllinux_1_2_aarch64.whl (594.0 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

whenever-0.8.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (430.4 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

whenever-0.8.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl (460.0 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ s390x

whenever-0.8.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (548.3 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ppc64le

whenever-0.8.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (448.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARMv7l

whenever-0.8.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (416.0 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

whenever-0.8.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl (479.1 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.5+ i686

whenever-0.8.2-cp313-cp313-macosx_11_0_arm64.whl (388.1 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

whenever-0.8.2-cp313-cp313-macosx_10_12_x86_64.whl (398.9 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

whenever-0.8.2-cp312-cp312-win_amd64.whl (338.7 kB view details)

Uploaded CPython 3.12Windows x86-64

whenever-0.8.2-cp312-cp312-win32.whl (342.5 kB view details)

Uploaded CPython 3.12Windows x86

whenever-0.8.2-cp312-cp312-musllinux_1_2_x86_64.whl (601.9 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

whenever-0.8.2-cp312-cp312-musllinux_1_2_i686.whl (651.7 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ i686

whenever-0.8.2-cp312-cp312-musllinux_1_2_armv7l.whl (712.0 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARMv7l

whenever-0.8.2-cp312-cp312-musllinux_1_2_aarch64.whl (594.0 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

whenever-0.8.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (430.4 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

whenever-0.8.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl (460.4 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ s390x

whenever-0.8.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (548.3 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ppc64le

whenever-0.8.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (448.7 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARMv7l

whenever-0.8.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (415.9 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

whenever-0.8.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl (479.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.5+ i686

whenever-0.8.2-cp312-cp312-macosx_11_0_arm64.whl (387.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

whenever-0.8.2-cp312-cp312-macosx_10_12_x86_64.whl (399.2 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

whenever-0.8.2-cp311-cp311-win_amd64.whl (336.0 kB view details)

Uploaded CPython 3.11Windows x86-64

whenever-0.8.2-cp311-cp311-win32.whl (341.7 kB view details)

Uploaded CPython 3.11Windows x86

whenever-0.8.2-cp311-cp311-musllinux_1_2_x86_64.whl (601.8 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

whenever-0.8.2-cp311-cp311-musllinux_1_2_i686.whl (646.6 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ i686

whenever-0.8.2-cp311-cp311-musllinux_1_2_armv7l.whl (713.1 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARMv7l

whenever-0.8.2-cp311-cp311-musllinux_1_2_aarch64.whl (593.9 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

whenever-0.8.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (430.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

whenever-0.8.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl (459.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ s390x

whenever-0.8.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (547.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ppc64le

whenever-0.8.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (449.6 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARMv7l

whenever-0.8.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (415.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

whenever-0.8.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl (474.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.5+ i686

whenever-0.8.2-cp311-cp311-macosx_11_0_arm64.whl (387.7 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

whenever-0.8.2-cp311-cp311-macosx_10_12_x86_64.whl (397.9 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

whenever-0.8.2-cp310-cp310-win_amd64.whl (336.0 kB view details)

Uploaded CPython 3.10Windows x86-64

whenever-0.8.2-cp310-cp310-win32.whl (341.7 kB view details)

Uploaded CPython 3.10Windows x86

whenever-0.8.2-cp310-cp310-musllinux_1_2_x86_64.whl (601.8 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

whenever-0.8.2-cp310-cp310-musllinux_1_2_i686.whl (646.6 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ i686

whenever-0.8.2-cp310-cp310-musllinux_1_2_armv7l.whl (713.1 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARMv7l

whenever-0.8.2-cp310-cp310-musllinux_1_2_aarch64.whl (593.9 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

whenever-0.8.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (430.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

whenever-0.8.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl (459.3 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ s390x

whenever-0.8.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (547.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ppc64le

whenever-0.8.2-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (449.6 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARMv7l

whenever-0.8.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (415.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

whenever-0.8.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl (474.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.5+ i686

whenever-0.8.2-cp310-cp310-macosx_11_0_arm64.whl (387.7 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

whenever-0.8.2-cp310-cp310-macosx_10_12_x86_64.whl (397.9 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

whenever-0.8.2-cp39-cp39-win_amd64.whl (338.0 kB view details)

Uploaded CPython 3.9Windows x86-64

whenever-0.8.2-cp39-cp39-win32.whl (342.6 kB view details)

Uploaded CPython 3.9Windows x86

whenever-0.8.2-cp39-cp39-musllinux_1_2_x86_64.whl (602.0 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

whenever-0.8.2-cp39-cp39-musllinux_1_2_i686.whl (647.6 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ i686

whenever-0.8.2-cp39-cp39-musllinux_1_2_armv7l.whl (713.4 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARMv7l

whenever-0.8.2-cp39-cp39-musllinux_1_2_aarch64.whl (594.4 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARM64

whenever-0.8.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (430.5 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

whenever-0.8.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl (460.8 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ s390x

whenever-0.8.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (548.6 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ppc64le

whenever-0.8.2-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (449.9 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARMv7l

whenever-0.8.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (416.5 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

whenever-0.8.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl (476.0 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.5+ i686

whenever-0.8.2-cp39-cp39-macosx_11_0_arm64.whl (388.3 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

whenever-0.8.2-cp39-cp39-macosx_10_12_x86_64.whl (397.6 kB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

File details

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

File metadata

  • Download URL: whenever-0.8.2.tar.gz
  • Upload date:
  • Size: 126.3 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.2.tar.gz
Algorithm Hash digest
SHA256 bcc001f80083f3c0f4da8bc1bbba0ca68667b39c25d3bd287bd651b5fc7afe04
MD5 7d789909bfc31491d3d690eb7d5f1307
BLAKE2b-256 ee7e6f4516c75b04f664d2d6083a071fee34b388a88c6c04bc38aa243b0b8062

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.2-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 338.4 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.2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 430031418f1dd30b193cdc63667775d7631c2eb092d6a53f6114797530cc9256
MD5 7cb096e473cd3480052b0633b1453da2
BLAKE2b-256 52aed4b3ac9b17f6ad9f5bb4400fb327e3661c9525ab1f129eb1eb0b0747af96

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.2-cp313-cp313-win32.whl
  • Upload date:
  • Size: 342.7 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.2-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 7984cd1d940c3b11e37ee99532bf50d1396a14e1bf020429d9cb5c2c3af72168
MD5 f84921d1ef400c912d7abb64d20fe153
BLAKE2b-256 3044df01eaaf1b4e2699cbe62c13340064ff8a5c7d8e383f6896cb97ebba8b30

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 7819be3642e80bfa72440d936e39a45fe31cc9b90868750da377d08cb1d7b5a6
MD5 9612d7077e2f0d7be5d64afc82918b2a
BLAKE2b-256 01e79c62e6113e5997bd236e7b4bf06cfdb80abadd03ab8904b2bc53a3563b0d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp313-cp313-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 966079d3ddc79ecf81a5e60a94b111417108267f07bb37b8a5b448687837724b
MD5 78ef1de00e2f5897f029e54d323c4aad
BLAKE2b-256 5a99331cc34495b03df96a032feec81f4d15b6a0d8d8b4220a6b6ffa33309048

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp313-cp313-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 a9afb4a01df6b2724b5f04526c994a0dd2c6557c526c007e29e2799927315970
MD5 42e6479b4a0f457c7987c579aba78a10
BLAKE2b-256 5cb1ae5360ea58dbc3bc896a0345d865131e34a1855ca2d8d4bde80a303ced14

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 b7af59b224d7e9f5eedf01a34bf560c6d0d312a3dd3a3e8b4e41fc0433fe57b9
MD5 e9bdec9d98fd655e67a2b4549660b826
BLAKE2b-256 21b982f9e18fad997359f5437defa71714d2e7e108ea3828699e96fa67d500ec

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5cacbbf738e1d5a7b7f3eb286558b17a621a3474358c784def2e5f045d3d1d29
MD5 1c0dc396b8b5df6ca2eeb87bbb6b8f02
BLAKE2b-256 44eeacccbf307d88f31c003a8a355eb29895650152083cc39dcf5c6c58f92d69

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 60fe9f435ee9294ffc4ab0ab11b6cd1e926526ddd0472be09717f8225d18dbb8
MD5 b04411f9c5242a7678a5510d0b9949a4
BLAKE2b-256 45d3adadcf2c6b975fcdea36528a3a784d04b3f151490888c5c1fc624041609d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 cd63c39decb7578cb53e6e9b2716e78fbaed752ada7845e2e85a9c72b276f84d
MD5 aef5650887bcd59ea61f5a87ecdab62e
BLAKE2b-256 e351527480b4bbc6dfbc51a2fc28c1a9732be9b4349b91bc66cd33748986dc7e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 4f0f76e05e9c23188adc4fd7cbe30d4ca592a70cf3042a6db169e7f3380e1bae
MD5 9a6a974c313f5a372fe0ec25901bc9c0
BLAKE2b-256 a37779afbe0639f83704b7c73cde32440d0781b195b038e94ed83f1e473c617f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2e5644221c0e4befe8ec03d8d597875820d1b8c014ec9151df584435459d6c3a
MD5 01d0125db58c3647b58d2754979af551
BLAKE2b-256 bd487e7e84fda54b562bcebec8285cd430fc8330878721152656b69c5216a021

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 13096c2161cd6d989444ef374bdc51a61b8d8d95a6c72631746badad21c29789
MD5 3d85a63ee5db2b7f5badfa42a5d76cd3
BLAKE2b-256 09550a8081e12006734f9b159290acc65a20bc047d9292262d92039284aef2c9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8a08a4a6b70982edad78bcb1ee15837b02b0252c0e9ecf85ca24dc22a4807c80
MD5 58eba0ac3c34cba8b1567f5192ee1590
BLAKE2b-256 8ee1d60bb184ec5796b52592af9c95a54e849e4121632bedd6125e498a1f2e4d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 e2c889f90f3c834c2ae8c3c4608c025878253afded06fc0825cef80f9a9f8a48
MD5 c2f9402c777180e0851704cb4a907ce0
BLAKE2b-256 d735386f0802af049a7e588d302b28a3d400a611d9ff7911574a60f9f4ab618e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.2-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 338.7 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.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 46e5835b7ce347dafea702c42878688ab49ddb369a92accef77d80e006824c00
MD5 fc7d6dbc733ebeac9855b99781ed1ae1
BLAKE2b-256 89d85cb7f0c3d4ca615d69e623036eb75ad6ff380b5e1004e8a58a275eec1000

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.2-cp312-cp312-win32.whl
  • Upload date:
  • Size: 342.5 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.2-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 3aa327a2115d844590a11003bfa27c43b86d66ecfd260fa20f4c89c5d1f41218
MD5 b502ba7717539d4e562b8644c70b2a2f
BLAKE2b-256 0ebaa9daf54abb03c96f267ca303038093f90c712f8d543a0a2756aee7512f27

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f701539b6fbb17f8289d1cf43e953ba568fea62d4b5d0a640be879a40c1bb3da
MD5 fee9223370968a13c8d299e866caef84
BLAKE2b-256 e54bedd143ee084378711fba1da2f934b95c4acb511f9adc8c1a66875a618616

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp312-cp312-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 dd2b5cc1116d5b9e72df8a43cca86e0ad3015d8724d805936bb064c6b9a45b4f
MD5 b75e0bce9eb5fb82ebe2be9a8f27e557
BLAKE2b-256 5aec4f9a7adf51d16437139ce04492307e616489f461fe0b189083aa8ef0a998

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp312-cp312-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 48f4ad138eb2188a5947ace3d3c05e2642543ea3d4e8d6e02b2741d296c3775e
MD5 9c9c493fbd2153afe13dc0d35de7ded9
BLAKE2b-256 0e0ead2fbda24295c1f6997deffd17cf030068881bbf41aef7ab8f1c64c0ba4f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 caf73c6f52d88303b7557dfdf36eb331e1e41c0d925bd3d8f708f55327e11e05
MD5 f333febcacf03652a6b6d0f781e45f94
BLAKE2b-256 60dcede3053bae2ac58d7f63fd945e21e21379b9932a04cb793d6bf9c3343af1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0cd13211a9eb8bfccf20e1140d433d62366c80974bca7390f60b17d58acabb67
MD5 68634ed7acb35a73ca047e03ae329b39
BLAKE2b-256 2a2f7f652ae802ad975c3f70905364482f58d49f2bb43e89d2024a604b0794c4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 2fde3088c134234876559ede8c2e792d7d875af98a52a5d95d45f8c2ad00b458
MD5 0db243b300eb3e286ed8fd6eb64bda52
BLAKE2b-256 5acf1dbe7a77b95b32e00016035f8ff1f6625290e11130f627d8746408e35f43

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 a2d7236e0e3ccd499ad6c70a49abf70531f30ec03afd5a4357de162c697244cd
MD5 10d3cb00fcbc327eaf95e6e4068f9939
BLAKE2b-256 49134bd582eddc5dde07f7e541752634bfc33247948adae6c08aa45e99d2f3b9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 00efe3a442d7f2d721f57c0b23df6292c5af4a1a79fdaaf7c8da8e7486d729bd
MD5 2af19994a1424c72a37b50b995b13172
BLAKE2b-256 325fee36b50302c1a7720a857b2f954da863f05b9f3287d156480eea39ed00d2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9febc914b9a0d18e88977b1f91ae1a049690a2e56deb1bc4d9580d19c7b1a952
MD5 3acd40ed2d2732dc88bb6da598f62958
BLAKE2b-256 5e50f503e9e90c972cac86bbe9bc12eb45a082e26872c6fa42198fef4095bda1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 df326fc33c3afd3daa5493d94b5c62f7367f8d8cfa7dd7a3d1a46b6a834bde20
MD5 9f249ffe757eebee4e8d0b00fafa01f3
BLAKE2b-256 e9a5e06c29e40ab3dbb513a5568fc90f7616907c3e8589644ed39ab483e41d23

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d3820868a048c4a521ba71bd665f4968b58eb1fd0cd6f95db574d28672c5a96e
MD5 bf7179be2fafc6cb8b8718c2a289fde3
BLAKE2b-256 b33a48985dad0f6f0058584197336d6849e2ecd96361c64da7d38dfa6a384084

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 24d4c950011cb4b4ea3510ee4229b8aa0f31c5b0c139ab46d1b622fe93aa27bc
MD5 ce41c348fe731d32d0fa1ed59b704a9e
BLAKE2b-256 d086d11d92c16c10202062754de0e3339df08ab1d69509afdfbdf7f480bb8922

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.2-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 336.0 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.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 01ae4fdc99ddfa727e45309b5a7ff320a2dcd04931727790a7151c9ddc5274ca
MD5 e0e337ba3293e954c231f3805087653e
BLAKE2b-256 4f4e30fb31eeaaeb25121056b9b56c58be985e64df7f93372695baa34b7f2af9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.2-cp311-cp311-win32.whl
  • Upload date:
  • Size: 341.7 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.2-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 b67143763b7b9de55d462fde88c4f23837299d5a8ce4234155bddd0dd9575245
MD5 ad6f8c64bc17eb176eeb863d4d0a3614
BLAKE2b-256 cdc8a536fda08005e7b34156d6591d05ec721a814b0aba5615d5fac6989be12f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1624c74f19a40629f81d58e428319748bb77f30a998aa8a0409ddb0fd741a15f
MD5 73921982c5601de128e51de8338c5adf
BLAKE2b-256 12a22c2d36f42727053fb560bcb4a614e635d28b9da1c8b6cdf7543328d90592

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp311-cp311-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 36e5a5d4ce45dbfd7064297cec3b3413538f7e920106a220193019a0d0e84639
MD5 66cda568e979020d61e3cf52fcbeae9b
BLAKE2b-256 a0592d2f4a18e499340690ec3623db47e0c36c498c30944ac93f0e7cb1e36bb2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp311-cp311-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 0efd8f070744714905bb834e9d82abc33783dc1b3d679e9421e2d4f4ce599f16
MD5 f3c764497f46187e54e4630e82a64c58
BLAKE2b-256 63fa1d8729cb187cc9993ea1cf947c075230a5e7bfea0a19ff83d2617d929312

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d9ed521f60515a3162c487a1052ad5290eb9021f6c789b13f6fa26ee38a6048a
MD5 096fda2cc46f86405df89257a98a3a1f
BLAKE2b-256 7274d99495e70eb62f043c151bbf60cab123a6117a0636cd4c81b08fa53721a8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 84b0e7ee96efd659366144acf9756e1c77ff6d76acce6da8236285d0a521a1d6
MD5 6c0b83ba8d7fb3a2e547be79822edcec
BLAKE2b-256 aa2bacbc949a609ebd4daa5d9a735dca72c918b792d21e51ff97588a8a540b7c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 b81be1bbb771a161fbc2e4f8609a4b5a9d95062937560c27528afbf3c91f108a
MD5 ed14302a1ea525ad39ecd693a001953a
BLAKE2b-256 bd0e03dc06f1cf10b42956ad3c7eae90654cf4d3b5e7b180bc04a901bcd934da

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 1d93d04cf13cf6e87b2f7ecc726d5263f3026c3d0cda4901f3fba2b35be9f1d3
MD5 443214d151f15620d26681e3fd56b270
BLAKE2b-256 20ed40612082c922dd7f02216ef418e9945d7a9e153b20866939c7277d09c809

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 7496d54e130c6e64be6194353448b31406db9ca09eb28c3a3b7ae6127ef5e911
MD5 48e9b899dda10516a45a2fb04194fc35
BLAKE2b-256 dbe38f622278a7d0e28256668a41939f7e7cf72cfdbb64fc8e434d1cde4264b0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 94f0dfd3127aabbf603cb866be11a364a4f83cce013d241c746ca51e4a035ac9
MD5 fe642c50b123bd2b7b483099a18bcd23
BLAKE2b-256 6b47aef734ad8a5833580cbbbaa2786c9aee9d6547e6aa9ee3ee08565e6f092e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 27a7ca023cc013d03595155665c29c16146e894a1c39866d53d016d6940de9c8
MD5 1ed2d5a5a02ff573c7b12a90e366504b
BLAKE2b-256 e71f66fe83310878359bbf0e8bd51a57892a53bc3cb4970a5de3bbc0aeaa571a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ae70bf2e5aa5d42643ba42fa1864e6a6cfc98232192af41c1f99846336da3414
MD5 e1e06dd2d126ded33c8b661d146e3f93
BLAKE2b-256 5597f22ee5180b66b1f46051b9199cbc6181d0716692facdc927e7db432dc5c5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 00ed99a3933f8cb993fb6dc7a4c6cc8c26f156e0489e4b58bd23a8bd23f4a03e
MD5 dac45cfb3d53ab889f18ec2c53b9fe3c
BLAKE2b-256 6982f294cf6a492c93b7fcdf2fb9e187ec9e67957225f58114226a2b339f9bd6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.2-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 336.0 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.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 88fc430c04d954080cbc79efc5cf9e4a507f8b5c7f64f3d5e8c06b2df119e80f
MD5 79b12d9542a2ba471fa03eda1c46467b
BLAKE2b-256 71d8c5bd73dfd7aeef7e97971d954a8a115e9ebc952d55075be3dbab2b703308

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.2-cp310-cp310-win32.whl
  • Upload date:
  • Size: 341.7 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.2-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 a6873c381eed3f6c4e68858c6d777f2233e8f9b122f917c58adaa8614f063130
MD5 05af730468bb7d4dfb662d20d945f8e2
BLAKE2b-256 eab38fc9638b941733cf4de2e47fe073a615f6674038a7e02ca819621293e1f2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 773977521cc67496dca17fa8726b20393c5a9e0d00f1ff5b9ff6c478df24d44f
MD5 dae4d1ccfcf3bdef462f8c18e2c90b14
BLAKE2b-256 3778b77e454f494aad24711b7a3f2db717b6b0d724935ec33db65610213d612f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp310-cp310-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 07221f64f5edf641fd637e6a82edbedebb7b5b0c7a032625e69f3bc6d3bcd38c
MD5 18ddbdba1ca65ed31ea46e957fd451fd
BLAKE2b-256 3f924235d8066a38b71280e80cb7503d05a88eb4b36ed7a6eb03818ba2f87f5f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp310-cp310-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 8dfe538b068c6bcf541250c8b7d8fcdb4116cb6d3ccaa6f5c315ce57181b58f5
MD5 86be6e6ae6ee8a3310f82e5940f1ae0c
BLAKE2b-256 bdfb9068a8c0c5828598b2a8265b152324c71a131a2e2195dd16d417b36a69bd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 55d05e7349d97061cc7e8be70f3fab8113e8d8b69642d0f24812e5c42df99868
MD5 f0933b018e9b21b50616cc3cf7dd3efb
BLAKE2b-256 daeb64fd5126895684466a7486ae7abebff98d2401056c95bf178a717ce6b6d7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e3378331f37a5d6774ef6db61e481f10caba553f984e8b35247a17bf60da2a62
MD5 00bd72d601247b47f8684b09e1cbce32
BLAKE2b-256 0c700444865f4824a0147aa826a7fb0b689d8c99877986dbe37ccd65a47601b9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 63b9220cd81717689728499be0c50cdf79dc97791fffc27fc45b9ba1655ab93e
MD5 4beee480113f8de88d7ddbc2aace43b8
BLAKE2b-256 c3ebc5d6db9b544451250d246c2c9a19c986de52a5b432834528a8d04471af5b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 a82dc8c30bd351023197ef26e47363b61379c6e3eeffa79f3b550bc197da46b6
MD5 7ebdb7197f2507d94819f72fc748ef52
BLAKE2b-256 4924982f1942988952432fc7d16902605db5eb4a9b0de374b70d671f190db39b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 141fa78f8c159e09418fd06c886e63af5c723364780e01cd90e51c78610f0dac
MD5 c2c79ed7c3b6fea808e4875d3eceed5b
BLAKE2b-256 a3d81a0efcbcfb75354e9a91071f090427517039553e7521d748554794f895e0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5282b050875991151d42c2bb025d31ffc43c8350fba5c392cd7c008066e36bbb
MD5 c1238aa7617a5c8eb702b034dc50eb9f
BLAKE2b-256 95a1f74e949521fb5b2609a20f425e8e7685d79c72b752454ec7207a3af0384a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 b2528171526afc333c492b3fc93a60557e389a336499a1ac411f2a7a31e4ecaa
MD5 d57b91c017235610b1081e83521f15f5
BLAKE2b-256 83ab964ed565c328a1d190a5a495c7c8fe7d4fb3034b4b95e2c6f3727dec40fa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5cbf6c5e69088eb5f77ff31f47b4c423b872d3a7d7a12912ea5206c46557f3c1
MD5 b768ab0c125e96fbf73056da43c227d0
BLAKE2b-256 16db54c5e9d3b9cefe16a3776599ce416c5694f0820d40b249df084880c0192f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 daf4d4548815e20ec13c48fb0444f8bf3357183185ecdaedbfe6007f7b808601
MD5 4dd24f7d2abe9e93b6b225d8a98a9062
BLAKE2b-256 3525766b614941ccb26d75ffeb9c41240550c3b6637fd957b7e79a57fde6cb4c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.2-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 338.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.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 8445fafb493f51567a1d6b62ab43208bd8368acd16e6eea79c188e3140c30be3
MD5 89b984a57067df29e3cbb83a7137e999
BLAKE2b-256 a967a0d96a9a90de767a9d3f8973c149def30a10b977fbcf3e99f2949182185c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.2-cp39-cp39-win32.whl
  • Upload date:
  • Size: 342.6 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.2-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 1af6079999a468f9fe26a2107e80c2babf56b3316ca220fa6cdb35b84a118a05
MD5 34e1f05b151eff28e364fc2c3e7dfe42
BLAKE2b-256 38054d29589c62a35547b67050665ee0c375fca52671d84dbdd9d11efe79fd1d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 468680faf8e885f01eae4a7d7371ae5a32a5db2b98dd53d6c00e02a1a33946ba
MD5 82c00a77f3c9630adb94f9f1d10e7c91
BLAKE2b-256 a3e1d29237238d8901e84855a441bb3d70a010881ea4311d968eaa7c0a3070fe

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp39-cp39-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 11f8c1ac24d8de756f86cf06630e806ba75a6cf53016fef80d2f8552962da9dd
MD5 c3a6d763a7bfda714882555640a36aae
BLAKE2b-256 233ff12de6abb1f148c91c0349b3de2e8c01ddbfc6511cd348a633bd53acf286

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp39-cp39-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 8e59c948c98e4ba877a398e7073e98c1f07ead411f73055652da7df353d220a9
MD5 38a7d78594f7361ce6272da94f558c57
BLAKE2b-256 9276ba00915fabbeea0bb5b1754300c1d9b7b31d883c38f41c9ff8e25b8b7d4d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp39-cp39-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 2f28defe97d86c83f5c6367e16060b2ea5b3409afb86736971f8687b0468a9a8
MD5 c73724d0df28f747cf809325c1193974
BLAKE2b-256 000180a2c376230aac7656f3b2c05950a4e1fe351b8565c176731c812f421085

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7b10defb8c917c17b49269a3f8101630bc7cbf551b934061a14b71eb8f649021
MD5 d2da68b36a4b141ad5c3bb4f98ff0dd5
BLAKE2b-256 73f08fc057369a9622f5de97af5cee427534124f34706f9289bb565e60157d6f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 9163db285dd1cc6b63a82b0d894e20b529503b2ff5e0f11ee81f9e218bd2a5c3
MD5 59b754019ce46f349e867b177b3f4888
BLAKE2b-256 4ef03f2d2bbf72211cd81e05ddadf23ca66e021fb369b415f2a79036504b662e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 c489280d1c5ff99b11ae9c293b0b39ad8f604089562c6e20e6305c1fdcde5d4b
MD5 483182c39451cd9e3979bed1e05ffcc7
BLAKE2b-256 dfa2ea244ab3a52a70f0edb4258ba38f6e7e5b0fb8eff3b27823dc8059b0758a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 5446ff336834c7efbece8a0ea00a80cbda90e36d52890755df146e6c5b936bd9
MD5 58f729b47abecaadca2d44f2e9001374
BLAKE2b-256 e57b39a7d2390af58c96dbbb543d67424f729eaa691f8f3e541e72cde8817f68

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7642736e22cdc0c4fa3ed2f24cdc7c3b371d8d3735409d01bfdf8f69cc98d3b1
MD5 08837b72a3e99f5d9f76f1e1872ec72e
BLAKE2b-256 0f59e95484d305f4377cf1c32a4cc7892d86d21243978a9c97de95042783eee8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 e0a8c219a380d40a83673889c1c218d7f149b63106943622c6da7a58984d00da
MD5 5c90a1372a0b8619b4457cd1c11b64ce
BLAKE2b-256 a87756b1ac2f3ad462534180f5feaedce9ee4617be63b28ede7410280d082ad7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 686ef1e3f68f4276725b33dc4e3c0a8b86b44328c8c1b86fcb082af1c267601f
MD5 0fcc2ec6cacb67348f9d09d2e3784204
BLAKE2b-256 4da3254534883cbaf0c2db32f0b85f03778d193de50c838f4e325e613b1f7524

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.2-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 7f9be81bf8e57457ce7a83979a17d7590a4dba2b49d885b457872b905fdd89b8
MD5 42d4818f0834442d7c82a5dcce8b8b00
BLAKE2b-256 f3fe934bde08605e662b13ccb1e5ff9d699d5e8ca4873020f817e6eb52b9a72a

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