
version 1.4.1 (release tag v1.4.1.rel)
======================================
 * Restore use of calendar-specific sub-classes in `cftime.num2date`,
   `cftime.datetime.__add__`, and `cftime.datetime.__sub__`.  The use of them 
   will be removed in a later release.
 * add 'fromordinal' static method to create a cftime.datetime instance
   from a julian day ordinal and calendar (inverse of 'toordinal').

version 1.4.0 (release tag v1.4.0.rel)
======================================
 * `cftime.date2num` will now always return an array of integers, if the units
   and times allow.  Previously this would only be true if the units were
   'microseconds' (PR #225).  In other circumstances, as before, `cftime.date2num`
   will return an array of floats.
 * Rewrite of julian day/calendar functions (_IntJulianDayToCalendar and 
   _IntJulianDayFromCalendar) to remove GPL'ed code.  cftime license
   changed to MIT (to be consistent with netcdf4-python). 
 * Added datetime.toordinal() (returns julian day, kwarg 'fractional'
   can be used to include fractional day).
 * cftime.datetime no longer uses calendar-specific sub-classes.

version 1.3.1 (release tag v1.3.1rel)
=====================================
 * fix for issue #211 (PR #212) bug in masked array handling in date2num)
 * switch from travis/appveyor to github actions for CI/CD (PR #215).
 * switch to cython language_level=3 (no more support for python 2) (PR #217).
 * add __init__.py to test dir so pytest coverage works again. Add Coveralls
   step to github actions workflow to upload coverage data to coveralls.io (PR
   #217).
 * move package under 'src' directory so cftime can be imported
   from install dir (PR #218 - see
   https://blog.ionelmc.ro/2014/05/25/python-packaging/#the-structure).

version 1.3.0 (release tag v1.3.0rel)
=====================================
 * zero pad years in strtime (issue #194)
 * have cftime.datetime constuctor create 'calendar-aware' instances (default is
   'standard' calendar, if calendar='' or None the instance is not calendar aware and some
   methods, like dayofwk, dayofyr, __add__ and __sub__, will not work). Fixes issue #198.
   The calendar specific sub-classes are now deprecated, but remain for now
   as stubs that just instantiate the base class and override __repr__.
 * update regex in _cpdef _parse_date so reference years with more than four
   digits can be handled. 
 * Change default calendar in cftime.date2num from 'standard' to None
   (calendar associated with first input datetime object is used).
 * add `cftime.datetime.tzinfo=None` for compatibility with python datetime
   (issue #208).

version 1.2.1 (release tag v1.2.1rel)
=====================================
 * num2date uses 'proleptic_gregorian' scheme when basedate is post-Gregorian but date is pre-Gregorian
   (issue #182).
 * fix 1.2.0 regression (date2num no longer works with numpy scalar array inputs, issue #185).
 * Fix for issue #187 (have date2num round to the nearest second when within 1
   microsecond).
 * Fix for issue #189 (leap years calculated incorrectly for negative years in
   proleptic_gregorian calendar).

version 1.2.0 (release tag v1.2.0rel)
=====================================
 * Return the default values of dayofwk and dayofyr when calendar
   is '' (issue #173).
 * fix treatment of masked arrays in num2date and date2num (issue #175).
   Also make sure masked arrays are output from num2date/date2num if
   masked arrays are input.
 * Where possible, use timedelta arithmetic to decode times exactly within
   num2date (issue #171).
 * Make taking the difference between two cftime datetimes to produce a
   timedelta exact to the microsecond; depending on the units encoding,
   this enables date2num to be exact as well (issue #109).
 * utime.date2num/utime.num2date now just call module level functions.
   JulianDayFromDate/DateFromJulianDay no longer used internally (PR #180).


version 1.1.3 (release tag v1.1.3rel)
=====================================
 * add isoformat method for compatibility with python datetime (issue #152).
 * make 'standard' default calendar for cftime.datetime
   so that dayofwk,dayofyr methods don't fail (issue #169).

version 1.1.2 (release tag v1.1.2rel)
=====================================
 * change dayofwk and dayofyr attributes into properties (issue #158)
 * fix for issue #165 (python datetime should be returned when
   only_use_cftime_datetimes=False).

version 1.1.1.2 (release tag v1.1.1.2rel)
=========================================
 * include pyproject.toml in MANIFEST.in so it gets 
   included in source tarball (issue #154).

version 1.1.1.1 (release tag v1.1.1.1rel)
=========================================
 * Fix error installing with pip on python 3.8 by following 
   PEP 517 (issue #148, PR #149)

version 1.1.1 (release tag v1.1.1rel)
=====================================

 * fix microsecond formatting issue, ensure identical results
   computed for arrays and scales (issue #143, PR #146).

version 1.1.0 (release tag v1.1.0rel)
=====================================

 * improved exceptions for time differences (issue #128, PR #131).

 * fix intersphinx entries (issue #133, PR #133)

 * make only_use_cftime_datetimes=True by default, so cftime datetime
   instances are returned by default by num2date (instead of returning python
   datetime instances where possible). Issue #136, PR #135.

 * Add daysinmonth attribute (issue #137, PR #138).

 * If only_use_python_datetimes=True and only_use_cftime_datetimes=False,
   num2date only returns python datetime instances and raises an exception
   if this is not possible.  num2pydate convenience function added which just calls
   num2date with only_use_python_datetimes=True and
   only_use_cftime_datetimes=False.
   Remove positive times check, raise ValueError if python datetime
   tries to compute a date before MINYEAR (issue #134, PR #139)

 * Fix for fractional seconds in reference date in units string (issue #140,
   PR # 141).

version 1.0.4.2 release
=======================

 * fix for issue #126 (date2num error when converting a DatetimeProlepticGregorian 
   object). PR #127.
