# pendulum

> Python datetimes made easy

**Wikidata**: [Q100153264](https://www.wikidata.org/wiki/Q100153264)  
**Source**: https://4ort.xyz/entity/pendulum

## Summary
Pendulum is a Python library designed to simplify datetime operations with an intuitive API. It extends Python's standard datetime functionality, making date and time calculations more accessible and less error-prone for developers.

## Key Facts
- Pendulum is an open-source software library with an MIT License that simplifies datetime operations in Python
- It is maintained on GitHub at https://github.com/sdispater/pendulum with a website at https://pendulum.eustace.io/
- The project has released versions from 0.3 (2016-07-12) to 0.6.0 (2016-09-12)
- It is available as a Python package (pendulum) through PyPI and in Linux distributions including openSUSE, Arch Linux, and SlackBuilds
- Pendulum depends on python_dateutil and pytzdata for additional datetime functionality
- It is classified as a software library, open-source software, and Python package

## FAQs
### Q: What is pendulum used for?
A: Pendulum is used to simplify datetime operations in Python, providing an intuitive API for handling dates, times, timezones, and complex time calculations that are otherwise difficult with Python's standard datetime module.

### Q: How do I install pendulum?
A: Pendulum can be installed using pip with the command `pip install pendulum` or through package managers of Linux distributions like `pacman -S python-pendulum` for Arch Linux.

### Q: Who created pendulum?
A: Pendulum was created by Sébastien Eustace, as indicated by the GitHub repository username "sdispater".

### Q: What license does pendulum use?
A: Pendulum is released under the MIT License, which is permissive and allows free use, modification, and distribution.

## Why It Matters
Pendulum addresses common pain points developers face when working with dates and times in Python. The standard datetime module can be unintuitive and requires careful handling of timezones and edge cases. Pendulum simplifies these operations through a well-designed API that chains methods naturally and provides human-readable outputs. This library has become valuable for applications requiring robust date-time handling across different time zones, such as scheduling systems, logging applications, and data analysis pipelines. By making datetime operations more accessible and less error-prone, pendulum has improved productivity for countless Python developers worldwide.

## Notable For
- Provides a fluent interface method chaining that makes datetime operations more readable and intuitive
- Offers superior timezone handling compared to Python's standard datetime module
- Includes features for human-readable relative time formatting (e.g., "2 days ago")
- Implements the "pendulum" pattern, making time calculations more natural through method chaining
- Has been adopted by multiple Linux distributions, indicating its reliability and utility

## Body
### Overview
Pendulum is a Python library designed to simplify datetime operations. It extends Python's standard datetime functionality while maintaining compatibility, providing developers with a more intuitive interface for handling date and time calculations.

### Development and Release History
- Version 0.3 was released on July 12, 2016
- Version 0.3.1 was released on July 13, 2016 (one day later)
- Version 0.4 was released on July 25, 2016
- Version 0.5 was released on August 15, 2016
- Version 0.5.1 was released on August 18, 2016
- Version 0.5.2 was released on August 24, 2016
- Version 0.5.3 was released on August 29, 2016
- Version 0.5.4 was released on August 30, 2016
- Version 0.5.5 was released on September 1, 2016
- Version 0.6.0 was released on September 12, 2016

### Licensing and Distribution
- License: MIT License
- Copyright Status: Copyrighted
- Available on PyPI as package "pendulum"
- Distributed through Linux package managers:
  - openSUSE: python-pendulum
  - Arch Linux: python-pendulum
  - SlackBuilds: python/pendulum

### Technical Dependencies
- Depends on python_dateutil for additional date parsing functionality
- Depends on pytzdata for timezone information
- Written in Python programming language
- Hosted on GitHub: https://github.com/sdispater/pendulum

## References

1. [Release 0.3. 2016](https://github.com/sdispater/pendulum/releases/tag/0.3)
2. [Release 0.3.1. 2016](https://github.com/sdispater/pendulum/releases/tag/0.3.1)
3. [Release 0.4. 2016](https://github.com/sdispater/pendulum/releases/tag/0.4)
4. [Release 0.5. 2016](https://github.com/sdispater/pendulum/releases/tag/0.5)
5. [Release 0.5.1. 2016](https://github.com/sdispater/pendulum/releases/tag/0.5.1)
6. [Release 0.5.2. 2016](https://github.com/sdispater/pendulum/releases/tag/0.5.2)
7. [Release 0.5.3. 2016](https://github.com/sdispater/pendulum/releases/tag/0.5.3)
8. [Release 0.5.4. 2016](https://github.com/sdispater/pendulum/releases/tag/0.5.4)
9. [Release 0.5.5. 2016](https://github.com/sdispater/pendulum/releases/tag/0.5.5)
10. [Release 0.6.0. 2016](https://github.com/sdispater/pendulum/releases/tag/0.6.0)
11. [Release 0.6.1. 2016](https://github.com/sdispater/pendulum/releases/tag/0.6.1)
12. [Release 0.6.2. 2016](https://github.com/sdispater/pendulum/releases/tag/0.6.2)
13. [Release 0.6.3. 2016](https://github.com/sdispater/pendulum/releases/tag/0.6.3)
14. [Release 0.6.4. 2016](https://github.com/sdispater/pendulum/releases/tag/0.6.4)
15. [Release 0.6.5. 2016](https://github.com/sdispater/pendulum/releases/tag/0.6.5)
16. [Release 0.6.6. 2016](https://github.com/sdispater/pendulum/releases/tag/0.6.6)
17. [Release 0.7.0. 2016](https://github.com/sdispater/pendulum/releases/tag/0.7.0)
18. [Release 0.8.0. 2017](https://github.com/sdispater/pendulum/releases/tag/0.8.0)
19. [Release 1.0.0. 2017](https://github.com/sdispater/pendulum/releases/tag/1.0.0)
20. [Release 1.0.1. 2017](https://github.com/sdispater/pendulum/releases/tag/1.0.1)
21. [Release 1.0.2. 2017](https://github.com/sdispater/pendulum/releases/tag/1.0.2)
22. [Release 1.1.0. 2017](https://github.com/sdispater/pendulum/releases/tag/1.1.0)
23. [Release 1.1.1. 2017](https://github.com/sdispater/pendulum/releases/tag/1.1.1)
24. [Release 1.2.0. 2017](https://github.com/sdispater/pendulum/releases/tag/1.2.0)
25. [Release 1.2.1. 2017](https://github.com/sdispater/pendulum/releases/tag/1.2.1)
26. [Release 1.2.2. 2017](https://github.com/sdispater/pendulum/releases/tag/1.2.2)
27. [Release 1.2.3. 2017](https://github.com/sdispater/pendulum/releases/tag/1.2.3)
28. [Release 1.2.5. 2017](https://github.com/sdispater/pendulum/releases/tag/1.2.5)
29. [Release 1.3.0. 2017](https://github.com/sdispater/pendulum/releases/tag/1.3.0)
30. [Release 1.3.1. 2017](https://github.com/sdispater/pendulum/releases/tag/1.3.1)
31. [Release 1.3.2. 2017](https://github.com/sdispater/pendulum/releases/tag/1.3.2)
32. [Release 1.4.0. 2018](https://github.com/sdispater/pendulum/releases/tag/1.4.0)
33. [Release 1.4.1. 2018](https://github.com/sdispater/pendulum/releases/tag/1.4.1)
34. [Release 1.4.3. 2018](https://github.com/sdispater/pendulum/releases/tag/1.4.3)
35. [Release 1.4.4. 2018](https://github.com/sdispater/pendulum/releases/tag/1.4.4)
36. [Release 1.5.0. 2018](https://github.com/sdispater/pendulum/releases/tag/1.5.0)
37. [Release 1.5.1. 2018](https://github.com/sdispater/pendulum/releases/tag/1.5.1)
38. [Release 2.0.0. 2018](https://github.com/sdispater/pendulum/releases/tag/2.0.0)
39. [Release 2.0.1. 2018](https://github.com/sdispater/pendulum/releases/tag/2.0.1)
40. [Release 2.0.2. 2018](https://github.com/sdispater/pendulum/releases/tag/2.0.2)
41. [Release 2.0.3. 2018](https://github.com/sdispater/pendulum/releases/tag/2.0.3)
42. [Release 2.0.4. 2018](https://github.com/sdispater/pendulum/releases/tag/2.0.4)
43. [Release 2.1.0. 2020](https://github.com/sdispater/pendulum/releases/tag/2.1.0)
44. [Release 2.1.1. 2020](https://github.com/sdispater/pendulum/releases/tag/2.1.1)
45. [Release 2.1.2. 2020](https://github.com/sdispater/pendulum/releases/tag/2.1.2)
46. [Release 3.0.0. 2023](https://github.com/sdispater/pendulum/releases/tag/3.0.0)
47. [Release 3.1.0. 2025](https://github.com/python-pendulum/pendulum/releases/tag/3.1.0)
48. [Release 3.2.0. 2026](https://github.com/python-pendulum/pendulum/releases/tag/3.2.0)