Drop-in replacement for timezone aware datetime objects
Drop-in replacement for datetime.datetime
Simple implementation that leverages the built-in datetime module as much as possible
Excellent test coverage
A drop-in replacement for datetime.datetime that always provide timezone aware objects.
>>> from awaredatetime import AwareDatetime >>> AwareDatetime(2016, 1, 1) AwareDatetime(2016, 1, 1, 0, 0, tzinfo=<UTC>) >>> import datetime >>> AwareDatetime.from_datetime(datetime.datetime(2016, 1, 1)) AwareDatetime(2016, 1, 1, 0, 0, tzinfo=<UTC>) >>>
The only dependency is pytz. We recommend that you use the latest version of pytz, but this package will not force that upon you.
Migrating Existing Code
datetime_tz - Another timezone aware drop-in replacement for the datetime module, but overrides more datetime behavior
arrow - An API-compatible re-write of the datetime module
Do not change the CHANGELOG file or __version__ in awaredatetime/__init__.py. This is the responsibility of the repo and package owners.
Before adding a dependency, open an issue to discuss why the dependency is needed.
Follow the Google Python Style Guide.
Setup the development environment
pip install -U -r requirements.dev.txt
Make your changes
Add unittests for your changes
Run tests, which will also check the coding style
coverage run --source=awaredatetime setup.py test_dev
Once tests pass, ensure that your changes have proper test coverage
coverage html && ls htmlcov/index.html
Open a PR
Change how package versioning is determined
AwareDatetime is compatible with all known datetime.datetime methods and constants
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Hashes for awaredatetime-0.0.2-py2.py3-none-any.whl