- Add pytz, tzlocal as runtime pendors of dtm in setup.py to get them installed when dtm is
- Update tests and payload to use $DTM_DT_STR to specify dt.str() format (rather than $DTM_STR)
- Add tests and payload using $DTM_DT_REPR to specify format for dt.repr()
- Import pytz and tzlocal inside a try/except block so an import failure doesn't derail installation. Tested on travis to verify that the fix for this works at install time.
- Specify minimum versions for pytz, tzlocal, and tbx in requirements.txt
- Update .gitignore to exclude .project from status reports
- Test reflection of operations +, -, ==, !=, <, >, <=, >=, *, //, /, %, and divmod() for dt and td objects.
- Add payload code to satisfy the tests.
- Add --skip option for py.test in this project.
- Internal: add some test goodies like pp() as short name for pytest.param and ppf() for the test id formatter.
- Internal: use lrx_exc_test() where it makes sense to do so.
- Address and fix the diff-str bug.
- Tests and payload for td object comparisons (==, !=, <, <=, >, >=)
- Test and payload for td.days(), td.hours(), td.minutes(), td.seconds()
- Test and payload for td.dhhmmss()
- Test and payload for td.dhms()
- Make dt and td comparison tests DRY
- Reflect dt and td comparison tests
- README.md improvements
- Update .travis.yml to define $FLAKE_IGNORE
- Write tests and payload for class td (time delta), which represents a length of time.
- Write tests and payload for dt.add() so that
-
- + =>
-
- + =>
-
- + =>
- +
- =>
-
+
- =>
- +
- =>
-
- +
- => TypeError
-
- + => TypeError
- +
- => TypeError
-
- Write tests and [payload] for dt.sub() so that
-
- -
- =>
-
- - =>
- -
- => (rsub)
-
- - =>
-
- - =>
-
- - =>
- -
- => TypeError (rsub)
-
-
- => TypeError (__rsub__)
- -
- => TypeError (rsub)
-
- Write tests and payload for td.add() so that
- + =>
- + =>
- + =>
- + =>
- + =>
-
+
- [==
- .__radd__] =>
-
+ =>
- + (radd) =>
- Write tests and payload for td.sub() so that
- - =>
- - =>
- - => (td.rsub)
- - =>
- (td.rsub)
- - =>
- - =>
-
-
- => TypeError (dt.__sub__)
- - => TypeError
- Write tests and payload for td.str()
- Complete test coverage
- Put common test utility items in importable file dtm_test_utils.py and started using them instead of repeating them in each test file. Eg., 'dtu.pp' rather than 'pp'.
- Wrote tests for payload code already in dtm/main.py.
- Fixed up payload code to pass its tests.
- Whitespace cleanup and typos.
- Ensuring all tests call pytest.dbgfunc() so they are debuggable.
- Reordered dtm commands in the source code.
- Made improvements to the payload code for reporting raw timezones, a structured set of timezones, etc.
- Addressed the "0 offset" bug that was causing .next_day() and .previous_day() to traceback when they got an argument of 0. Added tests that tickled the bug, then fixed the payload code to resolve it and satisfy the tests.
- Wrote tests (and test helper code) for 'dtm calendar'.
- Wrote payload code for 'dtm calendar'.
- Made sure that 100% of payload code has test coverage.
- Add test and code for dt.weekday_ceiling(), parametrize test for dt.weekday_floor().
- Update tests for weekday_{ceiling,floor}() to check for
- exception raised on invalid argument,
- target input being a list.
- Update weekday_{ceiling,floor}() to raise exception on invalid argument and handle the target input being a list of weekdays.
- Add Quick Start section to README.md.
- Add test and code for $DTM_FORMATS support for adding user-defined entries to the list of default parseable formats
- Add test and code for $DTM_STR support to allow user to specify the format str() should use.
- Improve internal function _norm_loc_ize() by making it take a datetime rather than a timestamp and always use the dt internal self._tz.
- Rearranged test files to allow for test_1_dt_internals.py.
- Added test and code for method dt.datetime()
- Updated tests and code for str and repr to make str use format "%F %T %Z" and make repr show the raw timestamp and timezone.
- Wrote dt._fail() and replaced 'raise dt_error()' with dt._fail()
- Added tests for internal helper functions.
- Tweaked some tests to address failures on travis.
- Add tz arg support on input and output methods: test and functionality.
- Add iso() method: tests and functionality.
- Add tests that probe dst transitions, both entering and leaving on all input and output methods.
- Make sure all methods have a descriptive comment.
- Add call() method: tests and functionality.
- Add str() method: tests and functionality.
- Catch README.md up to the package functionality.
- Add test_2_recipes.py for verifying timezone conversion recipes.
- Move test_deployable() from test_1_dt.py to test_9_deploy.py so it runs last.
- Replace ._dtobj and other members with ._utc and ._tz.
- Internal: helper functions for next_day, previous_day, normalizing and localizing datetime objects.
- Internal: define and use 'pp' for 'pytest.param' in test files.
- Tests involving tz conversions that probe dst entry and exit
call.
- Add dtm/main.py to git to provide command line functions for browsing the timezone database.
- Add .travis.yml to institute CI for this project.
- Added CHANGELOG.md to dtm project.
- Move version info from ./version.py to ./dtm/version.py and update setup.py, ./dtm/init.py, and ./tests/test_1_dt.py to use it from there.
- Remove ./version.py from the project
- Minor updates to README.md: future plans, tweaks for accuracy
- Add test_deployable() from tbx project
- Added version.py as the single point of truth for dtm version info and as an entry in py_modules in setup.py. This works. When it was not in py_modules, installation failed when setup.py tried to import version.
- Added ability to query dtm version (dt().version() or dt.version()).
- Added ISO format "%Y-%m-%dT%H:%M:%S" to default parseable date/time formats for the dt constructor. The source string may optionally have a final 'Z'. Added tests for this functionality.
- Added support for dt(epoch=). Added test for this.
- Added setup.py to package
- Exposed strptime() as a dtm static method
- Support year, month, day, hour, minute, second members of dt object
- Support and tests for various comparison operators on dt and datetime objects (<, >, ==, !=, <=, >=)
- Add id names to parametrized tests
- Add detailed descriptions of the major dt object methods
- Describe what dtm adds to datetime