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.4.tar.gz (127.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.4-cp313-cp313-win_amd64.whl (343.1 kB view details)

Uploaded CPython 3.13Windows x86-64

whenever-0.8.4-cp313-cp313-win32.whl (348.5 kB view details)

Uploaded CPython 3.13Windows x86

whenever-0.8.4-cp313-cp313-musllinux_1_2_x86_64.whl (605.5 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

whenever-0.8.4-cp313-cp313-musllinux_1_2_i686.whl (653.3 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ i686

whenever-0.8.4-cp313-cp313-musllinux_1_2_armv7l.whl (716.8 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARMv7l

whenever-0.8.4-cp313-cp313-musllinux_1_2_aarch64.whl (595.9 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

whenever-0.8.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (433.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

whenever-0.8.4-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl (463.6 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ s390x

whenever-0.8.4-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (550.3 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ppc64le

whenever-0.8.4-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (453.3 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARMv7l

whenever-0.8.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (417.9 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

whenever-0.8.4-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl (481.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.5+ i686

whenever-0.8.4-cp313-cp313-macosx_11_0_arm64.whl (389.9 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

whenever-0.8.4-cp313-cp313-macosx_10_12_x86_64.whl (401.6 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

whenever-0.8.4-cp312-cp312-win_amd64.whl (343.1 kB view details)

Uploaded CPython 3.12Windows x86-64

whenever-0.8.4-cp312-cp312-win32.whl (348.3 kB view details)

Uploaded CPython 3.12Windows x86

whenever-0.8.4-cp312-cp312-musllinux_1_2_x86_64.whl (604.5 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

whenever-0.8.4-cp312-cp312-musllinux_1_2_i686.whl (654.1 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ i686

whenever-0.8.4-cp312-cp312-musllinux_1_2_armv7l.whl (717.0 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARMv7l

whenever-0.8.4-cp312-cp312-musllinux_1_2_aarch64.whl (595.6 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

whenever-0.8.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (432.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

whenever-0.8.4-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl (463.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ s390x

whenever-0.8.4-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (550.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ppc64le

whenever-0.8.4-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (453.4 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARMv7l

whenever-0.8.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (417.7 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

whenever-0.8.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl (482.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.5+ i686

whenever-0.8.4-cp312-cp312-macosx_11_0_arm64.whl (389.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

whenever-0.8.4-cp312-cp312-macosx_10_12_x86_64.whl (400.9 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

whenever-0.8.4-cp311-cp311-win_amd64.whl (341.3 kB view details)

Uploaded CPython 3.11Windows x86-64

whenever-0.8.4-cp311-cp311-win32.whl (347.8 kB view details)

Uploaded CPython 3.11Windows x86

whenever-0.8.4-cp311-cp311-musllinux_1_2_x86_64.whl (604.8 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

whenever-0.8.4-cp311-cp311-musllinux_1_2_i686.whl (651.3 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ i686

whenever-0.8.4-cp311-cp311-musllinux_1_2_armv7l.whl (717.8 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARMv7l

whenever-0.8.4-cp311-cp311-musllinux_1_2_aarch64.whl (596.9 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

whenever-0.8.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (433.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

whenever-0.8.4-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl (464.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ s390x

whenever-0.8.4-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (550.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ppc64le

whenever-0.8.4-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (454.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARMv7l

whenever-0.8.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (419.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

whenever-0.8.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl (480.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.5+ i686

whenever-0.8.4-cp311-cp311-macosx_11_0_arm64.whl (391.4 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

whenever-0.8.4-cp311-cp311-macosx_10_12_x86_64.whl (400.5 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

whenever-0.8.4-cp310-cp310-win_amd64.whl (341.3 kB view details)

Uploaded CPython 3.10Windows x86-64

whenever-0.8.4-cp310-cp310-win32.whl (347.8 kB view details)

Uploaded CPython 3.10Windows x86

whenever-0.8.4-cp310-cp310-musllinux_1_2_x86_64.whl (604.8 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

whenever-0.8.4-cp310-cp310-musllinux_1_2_i686.whl (651.3 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ i686

whenever-0.8.4-cp310-cp310-musllinux_1_2_armv7l.whl (717.8 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARMv7l

whenever-0.8.4-cp310-cp310-musllinux_1_2_aarch64.whl (596.9 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

whenever-0.8.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (433.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

whenever-0.8.4-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl (464.7 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ s390x

whenever-0.8.4-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (550.3 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ppc64le

whenever-0.8.4-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (454.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARMv7l

whenever-0.8.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (419.0 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

whenever-0.8.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl (480.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.5+ i686

whenever-0.8.4-cp310-cp310-macosx_11_0_arm64.whl (391.4 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

whenever-0.8.4-cp310-cp310-macosx_10_12_x86_64.whl (400.5 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

whenever-0.8.4-cp39-cp39-win_amd64.whl (341.6 kB view details)

Uploaded CPython 3.9Windows x86-64

whenever-0.8.4-cp39-cp39-win32.whl (347.8 kB view details)

Uploaded CPython 3.9Windows x86

whenever-0.8.4-cp39-cp39-musllinux_1_2_x86_64.whl (604.9 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

whenever-0.8.4-cp39-cp39-musllinux_1_2_i686.whl (651.6 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ i686

whenever-0.8.4-cp39-cp39-musllinux_1_2_armv7l.whl (717.3 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARMv7l

whenever-0.8.4-cp39-cp39-musllinux_1_2_aarch64.whl (597.3 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARM64

whenever-0.8.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (433.2 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

whenever-0.8.4-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl (464.5 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ s390x

whenever-0.8.4-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (550.6 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ppc64le

whenever-0.8.4-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (453.7 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARMv7l

whenever-0.8.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (419.3 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

whenever-0.8.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl (480.6 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.5+ i686

whenever-0.8.4-cp39-cp39-macosx_11_0_arm64.whl (391.7 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

whenever-0.8.4-cp39-cp39-macosx_10_12_x86_64.whl (400.4 kB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

File details

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

File metadata

  • Download URL: whenever-0.8.4.tar.gz
  • Upload date:
  • Size: 127.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.4.tar.gz
Algorithm Hash digest
SHA256 701f1fa558c6ea8fc4cb467d75ceddf1fb5964122235df20caf64a9ab7110b9d
MD5 dc82095232a4be8aa0dbffbb54cbb6be
BLAKE2b-256 791ccabe4fc012ff02515766653ffb3cf312ced3124c515eaf4795be5534d634

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.4-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 343.1 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.4-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 399ceef297f17ab342b63a0b46d2de26e63952ce3df97729429f90dd58627494
MD5 c904f4ae191ae8dc48dbdc915e0c804f
BLAKE2b-256 a0aaf51371f4bcd695c8973aa0217da75b649237ad80c11a743e9769a9eef4bb

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.4-cp313-cp313-win32.whl
  • Upload date:
  • Size: 348.5 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.4-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 c51c440298bcc028f4af00dc6a6bfcb4165e2723916c0d48ef19c2f8c75317a8
MD5 f543db7f3934a753094334b6abb45ff6
BLAKE2b-256 6494c5364a2deafdfa165099a91846418bf93547458aeb0448a68f8d32c6a610

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8a14affc05dfc47783a4594366475215adc3f832dd091147d0f4fa8ec1abfdcd
MD5 6ae6d73dcf6be705e6fa2e8194fca5ed
BLAKE2b-256 9043cb3921c64d28948ce001ce4bdf6daa7dd366928240a6f730b8b96dd90778

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp313-cp313-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 c6fca292e884ff6a19b7e3d0c913e7df39cc8dc98c97c5c3e20cb551167666ca
MD5 036d85016fbd606434716804f1abbdcf
BLAKE2b-256 8007c2c450a5321d7fb5dca8313a850fef247adef41a30710ddd3a53c1a7143c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp313-cp313-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 eca11d3f8715251e9d4ec05e364d762a8035e846c28bd4847bac14f6cc5a532c
MD5 fa2919fac7730af5bf90f719f76d74f6
BLAKE2b-256 4c28ad596a82cc0dc2dad16d933cbe134331331a3a0a022379c703073a2100af

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 b25f4482bfa12f11bcb28f88d3840f811fdeb6a3cc830e525735cb5963efe490
MD5 7ac7773254e691dcac1ebb55af827450
BLAKE2b-256 548e485c8458a3aa889de9ef6e7f1daffc6b3deb74a1045ebaee4945cb35b36b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 63c8a13b4075642aaaa1b3f082a17fc9340f1bacfad0a8a2d41d4faa14cea215
MD5 917159efc312136b96af9c0404f67b45
BLAKE2b-256 341bfbf301830617a8e9a229419d0d802778e30daec1dbcb02eafe37505e90e6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 18f76ace2871f51431a7bc20a659551056aba553788c5f2588af45f51998106e
MD5 167e20a5c4c5d08065339bc3cabdb754
BLAKE2b-256 e51821ad98a1b1523af84709f7e62e5ee342b905992f26b93986d6afc53669b0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 5704bca1c893aa8903adb8f49bac38eb211b121e1998054587a211d3270c289a
MD5 d034ef54bf79c5035f922d9a2b28bf71
BLAKE2b-256 49a33c1017935654cb2047cfc0b6f9a79c776eeaf1c9dba2e5ca586d0c31a95e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 45abcaf5f998706c4f40c872a652ccf94160d136fbdd9c7d8e62c590e0798088
MD5 8ad461b9512fbd6d07e5fcf532a1e810
BLAKE2b-256 4c8a05d5a7a5d0923f50a1770dfa51b76c10bf1a81436846db0345078c16c37f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f3126f284c7181a853b04f34d26343e5f75144500d09b0e57887931dfacbc2c7
MD5 f27279d05041528a29ccfae08799bbeb
BLAKE2b-256 73f1d4124c4c6d0b7375c5db4d1e9ebbd98aaf7a6158fbcbd8617429d997e78b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 48d8b97b3d510ce8f1be6f96c7932a55dd92983135a2c72fd9c2ae3057bb147f
MD5 0de26a8b88dbc895f918d6dc46e3f59e
BLAKE2b-256 8de54dbd9e2e6ad950a5fef35719f6c3f29f2113511ca45c3fa88e058e14303b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 13b26328cbca3b1bf8d9aaffb7d54371e2cbdc85d3aed8bb7110726e4752952e
MD5 97a796f1ce9b15332e29b2fa1a9c7d8c
BLAKE2b-256 6462a6a6a00bcadf4a7799a220be5ba653e058651438de0296376fae045c9c07

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 628c0584c11c81b396b9850ff1c01588be64f6ca212135663950481fe3da2715
MD5 0334caa2762dbc7b6ff19cb8ea50fcfc
BLAKE2b-256 9293dbefe2c73cde75e447933a6cc549c8c751811b8344ad140273230a79b6ae

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.4-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 343.1 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.4-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 ccbb06371b9d90af9283afc51aa2708b65ed91ed7ceaa1f6a8f17d5c1aa14909
MD5 23926bdc3c0f76b8c48f30bfd3726fdb
BLAKE2b-256 c5971083573f271e851084c45080084762caad50cd9c5f945abf39e9123434b2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.4-cp312-cp312-win32.whl
  • Upload date:
  • Size: 348.3 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.4-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 f90e6eeb95d7b4ae3582c58a19b460ba21a9ab7e4f520f7efc85266d331cd576
MD5 57fd1588cce54c28218884f9d2b3ec72
BLAKE2b-256 e872ca22b102b16e09e5f7b2925bf5eade6ffc3356bee1378fb3ce36517a71b6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ae3a71192fac167036ea2bd5ee8c0428444acffb252c92932f897e717bb29191
MD5 7b407a53bf8659925c65673033789773
BLAKE2b-256 799831d133733090d2b3ab1c715fe456b04e513dd377658f78336a9d503f2a57

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp312-cp312-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 f24a4b53fc2ede16b59569e69fd3e0cfbb7792afb1f842c8b73fe22a8f749446
MD5 93e15a9973e85172d3ab08b379a47635
BLAKE2b-256 617cf4a58fb385ff14317811feed3aef595eb16ce4ef96c83812ce8c2e41d292

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp312-cp312-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 fef27d3a33f4136d101da6536cbd9c6e900647569b9ab5b137c459424541f19e
MD5 66722312b04203e1b34cfdf22e9bfb86
BLAKE2b-256 1669be48aa91f546e274cfccb278b359eca5de3dff4aedd6115c4eb536530930

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 1b581ae005ebe5a09a781a23010d9f7f407ba91bdd2532ee4f3e6a18ac778fbc
MD5 284724ba03bdb314ace44d1a008d13d0
BLAKE2b-256 049300e15e25e37003d89f30c5626cc080af4d8bdb8f3667be2907266b80afa3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f367acc64d9c5e58ca938968baa8c862b14ddf5e4a95b632faf6429ce0852c37
MD5 6a396f198cd367964533b32f2461deba
BLAKE2b-256 5ac7835e5d15b3a396dbee15deb551a440b906defbce89d1eaeb8d944067a59c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 b1b947b15db5390b8d60a8b07ed67c94df5a2a5af8b7b98bfa058068f614bb99
MD5 147bc364d67b71d9bcdb1a2b64b62f9c
BLAKE2b-256 52c7b141b248a4fb154c6afc3b652bccc9d916a3df9c936c185fbdaa51a4330d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 5e5ce6d8a94f671eb195bbbb8e1eec1a51c8b6c47a8d7257e3bab89e136037f8
MD5 92f1c08112a5495164606de511f0ad76
BLAKE2b-256 77c3009b3194d5486430c3d37f69ea5dcc845da7668ba85d0ff2cdc3cd1bc31b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 a8d55bf87fc816f43742d3429914e0734780d1ed9af4de22ab788c5b88e6f609
MD5 e825492642780eda565014cb563370f2
BLAKE2b-256 f259d237a97e6cc9c31a3995498352fd38ec5381519b8098b74d76c5e199bcd9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 96cd0365b0ebf7bb2e8b293218e491a866120489e2bcb3b6602e3d58242578e4
MD5 9eb07f939d71c401decf94d59aea382a
BLAKE2b-256 11dff6bdf9b0bd67960ad68de6b4675f18d319e074f4efcff7a860e7e4f4a127

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 5f800f772d056893ca1a814dd840d49ca449130f46b626d2bc38bb148d48b03b
MD5 cdc827880361de704ef3f718925c6a0e
BLAKE2b-256 72df41279d202ca21f15a1685f15349eb95cea73ee15cde633fc2da91d9504f9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 391644d6f93a21e821a79ba73caf6d311e62ae1066c627a9346cc442d5e219ed
MD5 5035fcf4a4c106a70ce7390c25b7ce11
BLAKE2b-256 7b6c65cf02eca52d1f2321f63d5bc97971a1f26ea4b56f5bd83f86dad1ba952a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ddfd252cd67a9d96155459e29a65b6ac3232658d0adb98caf6148b546e94b08d
MD5 0ee493472729eced79f8488df308b49e
BLAKE2b-256 9a2219c514ab84d0d23af689115c4036f93cf4e416d16a33bef3d41b8827fb3e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.4-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 341.3 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.4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 39fa052eb6e3b5a0e6e678e5fc320228b6a8bc65b9f42c1a6c7e1bfe271ed63d
MD5 7fc651a46e61df37a518ab99c258aa93
BLAKE2b-256 bad889e3ca6fb0f4bc449b1614ebb3e39aab7a5949b774481c59453961970067

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.4-cp311-cp311-win32.whl
  • Upload date:
  • Size: 347.8 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.4-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 87cd10e1507961ff311301d86268464835cfa19a5c0b232374bbc39692972216
MD5 e3781958e1c126504e57d138d2eacb86
BLAKE2b-256 f5c70ad1730477a3526fd7b46d0e1e76dc2380552d53658568da6ab4b0eef175

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 16bb3a6d9cab93dd62bfa58b909193b0ffd929d065877f3c36ec961397175265
MD5 a0ec79544edc77fc9a45e0fc4f68e24d
BLAKE2b-256 8268a71ae509456d541b57f063f6309ee29c5ac176710746313cac02382f0a6e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp311-cp311-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 b92c7f71f7974f507a3c527da3f803d95c35e8a9971491e92f29fbdfe659b710
MD5 9e266444dfff3400d9e27505707dbb97
BLAKE2b-256 1ac12457540af28a4ea1f1006e798c412a14f69570d1ebf669e73bf004286450

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp311-cp311-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 b2fcc0ed53a8ce6153b690d9693640792ed631397ece899e4b626675d42eb93f
MD5 2f403d5b38d6b09ef4dc67150208e723
BLAKE2b-256 ab446e2cacafb227f48f090506a389b02aed6036126524e4bdd964f8d501e410

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6c87ecaace9418428446fdac5f9dd8bd4b61fd91ecc3c331344c96279f809711
MD5 340468c64dda4b34ae5ed26d00b996c3
BLAKE2b-256 57db13ef0cd7f1a07ceb42adb147f842d805d5522d653d25b2f12d006ccddad3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 17da1f98aaa4305d42cbd474ae802b9e7758bc0b4a8335a1a2d2d0ea738dcb61
MD5 f2b043639e5a71d2e1d154b180e28218
BLAKE2b-256 b29d7002ef38939b8fa896885af2335fa964159bd9ad8e0187ef8c1cdc07f7f2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 836962b775f033e7213ce3638bc3b7ed55fcf3cd236e67bcac109dd55fac73c9
MD5 92e56993e166acba10ec10e91046f698
BLAKE2b-256 535dbfe0590587001d7980a24dfd9952dbea695269f8f22dc169ff5bd7e65d52

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 81a14490f473a057e665b3805c575801e3d2cc9ad682976303c3bdbca150cb20
MD5 1f9d0556f1aa9cbfbdd468302d22c2af
BLAKE2b-256 216efa9c3fe94add26ef4ca28ef06539cc68b8d1becb517221c204bcf6c84b63

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 c2a745803e06e0255763dedd8f97a6f18670799d5c25b5a12d7c60e15f279613
MD5 032419bde5c707651bc7c26fb533d648
BLAKE2b-256 43b52c131a482463241f8189ad08f72bc76f8cc215a9cac3caff7615e6030c92

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 966831ed990694ef15d8f5d64b955c3f0668eaeffbf0419b628548e50b40f1d2
MD5 6b38c14c4193c8dd792553c2795c253d
BLAKE2b-256 aa30965dc21bb3516113e9142c3b9f67ad10accc8d4fa0620558ebd16a64e067

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 e59976efc68045432083d328bcc5371766980c7d2754daa3366d95475b70f432
MD5 2de08d8444227f9025417e3e10a8f9b7
BLAKE2b-256 dd4289a80166111c860bd963519df2c2b145d3ee72d72f2d44ff022fc26dc81c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9d570e2474d72d3187b57784feeccaa653f5d16476f405517d787d6948023f5d
MD5 f5208653c45c380c1f04efff89d023b2
BLAKE2b-256 e7878e6dc4a0959f946bcaa1c44dba49c11312552e13f8b54a078a3c2bc581c4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 629ca1f52a73a8681de1f4cd856ca93d772a215a60d9c2003b0003580b065bb1
MD5 a9deaf69b9a07d9cdc39c557f6427b9e
BLAKE2b-256 0d774bbd5dcde72c68d6e1891f898a8e175f6fb940776d7001422381c10af052

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.4-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 341.3 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.4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 7df95687c79a79b55ee81659f6746a6011f8a66b43fe4eeca80ca1aad9720078
MD5 5fea21c0e31ba0005b6326a03118d567
BLAKE2b-256 93381102fb2aaa6aaee4cbb50487d95d8b121de172d13d09276fc2ef30775826

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.4-cp310-cp310-win32.whl
  • Upload date:
  • Size: 347.8 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.4-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 808ac2239015a0ea1f637df6d8a8579bef66c644cc5bc7d3c78ce60a2da0cb39
MD5 6f614b41416299a050c0ce30332e7130
BLAKE2b-256 512c0ce8431ac721cc6f99a31006c01c9a72fc9bc599b301b4d6e3585e30df51

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c556405fe22258c24cfbf92592b7764f6525d6f3974da2d15798b1eb033cddd6
MD5 ee662c00bedff536938ee754659d519d
BLAKE2b-256 6b2d527d359b1e29c33a7eee8254845779fcd00ccd9a884b02398878e58531d9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp310-cp310-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 2adce664733e8c82b84a3ccd6553a0704d655688fd539fecbc911f8939d6a3f5
MD5 0f678282f9992901045f16a5415ded5f
BLAKE2b-256 cdaeb9da35771996a6209d19456fa115048ba24c72107147b75ba0730b645471

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp310-cp310-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 d14553f0cf260abc75a2577dad0f4b622aecad3c39cf988730136a12e83e6109
MD5 df4a4bb47f8d5c89b0608f1ea27af344
BLAKE2b-256 232cd56575de9444c70814f60fce4e2080c8ee3a78d2d4123ab49ccac82c24cd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 f3811d243167854863ab71b16f35739487cc6249b73b6bfe711f0833a5f25686
MD5 4ba9980f4e26d2ffe2ad3c1145225074
BLAKE2b-256 0428e0eba1aeef2edbfc10072d351fe3f936ec6ef46f2b7934f95fad4a1fcb7f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 99affb0780f7f60777d29d4c88035f70f02ce8d712fb983be153ebab8d88bd77
MD5 c69a3ec600dbed5c18a6510d7dd98715
BLAKE2b-256 02d3b4f8479b45484a0211ff46256f7bb7b5f5c42654d2a93f6b1a15d6b80132

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 779645fad8e60cce8380f7bc98f2223a38c3923857e719ef3098a912ea28d054
MD5 950511cde5900d8c95d4d5fdb8f0c9a2
BLAKE2b-256 05768db54c19937c888722d30dd9f88b79f1c11ada3f59b8b8b1cbe56c50c1b5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 da8935e32cc7d170806d941b0d92a37458d0a25fd4dbda9db45f97289bbc1e82
MD5 d50550d12a731d4d28ebeca748223b9f
BLAKE2b-256 d519408c0b19400b2eb46d45bfc13c6636a3004a60261fdbb15b28ab5cd207b5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 befd51d8710603e22e3807f29892d7df16646786bc5d6adfbfe1f715ee01fd97
MD5 4b0a286bf2a56b953ea1f834efa36a23
BLAKE2b-256 9827b79436ba0561d633c597f21aebef222c7383a6a6afbd9d1f8dceded79cf9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7bf6dd3caaceed6766cd42adeef2f224a182c3d54f0de375e2ffb7a4833bec10
MD5 8f0fa17a586c86d14b0e5eb27ac273ba
BLAKE2b-256 a165fa072e5297624c6627638f6a93980fdb8a4526407780136816185461d43f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 19354410034844e6ba94a120eea2dae6050c432d2d4e1b338cc7e8ec76c6c9a2
MD5 e74105a0a0d57bc0d35066443a09173e
BLAKE2b-256 b238479458a6c38a03836738343eb30bebf4d85837e537578658ed21595601da

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3010ed1a307d33cfae4c8153f432459164424ee115e5928f75de551eab30fb6b
MD5 015ae188539ca348b1227a450345670d
BLAKE2b-256 72d618c9a0c530f142b09a64621541e9e3f16751ff50b42cc5eedd880accf9eb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 32ba28c4d62dc61f57346a000d84ecdf8966dfe03e77437a51329b47483dfc62
MD5 5d92bcf8113b54ff22e0193108a49b50
BLAKE2b-256 27b27dae6e3bf6a66901801b7ab61aba1188931d240ceb1eaa92b5752ed3c91b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.4-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 341.6 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.4-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 b470d67f14035fa049d24aba26bd48a3c2cdf31315fc7fafcb7cf1e057679656
MD5 ff61368f38a325479bec6745efc57b34
BLAKE2b-256 951ec35165c3728bba2c028ff1b8831fe3805c138cb9d6a3526540a2d9e5fd85

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.4-cp39-cp39-win32.whl
  • Upload date:
  • Size: 347.8 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.4-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 12ff70c0c900bfed620d6e9dc2a39ebb80037f114f4454191bb6e45ea06600e3
MD5 047d13afed67b33a86eb9199f957fe7c
BLAKE2b-256 f54f28d6865f094fba3bfc11b701f141b753cf70ce431fc9f998012573f62cb8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2e0dd53bec5361ac013eee2b3078a37c43b46d3dabeecbf1926fd55c780d8e21
MD5 a1daf4812271ae26a3078d2dbe255aa1
BLAKE2b-256 facfa133f025cb2514526a3f395678baa0534f8e19e0d7ef652186b9b931ec9d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp39-cp39-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 4f52f1a93acc73d2a087fe14a59bd7219ef3f8c940a018194c0e5e9f027370e5
MD5 dccdeffa037346ca79b97de0c1ff255b
BLAKE2b-256 70dd9d279dcc4bb51ef4449f70c20e59a29d41b8862133cf15479d067f0ba530

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp39-cp39-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 0a191330229e7bcd79eca53f75d3ddf02e9d9f444ae94120d05f0a61dd0054ca
MD5 e3e960f6b19af3dafd93454b335404e7
BLAKE2b-256 eccc3ea5c85a7540282e408cc17ac92711df98dc5d5b4ffb953a38fb79b29764

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp39-cp39-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 1b9c494d9055ac3549fe562f98014895cab7c75168031a377e68bc7451c813d9
MD5 1420a7685875f3034601c4b5cc2a744a
BLAKE2b-256 c1b85a178f5282ed72ee9e3ffb545fb514081d18cbf83718a7ca5013e9e176fa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b6b837d73da819bc9225061bb279ba12e334331f831f17d11982d5c2f6aca8c1
MD5 f522801c8a6918c01df728759d9ac0e4
BLAKE2b-256 50d87bc537c6abda499f0b29b0af3337a53f401b950417ef3dd7009f13abf948

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 d80f3804a7f341a094a333da12d7bb006c596c083c462de77deddd1c378a3aff
MD5 cc59f3323e6eb4f96c4e973b30509c61
BLAKE2b-256 aacfb3dbc709ad18ba099f4f78ae74143494d9d6385d7bff91e0a10523427422

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 e6d5f12749c40b3a5eaa0742efc90017bf07ffd377634115a8dcdc600e3bc14e
MD5 6fd135a2fa68bebf30babd6eac3215de
BLAKE2b-256 92c0cafb67cd09ed001f29c2ae0a8587a2c42e49c45d75dd6d6ecb3c6e1578ab

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 1f6305c2c700817f2fba8b3d8964583d525542b7fac5b6a5b3f088a7ad255e3f
MD5 e2dcd95b988f0da0d0981382a0ce362a
BLAKE2b-256 302cd208a2e161be8076bc02a15c6049f792d08b6dd237f6394a1c7cdf08ecdd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6592efeb51a6e95c9d74427eb109041195ee0c98247e00154e87711ecd25d2b9
MD5 7d226a19b2e03816c956ebdc5fe27a19
BLAKE2b-256 33fbea62c9637c91ad4613a02403ec7f599be327743525bb23c8012f9820a0af

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 81c0377d2712ebebe3fba7c3f58dd07a4923e83c16a554d4700719eb03045911
MD5 e0a7a994e34724ccb0d5e416ca411245
BLAKE2b-256 87eea39b7770ffd370456dc35948851bb963ac89758cb82e0dffc0d3be261e6f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 560aeef1a777be8eb3c104426835276405374b1545afc204af62c824266bd126
MD5 a321f0d0f1d0bc7b905168921e4715e0
BLAKE2b-256 28f91e6c6d759dc9056915b3c7677d1f2aa4518bef2f1a889ad05ab4be6385f4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.4-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 7cf7aa9c9dc0059531c6cedee69e45679a0e7599776566dc11b2f8a8d963b560
MD5 146199039921fcce76141e1ff53ccdca
BLAKE2b-256 7e3c593c1490679c45c6c9885bfbe5764a8e9867c73725812be78c47f0e5cdcd

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