Timelib 2017.05
This release of timelib is the cumulation of the last half year, as part of a MongoDB Inc. project to get time zone support added to the Aggregation/Framework.
The following items are noteworthy improvements:
- Added support for reading tzdata files from the file system (/usr/share/zoneinfo)
- Performance improvements in rendering very early or late timestamps in year/month/day format
- Support for TZif3 files
- New functions:
- timelib_isodate_from_date — to convert from year, month, day to ISO year, week and dayOfWeek
- timelib_date_from_isodate — to convert from ISO year, week, and dayOfWeek to year, month and day
- timelib_hms_to_decimal_hour — to convert from hour, minute, seconds to fractional hours
- timelib_ts_to_julianday — Converts the Unix Epoch time stamp 'ts' to a Julian Day
- Better Endianness support, and added support for more exotic platforms (s390)
- Fractions are now stored as integers instead of floats (API change)
- Added error codes to parser errors and warnings
- Change calculations in timelib to use seconds East instead of minutes West (API change, MongoDB issue SERVER-30259)
- Added function documentation to the timelib.h header file
- Updated built-in Olson version of timezonemap.h and timezonedb.h to 2017.03.
- Issue #17: Formatting date/time from timestamps goes wrong sometimes
- Issue #19: Inefficient algorithm for calculating dates far in the past.