Skip to main content

Date/time helper functions used by various Seantis packages.

Project description

PyPI version Python versions Tests Codecov.io pre-commit

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.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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sedate-1.2.0.tar.gz (22.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sedate-1.2.0-py2.py3-none-any.whl (9.2 kB view details)

Uploaded Python 2Python 3

File details

Details for the file sedate-1.2.0.tar.gz.

File metadata

  • Download URL: sedate-1.2.0.tar.gz
  • Upload date:
  • Size: 22.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for sedate-1.2.0.tar.gz
Algorithm Hash digest
SHA256 b93ddc95ffb607c1d49d8725622ca6fa63fb9fdfed78118a6d54b5438799dc60
MD5 92371596fab199fe8f9a563316d070bc
BLAKE2b-256 f3f8184080b32d233faeae04ba0ac5a4c660a107ae8177479f4893243848a5d7

See more details on using hashes here.

Provenance

The following attestation bundles were made for sedate-1.2.0.tar.gz:

Publisher: python-publish.yaml on seantis/sedate

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sedate-1.2.0-py2.py3-none-any.whl.

File metadata

  • Download URL: sedate-1.2.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 9.2 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for sedate-1.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 7965c10997fcd9599d3acc16ac4c8ec56cad6e5f4506f1a8177d28ece2096669
MD5 84888457c9c3f05449ea84199b1f88ec
BLAKE2b-256 f75844c1d7783f7147a7fecdab696661faa00a648d291a1cb3e84aec5d849ca9

See more details on using hashes here.

Provenance

The following attestation bundles were made for sedate-1.2.0-py2.py3-none-any.whl:

Publisher: python-publish.yaml on seantis/sedate

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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