Sedate
Date/time helper functions used by various Seantis packages.
There are projects like Arrow or Delorean which provide ways to work with timezones without having to think about it too much.
Seantis doesn’t use them because we want to reason about these things, to ensure they are correct, and partly because of self-loathing.
Adding another layer makes this reasoning harder.
Run the Tests
Install tox and run it:
pip install tox tox-uv tox
Limit the tests to a specific python version:
tox -e py311
Conventions
Sedate follows PEP8 as close as possible. To test for it run:
tox -e lint
Sedate uses Semantic Versioning
Development
Setup your local development environment:
python3 -m venv venv source venv/bin/activate pip install -e .[dev] pre-commit install
License
sedate is released under GPLv2
Changelog
1.3.0 (26.03.2026)
Adds support for Python 3.14. Drops support for Python 3.9 [Daverball]
1.2.0 (15.01.2025)
Adds support for Python 3.13. Drops support for Python 3.8 [Daverball]
1.1.1 (2024-08-13)
No changes. For testing new release workflow. [Daverball]
1.1.0 (2024-06-11)
Adds support for Python 3.11 and 3.12. Drops support for Python 3.7. [Daverball]
1.0.3 (2023-03-30)
Fixes up packaging of py.typed marker [Daverball]
1.0.2 (2022-08-10)
Adds back removed weeknumber function [Daverball]
1.0.1 (2022-08-09)
Fixes GPLv2 License Classifier in setup.cfg [Daverball]
1.0.0 (2022-08-09)
Fixes align_to_week and align_to_month not behaving consistently with align_to_day during DST transitions [Daverball]
Fixes DST related issues in get_date_range, dtrange and weekrange
With this change these functions now accept additional arguments that determine what happens with ambiguous, non-existent times during daylight savings transitions. [Daverball]
Adds type annotations [Daverball]
Removes support for Python 2.7 and 3.6 and below [Daverball]
Removes explicit support for Python 3.3 (might or might not work). [href]
0.3.0 (2018-02-12)
Adds a weeknumber function. [href]
0.2.0 (2017-03-02)
Adds the ability to iterate over custom deltas between a start and an end. [href]
Adds the ability to iterate over weeks between a start and an end. [href]
0.1.0 (2016-05-12)
Adds methods to align dates to months and weeks. [href]
0.0.5 (2016-04-25)
Adds a time parsing function which accepts anything from 00:00 to 24:00. [href]
0.0.4 (2015-11-18)
Fixes an issue with daylight savings time and align_date_to_day.
With this change, align_date_to_day ensures that the resulting date is in the timezone the date was aligned to, not in the timezone it originally was in. [href]
0.0.3 (2015-08-05)
Adds a function to turn date-ish objects into datetimes. [href]
0.0.2 (2015-08-04)
Fix align_date_to_day failing with certain timezones. [href]
0.0.1 (2015-06-30)
Initial Release
Metadata
Release files for sedate 1.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sedate-1.3.0.tar.gz | 22.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sedate-1.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 39.5 kB
Release files / sedate-1.3.0.tar.gz
| Download URL | sedate-1.3.0.tar.gz |
|---|---|
| Size | 22.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
34d8eb279e6dff2a389926b2774c1ec1612021989a9afd31255e02d6fe2c23ce
|
|
BLAKE2b-256 checksum How to use checksums |
d4ca2b4b1ec06541e90a6e0855923aa0abb41c1272c91ca5eb60bfa039f9f885
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 26, 2026.
Transparency logRelease files / sedate-1.3.0-py3-none-any.whl
| Download URL | sedate-1.3.0-py3-none-any.whl |
|---|---|
| Size | 16.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2711c5905d787ad4a28cde46a3c30ada9bda9be48aa491fcb86ee286b74a463f
|
|
BLAKE2b-256 checksum How to use checksums |
a59b0db4043a4bfdb7810f072a11acd92e0fed580f244b56be647c3c694ee7a4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 26, 2026.
Transparency log