Release Notes
v1.4.2 (unreleased)
Requirements
nc-time-axis
now requirespython >= 3.9
according to NEP29 (PR #128). By Ruth Comer.nc-time-axis
now requiresnumpy >= 1.21
according to NEP29 (PR #129). By Bill Little.nc-time-axis
now requiresnumpy >= 1.23
according to NEP29 (PR #194). By Bill Little.
New Features
nc-time-axis
is now easily citable thanks to the addition of itsCITATION.cff
file (PR #129). Updates to theCITATION.cff
are automatically validated by the newci-citation
GitHub Action. By Bill Little.
Bug fixes
N/A
Infrastructure
Migrated from cirrus-ci to GitHub Actions (PR #129). By Bill Little.
Enabled dependabot to automatically update the versions of all third-party GitHub Actions (PR #129). By Bill Little.
Enabled the codespell pre-commit hook to automate spell checking of the codebase and documentation (PR #129). By Bill Little.
Adopted PEP621 by migrating the
setup.cfg
into thepyproject.toml
(PR #129). By Bill Little.Moved the codebase under the
src
directory (PR #129). By Bill Little.Co-located the conda and pip dependencies under the
requirements
directory (PR #129). By Bill Little.The
MANIFEST.in
is now automatically verified by the newci-manifest
GitHub Action (PR #129). By Bill Little.The
sdist
and binarywheel
ofnc-time-axis
are automatically built, tested and published to test.pypi and pypi by the newci-wheels
GitHub Action (PR #129). By Bill Little.
Documentation
Populated the
CITATION.cff
with ORCID details ofnc-time-axis
contributors (GH #135, PR #136). By Bill Little.
v1.4.1 (April 20th, 2022)
New Features
Starting with this release, every new release of
nc-time-axis
will be associated with a Digital Object Identifier (DOI) through Zenodo, making it easier to cite in academic articles (GH #104). By Spencer Clark.
Bug Fixes
As of matplotlib version 3.5, unit converters no longer need to support passing numeric or iterables of numeric values to their
convert
method. Accordingly, thematplotlib.units.ConversionInterface.is_numlike()
method has been deprecated. For backwards compatibility with older versions of matplotlib, we have vendored this function for the time being, but will remove it once the minimum version of matplotlib supported bync-time-axis
is at least 3.5 (GH #97, PR #106). By Spencer Clark.
Infrastructure
Update usage of conda-lock in continuous integration to continue to create lock-files that can be used to create mamba environments (PR #107). By Spencer Clark and Ruth Comer.
v1.4.0 (October 23rd, 2021)
Deprecations
The
CalendarDateTime
class has been deprecated and will be removed innc-time-axis
version 1.5.0. Please switch to plotting instances or subclasses ofcftime.datetime
directly (GH #62, PR #87). See the Examples for illustration. By Spencer Clark.
New Features
Added a
CFTimeFormatter
class to enable custom formatting forcftime.datetime
ticks (GH #41, PR #84). By Spencer Clark.Added ability to plot calendar-aware
cftime.datetime
objects, e.g.cftime.datetime(2000, 1, 1, calendar="noleap")
, available as of cftime version 1.3.0 (GH #75, PR #80). By Spencer Clark.
Bug Fixes
Enabled
NetCDFTimeConverter.convert()
to take alist
of datetimes as an argument, allowing matplotlib methods likematplotlib.axes.Axes.axvspan()
andmatplotlib.axes.Axes.fill_between()
to work properly with cftime values (GH #47, GH #74, PR #78). By Pascal Bourgault.Fixed a bug that resulted in the resolution of tick labels being inconsistent with the resolution of tick values (GH #48, PR #79). By Spencer Clark.
Fixed a bug that prevented users from being able to explicitly set the ticks along axes using
matplotlib.axes.Axes.set_xticks()
ormatplotlib.axes.Axes.set_yticks()
(GH #41, PR #84). By Spencer Clark.
Documentation
Added a start on readthedocs documentation. Added examples, release notes, and NumPy-style docstrings to
nc-time-axis
classes (GH #62, PR #87). By Spencer Clark.Added some basic instructions for making a new release (PR #94). By Spencer Clark.
v1.3.1 (June 14th, 2021)
Requirements
nc-time-axis
now requires cftime of at least version 1.5 (GH #61, PR #69). By Bill Little.
v1.3.0 (June 11th, 2021)
Requirements
Support for Python 2 was dropped.
Infrastructure
Migrated continuous integration from travis-ci to cirrus-ci through GitHub Actions. Added formatting and linting checks. Updated packaging to use setuptools. Added issue and pull request templates. Enabled GitHub discussions. For more details see GH #63 and PR #66. By Bill Little.
Changed the name of the primary branch from
master
tomain
(PR #68). By Bill Little.
Bug Fixes
Removed ticks with year zero in calendars without year zero. Previously these would lead to errors in cftime, which would prevent plotting (GH #44, PR #50). By Julius Busecke.
Removed internal use of the deprecated
cftime.utime
class (PR #59 through PR #66). By Pascal Bourgault.Removed internal use of the deprecated
numpy.object
data type (PR #56 through PR #66). By Mathias Hauser.Updated internals for compatibility with the now calendar-aware
cftime.datetime
object (PR #51 through PR #66). By Jeff Whitaker.Improved handling of scalar values passed to
NetCDFTimeConverter.convert()
(GH #45, PR #46). By Spencer Clark.
v1.2.0 (January 25th, 2019)
Infrastructure
Included license in package data (PR #37). By Filipe Fernandes.
New Features
Added ability to directly plot subclasses of
cftime.datetime
, e.g.cftime.DatetimeNoLeap
, instead of requiringCalendarDateTime
objects (PR #42). By Spencer Clark.
v1.1.0 (May 31st, 2018)
Requirements
nc-time-axis
now requires matplotlib of at least version 2.0 (GH #23, PR #34). By Filipe Fernandes.nc-time-axis
now uses the standalone cftime package instead of thenetcdftime
module formerly packaged in netcdf4-python (PR #30, PR #32). By Filipe Fernandes.
Infrastructure
Updated continuous integration tests to be run with both Python 2 and Python 3 (PR #33). By Filipe Fernandes.
Updated continuous integration to use
install_requires
information to install dependencies ofnc-time-axis
instead of a requirements file (GH #27, PR #28). By Phil Elson.Added installation and test requirements to
setup.py
(PR #26). By Luke Carroll.
Documentation
v1.0.2 (March 7th, 2017)
Requirements
nc-time-axis
now requires matplotlib less than version 2.0 (PR #22). By Mark Hedley.
Bug Fixes
Fixed a bug in comparing calendars (PR #22). By Mark Hedley.
v1.0.1 (November 23rd, 2016)
Bug Fixes
Fixed a bug the prevented converting numpy arrays of datetime objects. This enables making Hovmoller diagrams using
nc-time-axis
. By Peter Killick.
v1.0.0 (July 1st, 2016)
This is the initial release of the nc-time-axis
package. It is based on a
prototype written by Phil Elson, which was made production-ready by
Laura Dreyer.
New Features
Added the fundamental objects of
nc-time-axis
, i.e.NetCDFTimeDateLocator
,NetCDFTimeDateFormatter
, andNetCDFTimeConverter
(PR #2). By Laura Dreyer and Phil Elson.Added unit and integration tests (PR #3, PR #13). By Laura Dreyer.
Added a
__version__
attribute tonc-time-axis
(PR #9). By Laura Dreyer.Added the
CalendarDateTime
class (PR #12, PR #15). By Laura Dreyer.
Infrastructure
Added initial packaging infrastructure (PR #4). By Laura Dreyer.
Configured continuous integration to be run using travis-ci (PR #6). By Laura Dreyer.
Added test coverage computation and reporting (PR #17, PR #19). By Laura Dreyer.
Documentation
Added a Travis CI badge to the
README
and convert to reStructuredText format (PR #11). By Laura Dreyer.Added basic description to the
README
(PR #5). By Peter Killick.Added contributing guidelines to the repository (PR #1). By Laura Dreyer.