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.3.tar.gz (126.7 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.3-cp313-cp313-win_amd64.whl (342.6 kB view details)

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13Windows x86

whenever-0.8.3-cp313-cp313-musllinux_1_2_x86_64.whl (605.3 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

whenever-0.8.3-cp313-cp313-musllinux_1_2_i686.whl (653.1 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ i686

whenever-0.8.3-cp313-cp313-musllinux_1_2_armv7l.whl (716.7 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARMv7l

whenever-0.8.3-cp313-cp313-musllinux_1_2_aarch64.whl (595.7 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

whenever-0.8.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (433.7 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

whenever-0.8.3-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl (463.4 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ s390x

whenever-0.8.3-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (550.1 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ppc64le

whenever-0.8.3-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (453.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARMv7l

whenever-0.8.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (417.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

whenever-0.8.3-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl (481.4 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.5+ i686

whenever-0.8.3-cp313-cp313-macosx_11_0_arm64.whl (389.8 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

whenever-0.8.3-cp313-cp313-macosx_10_12_x86_64.whl (401.5 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

whenever-0.8.3-cp312-cp312-win_amd64.whl (342.6 kB view details)

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12Windows x86

whenever-0.8.3-cp312-cp312-musllinux_1_2_x86_64.whl (604.3 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

whenever-0.8.3-cp312-cp312-musllinux_1_2_i686.whl (654.0 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ i686

whenever-0.8.3-cp312-cp312-musllinux_1_2_armv7l.whl (716.9 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARMv7l

whenever-0.8.3-cp312-cp312-musllinux_1_2_aarch64.whl (595.5 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

whenever-0.8.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (432.7 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

whenever-0.8.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl (463.1 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ s390x

whenever-0.8.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (550.1 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ppc64le

whenever-0.8.3-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (453.3 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARMv7l

whenever-0.8.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (417.6 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

whenever-0.8.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl (482.4 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.5+ i686

whenever-0.8.3-cp312-cp312-macosx_11_0_arm64.whl (389.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

whenever-0.8.3-cp312-cp312-macosx_10_12_x86_64.whl (400.8 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

whenever-0.8.3-cp311-cp311-win_amd64.whl (340.9 kB view details)

Uploaded CPython 3.11Windows x86-64

whenever-0.8.3-cp311-cp311-win32.whl (347.7 kB view details)

Uploaded CPython 3.11Windows x86

whenever-0.8.3-cp311-cp311-musllinux_1_2_x86_64.whl (604.7 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

whenever-0.8.3-cp311-cp311-musllinux_1_2_i686.whl (651.2 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ i686

whenever-0.8.3-cp311-cp311-musllinux_1_2_armv7l.whl (717.7 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARMv7l

whenever-0.8.3-cp311-cp311-musllinux_1_2_aarch64.whl (596.8 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

whenever-0.8.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (433.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

whenever-0.8.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl (464.6 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ s390x

whenever-0.8.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (550.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ppc64le

whenever-0.8.3-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (454.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARMv7l

whenever-0.8.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (418.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

whenever-0.8.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl (480.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.5+ i686

whenever-0.8.3-cp311-cp311-macosx_11_0_arm64.whl (391.3 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

whenever-0.8.3-cp311-cp311-macosx_10_12_x86_64.whl (400.3 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

whenever-0.8.3-cp310-cp310-win_amd64.whl (340.9 kB view details)

Uploaded CPython 3.10Windows x86-64

whenever-0.8.3-cp310-cp310-win32.whl (347.7 kB view details)

Uploaded CPython 3.10Windows x86

whenever-0.8.3-cp310-cp310-musllinux_1_2_x86_64.whl (604.7 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

whenever-0.8.3-cp310-cp310-musllinux_1_2_i686.whl (651.2 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ i686

whenever-0.8.3-cp310-cp310-musllinux_1_2_armv7l.whl (717.7 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARMv7l

whenever-0.8.3-cp310-cp310-musllinux_1_2_aarch64.whl (596.8 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

whenever-0.8.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (433.0 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

whenever-0.8.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl (464.6 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ s390x

whenever-0.8.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (550.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ppc64le

whenever-0.8.3-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (454.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARMv7l

whenever-0.8.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (418.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

whenever-0.8.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl (480.0 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.5+ i686

whenever-0.8.3-cp310-cp310-macosx_11_0_arm64.whl (391.3 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

whenever-0.8.3-cp310-cp310-macosx_10_12_x86_64.whl (400.3 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

whenever-0.8.3-cp39-cp39-win_amd64.whl (341.4 kB view details)

Uploaded CPython 3.9Windows x86-64

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

Uploaded CPython 3.9Windows x86

whenever-0.8.3-cp39-cp39-musllinux_1_2_x86_64.whl (604.8 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

whenever-0.8.3-cp39-cp39-musllinux_1_2_i686.whl (651.5 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ i686

whenever-0.8.3-cp39-cp39-musllinux_1_2_armv7l.whl (717.1 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARMv7l

whenever-0.8.3-cp39-cp39-musllinux_1_2_aarch64.whl (597.1 kB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARM64

whenever-0.8.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (433.0 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

whenever-0.8.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl (464.4 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ s390x

whenever-0.8.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (550.4 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ppc64le

whenever-0.8.3-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (453.6 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARMv7l

whenever-0.8.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (419.2 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

whenever-0.8.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl (480.3 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.5+ i686

whenever-0.8.3-cp39-cp39-macosx_11_0_arm64.whl (391.6 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

whenever-0.8.3-cp39-cp39-macosx_10_12_x86_64.whl (400.3 kB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

File details

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

File metadata

  • Download URL: whenever-0.8.3.tar.gz
  • Upload date:
  • Size: 126.7 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.3.tar.gz
Algorithm Hash digest
SHA256 ae9266f1180c21b4a87094727d1366ef08af5bc27fd9d4fa9b12e922eab438d6
MD5 828327fd83134820d57b194cf2334314
BLAKE2b-256 99d2387ca7a240af7366b0179de7c0446b0a2692f2de9cee00599a02e728047d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.3-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 342.6 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.3-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 209de7dcb2e429decd4ad1a8238a46bd9d36bfa21a754dedb65dc75e77cad8e3
MD5 1971b0c4e15f5915091b0c22461112fd
BLAKE2b-256 e237a61fd822efafa6712aaccce5c7c9bb4964671e3797061c957c27825d8205

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.3-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.3-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 0615ef0db5c443f718140c74b3826b57cc42191396dd8154cc7685fd9e9f8e50
MD5 05169d7e9784fd72aea0d8f42dd87d6d
BLAKE2b-256 9160a0874f4d94fd6289b5f9441e8685f85c6813c55697367da7ba007c192619

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 83c30b966624ecde78afc9a81b04a45c112335a348b69ec6503ed28dd78581b5
MD5 15a77fca425b20ee7e945e1460867ed8
BLAKE2b-256 f092b89b4e0f984e3ebcbaae66a295a1f4de03182db0236e6edcb2da0cad0a74

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp313-cp313-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 8f337f7ce650309dc8463c9af26211769285fb2ddacf3e424e71bd15fe5d2f91
MD5 61db7a9c4c9265ae02ab1361fa1cf1b5
BLAKE2b-256 7b36eef45fdd574b83737e5662c6e257e06207ed0a53a2174629123bd541bf03

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp313-cp313-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 d4f2b15c309b4f3dc4478417ea0ac01713f8e215f0f3c6f4402f1ffa70defecc
MD5 4805b88e362ab2dde3d55848c67ea474
BLAKE2b-256 7782e1e5274ce4942c1bef5a1eadd6f1034c1c6fd10c61612db168a4f1e429ec

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 ef5774d345cbbf0a0d2bb9d91e6f1d07e8eec44f82a054e73464b3fbfaa3f1e0
MD5 2c5240c9533f0b3eee788a638cd08921
BLAKE2b-256 5241d8c43c2baa767fd059cc1ef6d35845e5769152fa14ed018e6ede34e060b1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 397ac3a2f511552b3c44cab496fdbfb1d5f9f506428ddc602bfdfa5f1753e50f
MD5 797d56302f81bd3e76839f8fafae725e
BLAKE2b-256 0bbdbdedb4afe22b649a7f0bc6a472498c1de47245fb68de952cde022d0f252b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 10ac209e8d3b4150ecc6a48da672ab08d1039de1d442be26ece8bebc4a2c3313
MD5 a3f412066ceb01fb0ced4f6456d8d80f
BLAKE2b-256 95e9cf25661bd1ac24f9127ddbca9d0adfb73a1e019543796f37a50afd18e971

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 ab8652dcc1398b46eea3517ad056ac002eaa0610207d42ce69d6d460b1a8fad4
MD5 c9bfa9fc9fb8c2c09c904378b55a09f1
BLAKE2b-256 2ee344da75699f7d13f3ace49bba91cb57749fa7c01d98f126fa44377c66f44f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 765dbb1a172d78936416934c664cfa83e01cfd21f9a13a35543a6ee4afd92599
MD5 c756c3502978e0585a1f90c6c72dbbd4
BLAKE2b-256 000c649f42397f6bde40f2556e25d48b9d28041d4e30182b5700edfb427a0ee1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5477f71184db2cf0be9c9adf8080f52241ba60183804b6e437807b70abaa6362
MD5 4ab1785b1362b40bece8806283b1c02a
BLAKE2b-256 dec93d0a31b0180d9e425c5ec58be7c245f4fa19677b728bf970e2e983195c95

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 17e0a440f905328dceeb06cbc6cb1bfc8e99eb53b4502dd630b276b37526a571
MD5 411d5c411535e2484a83a5afa551eaf2
BLAKE2b-256 110aa6bedf5236be99bb05cf753cd7a3a12364a5a68859246fdf0f2ec52f5cb8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 da4f45019adbfa27273ce22860d6eec9e006bd7e809df6f1ad9f094a6d169898
MD5 be2b99e57f1f49879835bf95ada5aed2
BLAKE2b-256 9e42075ef4e95dac0ddaf8cba1550d27d2b9f5342c2c5aa7db970d8dacff63e9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 dad6f7276b50f37ba05d2117fae655766a3bb90aee5d60250cec6f100f315760
MD5 2210e97a4c6f7489e5b620267e802199
BLAKE2b-256 422e09701261eba65787488a82844240224fc02fbb4e7784ca5e72c359f9128d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.3-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 342.6 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.3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 4788ba36c77e85d96cf424786a9093523d397a0f7b82ce343dbb9b3c60080fd7
MD5 588b2e903a06cf3a9a1505d2195daaa3
BLAKE2b-256 6f32b589089cb925e5f6c0822de71678f254e31a02cecb01ac58cc5351a5a7ce

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.3-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.3-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 adc48d578cb398792de35349a65eaad91107ee38f22b4f684e365b47a25fac43
MD5 58fa1b4c0ae4e4d0472134a3277dc64f
BLAKE2b-256 0f448824d20736f0515b9a925445db90d7cd9fb377a15bf20a08be81f8f5dc23

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 988bbc21590c7d34aa460106a76ecd7250a2b34ab08ae04ca0a5cd27e1bc38bc
MD5 3a66b6584c25cca4b096ad8a59116914
BLAKE2b-256 ccf0c227dd09f2a4a71e0c127f86db85926963f26f7ea505b859fc051ed19f28

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp312-cp312-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 66528a319c082766eae593320616572432d38ea76ab0fd08dec2ea6a9ddee7fd
MD5 a20ff26c5dd9384bc137222941180c06
BLAKE2b-256 f53a9a00db5a937685256e000ff9638f8596aa2de43e31f3b630b22d8a9992c2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp312-cp312-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 78e1c788bc8f4f1e0e531223bed62463ef1481492ef19dd3a137c02f2cd05c92
MD5 a464b69f823f42d16f19ef4a95ef303c
BLAKE2b-256 9abc01f7f3943d6984abf9f4ac0c929e71279803446bfbae0dc9c7620be6215b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d419d6880c3d0c1c930dc16a11bc0d209161be60e6ee0da22716405c0d950a0c
MD5 7a16eea1949b49ea2f362c150d1a670f
BLAKE2b-256 45061a527445817762b1fa29252c722269f5e66bbd300e3e952ee03d6fe547eb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1185c26f24b5198fc7b4954311477b4c99b74047fd2f837236f74f5e0c349ebf
MD5 5dc4fac938f93ffe19f22290e53c14a5
BLAKE2b-256 074dbc59dc7a2fe9468f503cd7f90e42a1a3abf185dc714ed68d265ee3839452

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 c90a76fdceda30dc2216873f87b65585d3af6ab5b6d67c8c22ef3398845fd04f
MD5 d76d8f32fd784fad5a0a80e79be74965
BLAKE2b-256 b53bdeae0979842cb7b5410473157e183a4ec76a1dda73e587a3c0885a998839

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 af4db7ce549c7c33fa61afec0664d1b1ea2eca66a40d0bf53b2406b381ad03c2
MD5 2186855ebe78af912a60b38f5f575663
BLAKE2b-256 bf9557eb86476c687bc5ff81ee3098cbf4fce598b3e5b702896487286de065d5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 dc55ff365ae039370cdf41ab799398491e1013d20be524c90819a4cb9c5caa50
MD5 179e406b04ee59997439a735ebc97594
BLAKE2b-256 994beaefc9a1f01132336c18a54aab2bccc552b9d5f8646473838e708da64f26

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4bf335d584a9138db819c2c35981568d28e0dc12257ccd6468db0963366f33f2
MD5 ba243c83b85c0c4819746a1c0ed2b91b
BLAKE2b-256 19c685e5c4f161902592728651d73de3cabc06949867b73c9498b96b56f4bcf5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 18d252c6eb081818dbba667931a2fecc058c0414105a81e4ba33b4c4b84a3c57
MD5 1e4868b7c940c7a95f12a8daf1b2d94c
BLAKE2b-256 9598e0fdd50353c9d057672f2e1b541e7d383755d2551bd307cd75182149cc70

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a9aefbb92ea0edefe8d53fd51e8d562f953fa04ff0d84760df5768da9b01a6fb
MD5 4aaf3849173f136c09c2cc6ce3b9ec17
BLAKE2b-256 95ce70ce529bbe626b27eabb2dd3627adc964cae350e2feb3fec542549d36848

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2ae66a783d19ff8ca8e4ee431c93494ea714c06e71bf24ba74de40ffd45b5b63
MD5 9277b15c36d41bc143b5fae616a9dd1c
BLAKE2b-256 7e0904f372dab834941b7b79625688921a8425c256425e73de500066f46d0dcd

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for whenever-0.8.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 f290339c137e8d4102e1c5dd5616fb7e18907177b50362eb5776cf76e5ab9b76
MD5 68326c2394d276d84586ec96d63f4ccb
BLAKE2b-256 88cd4796a79b1f287be21b7d4e7b94357d2eca285382ed162ab14cb315de360c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.3-cp311-cp311-win32.whl
  • Upload date:
  • Size: 347.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.3-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 415833f34abf596402dc2e218be7e46bc86f6ae564165cc2501c3a25588566c0
MD5 9e612626c05157d28446540068fa4a3d
BLAKE2b-256 3004f475ac3335016c67fbecbfc57889a32ad0cb36e213b74b7fb8e81a95e74d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 bad80b5827a31d8c73ca9692c9cf7238b64887ed3d40b5a5c2e68d8601553ec8
MD5 5af3cb9b6ad8dedabad033bf73ae990c
BLAKE2b-256 b8634b36dc36e5a73576fe34380643fca311c080e955e6cb25ce0d9acb0c033a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp311-cp311-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 13d60a096bfe3855791693b1ae74f80b0ead02d48e5b6107c4f219215233ae28
MD5 2076f5e8809b01b9db284cfb61a90008
BLAKE2b-256 e67d7b6d21b76ff5b375cc2782e84cf72784285d4b8d4dd2ebe610abc07010fb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp311-cp311-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 e2e07dd58ff2046715f3b07dcc07de286f655a6ffc0af3e302e722de92b36505
MD5 f0d6968f99d56830791ac4d7a13247e4
BLAKE2b-256 6d9e96489557bd9ad7b5f8661f3d067f5a9c1d2727fa948c32e6f54e504adf7e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 013f7c89c2ed4dc980d8176d58adb2789544c02c92079de0344b5cfbec166ef5
MD5 dd94dfacdc2f2cfc92a3772532ca5a29
BLAKE2b-256 4ad718a309cd664169823c2dd8dea9d8772eb6a748e5b120bc8e643b641ce7a4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6f7daea6aefc14cd3485ec147885b33e8d1bc16d39ac4aa867218138db5bc20d
MD5 ce8ff3c18e525d464b622e10802fd230
BLAKE2b-256 7f8da3f866a4aee8f7314683b2055022076b5db2939fa836c99c4772d294c4ac

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 b4854054d661ed27a98270f31de40f338023d52936ce283e2bcf5bd35e600248
MD5 8c8b1dd5ffb1a527252a4a142990245b
BLAKE2b-256 ffff86914155c973234b086aa7c9c69388558223a01e0871277ebfa7db50612c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 54eb3373c37823bcb52baf2479dfc5810c36fd8e26e1488f5bb525586995ae4d
MD5 1aff73e46c7d686b58e53ca0531a6cd5
BLAKE2b-256 806e44b510d8b7960226417637402d5e77d3ed06a008a4d52edae9d4d7bff6e2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 cfc12dd11706854efd5fb48e147010d2546ca10010663e974bdd2c4fbd8a97a6
MD5 47c9563bc14b727eb316e09f8fd980c1
BLAKE2b-256 1ddf5304a2c3f033c0cdbddc74b996d129e84b1293912d4aa0aca1f72274ce48

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9a681caa632c798362d0d0a33b9497688d9763cab0d7782cfac69a4825edf6dc
MD5 437807975d65b3a43e93a831650139db
BLAKE2b-256 b57ccf5eaaddc3459a218ef2bae424b1ad1da6f92eee1ed8dd640b359c0400a0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 dbbb0db09f9d352c23ea70e72db1dc0c3de2422479b871027fb6b404d31866b9
MD5 a7a2d9279e47a19a2cd5f6a40f56576c
BLAKE2b-256 2476c999e928eb486f41b398afa9cde865516c798dc500e6e156403e920750d7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4557738897b3dcd70835de66b797e357542aafd98e193053164e7f4490a50f92
MD5 367a337f4cbc4df9ad18556cf4aab381
BLAKE2b-256 cf98fb1a761d48830fee61837331adefa904bb16d48ee1904f0beb2514dc5085

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 3d3ef2408a6a6dedfd8de35b59dd4963c510b51e2cbf09bcb38252812a3363bc
MD5 0f749a1fa8ea2f784823547b003b070e
BLAKE2b-256 9026b3b860941d71a3030bb30a622a29868f49b7d9b83ba3a717407b6f6f36d4

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for whenever-0.8.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 8560a702f46c0aa0ae58dab60347f4ac3eb7089511f58957a0ec32bf10e3e254
MD5 24cdd577e344b6b248c2bf31580f1a49
BLAKE2b-256 f6782f32849fdd24526d2d6e9d140a39901761a796b2939e557cc97111db5379

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.3-cp310-cp310-win32.whl
  • Upload date:
  • Size: 347.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.3-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 3e2cae8c96db425629dcae4280cba33897cd3501d4aa6767443b00cb1c951b77
MD5 07e6cfff627c9058ab54822caef6fb97
BLAKE2b-256 31953e55c3a1d1bb437c6a4dd917e4df2f9abcd281b3c5a2f52e40218b3d60d6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8bb75d59d9ffab32df2ba799269d12f2783e92de4f75de0b0b2c0acdae657113
MD5 2b481a66a834220350fd77dcfd5da0e6
BLAKE2b-256 5a4fa47e0b766c31702db2150209805f7cdb43c99a0d2918b20ae17d2a9dcec8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp310-cp310-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 4ebfd77641460c3104795b14be4d8adf1d03d3a65945a471fc63a636c2d5b395
MD5 eeca2a79179eac75779893fccb1edc9b
BLAKE2b-256 5b8816c3a473405b726044c660bcb3aafd48fc316dbf57140eb541e4787a0afe

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp310-cp310-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 9ed5382e7f58a8ddef895145e499009dd7b75602c551a42a73cd41356088f218
MD5 ca6aefa3438682a1ca3fee70399b75d8
BLAKE2b-256 fe596b07ca110493e20daa6de5f43e09fe47b63c3ebfe2d7723675be692d0c28

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 b62f212a008642286241a2de4b6ebe8209c7a4711938e888820bb58018e65249
MD5 a9897c4aa93676bb31389cc05c6b0795
BLAKE2b-256 d81602e1b83e7bc1eac4287ba494c98f3f72cb1d2ed836dda0f4621b52735f26

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e14cc8dd9dbee71b64eb331d51f25fa569c05b5f35713a59a03e810b210a685d
MD5 113364ce70006ef8a0878e03341d603e
BLAKE2b-256 180df03cfd6985b6d27d0e9f3cc28924da012fa34af03c0b0a974e8613368435

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 ac77e1f6f3a0813b385553f0f18845c019a9abbef0d34bfff7a2a846ceab1e21
MD5 44ebf29a5b3142767f082086a9572489
BLAKE2b-256 b0ee19ce766a545afbd2eab02e00fce8e0daf704c3e86b312ae0f4ebb7df4931

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 7130e1359de3796e44fba98559370f9573b9c38507f70579ae5a4a6cfd6ea078
MD5 55736fc813d9d8d7ebcfc299588315ce
BLAKE2b-256 0d8f0aff611bc876420fa44ea8d3155e929b9d24d9cd5560e20c6e11ac874364

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 0cdf63a6de2c4659847976b025bf7a448bcfb2981c7ef690f697e965176c7284
MD5 4f25ac817029cf8c4c479549b92e10b2
BLAKE2b-256 6a5936b42b0ebc2bf4ebf43ab9a35ecc70b09af5d1a064897616eaf8a70366d6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3c01a44441efdd19e3ad79d8996e7b4565d6c388f19ad8f6f5f57cd0af579e51
MD5 b4f647c6481c4968435bea9f6f34493f
BLAKE2b-256 275d874e29703a78805bd00ce225a99ac0e16f31f7a65dd1336fd2ab28a8384c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 17e5374b50bd3b47144986640f67bb049d15449783cef9628844ab33c11a5e35
MD5 2f1c324eb46eda6c5c82f89c4c974854
BLAKE2b-256 a646a47c2ffa0da3a01791546396c627f9e925826e8c0b979d0299233ebae801

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ec12dc2057ddecd1d5c922410553d0b106f656ae0da6bccd87921ca4e0e0ed55
MD5 43346322e6c3382163d217587a5a642f
BLAKE2b-256 724692e3f74ce6fce8b1bfc289c7f7296abed2e5acdd3500dff5b1b967e722a9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 6227810aa6ae95d9cc4888ccc90f32c3f2d80805386eea1620e92074ae1041c8
MD5 19e91ce6317e1f7620c0e2d795cb391e
BLAKE2b-256 f99d896efc4fc6fa91b0ae67c72c5d518d4302e5b1d2cf43fa01ddb95d127c45

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.3-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 341.4 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.3-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 d22743e939ec1dab311cd11c994dca139856d19f853d3c95101551734610395e
MD5 9db7c2e1c28c223537a746cab6fb6d2f
BLAKE2b-256 8d9bd942ea1dc7b13d1bce875b9abfd6aa6441370f92bf22fc9df62ae97e0c3e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: whenever-0.8.3-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.3-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 4d89adbcb22985af535620247ad4eb3e3b0ab43fc494f4f90c489494717541a4
MD5 ae81def8dc133921100257ee4d105ae9
BLAKE2b-256 53c5dd5b532559d6082b03d1926ced49b8bb4f5174c1d91ff0452a81a7ef4be4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 4224071dabf97dadbc69199d28f3ce82c43c067ab1a89c543c2ccf7a0b8b7112
MD5 d8df14f87ed8bf51336c67a14fcaca2d
BLAKE2b-256 37129a3b4604f121bb2634d9cf15f3d0d7bf94ceec227cc5e1de1f60336c3c69

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp39-cp39-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 398dfde1d3e1963542c896d76493a471fe0fde26400710fcaadbf70c8e1ecead
MD5 3ed0a9aa9afb61b097b4537258dafc92
BLAKE2b-256 dbc98f06277a1d83edb34259c5cd065c665576db0ec83de388a992d5783fa34e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp39-cp39-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 856c71ce46e29861b437a525eca006153c86a29b49eced7255b2a4827c17b7ff
MD5 f83ff7c654ee325e4f6b81df6637cd2b
BLAKE2b-256 8231112bcd840933f3a29ddd324b0da0432fc758c15ab18518fa2a754e7c8906

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp39-cp39-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 61b812c355b759f658f82e2bc31f44cdbf7684fe7bede920d0ea573ff184f613
MD5 00e4681bac9d57f5274aec5d3d8bd007
BLAKE2b-256 100a11599d13802f75a199050b52f27bd88daf01904cbcf60f7041a094b54024

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0cbd8d4d7cfb85f9a1e4669c77f57caa9fe25082bf0a148363e44d73a68b75b4
MD5 d2ccbc9b3edc9ede6a6007544ec35197
BLAKE2b-256 73845ebf931933830cdfeca4b35b70421428cf67125e86550fdf23fa36a2846a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 f47499e6c3c2a7dc9eedbcbca2ec3387daf911039f0a3e2ca438f3a1babec136
MD5 3d7853445fcc50cd49e5e685e059b3ff
BLAKE2b-256 cd26862f9ae3d56c272823cee52b21122004f110b172dc70afb45ccdc08d67f9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 5f79eaf80d86395e425e7236f9ea02dc4d136e38946530ea76e87c3d50d6f340
MD5 33240eeb87c441902233213bd9afbde5
BLAKE2b-256 57dcf9d9ba1c3eac33f98f9d9ce4e73d3ea4e778f0791797688b9cb574b37a38

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 79e41b464adc01e71c90154d1b31e222b94ca3d511fbef331fdd4d1027256747
MD5 31f62d744635eca22812e86b06d563be
BLAKE2b-256 eaaa89fccbd922e2510c2376ece9b186bf6199d08e8f932e13936a09e9ac7f91

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0c742d5590932348ca672307beca9cf533f46e58fee1a6d79deb84ac786811d3
MD5 01614d8b9b24824cedbb4a531311552b
BLAKE2b-256 d9482debeb6b55805866e19bfbd1dec641f69974d9584dc25943772d4183088f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 0a65c18c2dac59d62fe23e5e1cc42187d75f27385a846e22232d455cf07b4c34
MD5 66d59b211213ae4789633de84604cb48
BLAKE2b-256 543f857be4593b70e4b84333e94b864fc7edc48542aa2a27dbf3102040e8365c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d68bc428ce51321f5bf8ffbab7001cf74c68eadfc774b7743f9f29f3ab9814be
MD5 238c50657580f44b0143c46d3a306738
BLAKE2b-256 5d067339a6d6625f95d0b0f47bf38474ee13f245a440a42dce79991439c10914

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whenever-0.8.3-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 fc8312c823a2f6cd082a416d39c60bb352c05f9cbe1cfc04ef8e23138b0ce4b6
MD5 2259808979d75f703d0b6407a2872401
BLAKE2b-256 a642231da1b55d4e428681afd2a2847b0b3137a34c1c4500dda3c94374af1e30

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