Pendulum modifies '+' operator to handle DST-aware datetime addition
Pendulum's latest version implements a custom __add__ method that inspects the call stack to determine how to add timedeltas, ensuring correct daylight saving time calculations. This approach results in significantly slower performance compared to Python's standard datetime library. The design was introduced to meet Pendulum's commitment to accurate DST-aware datetime arithmetic.
GoKawiil's interpretation of the reporting above, not reported fact.
This unconventional implementation highlights the challenges of balancing performance with correctness in datetime libraries, especially when handling complex time zone rules. It suggests that Pendulum prioritized precise DST handling over speed, which could influence how developers choose or design datetime tools in Python. The hack underscores ongoing difficulties in managing time zone complexities within programming languages.
- Pendulum's '+' operator uses call stack inspection for DST accuracy.
- This approach slows down datetime operations significantly.
- Design reflects a trade-off between correctness and performance in datetime handling.
Source: dev.arie.bovenberg.net, 2026-10-06
Published there as: “Why Pendulum had to write the most cursed "+" operator in all of Python”
Read the original report → The summary and analysis above are GoKawiil's own, written from reporting by the source above. Facts and quotes belong to the original publisher.