Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump to v0.7.3 #712

Merged
merged 11 commits into from
Nov 6, 2024
Merged
42 changes: 38 additions & 4 deletions HISTORY.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,40 @@
History
=======

v0.7.3 (06 November 2024)
------------------------

This patch release updates the NumPy constraint to ``numpy >=2.0.0,<3.0.0`` to ensure
compatibility with NumPy 2.0 (which introduces breaking changes). It also fixes a bug
in the ``get_bounds()`` method where bounds could not be found on supported non-CF axes
(e.g., "latitude", "longitude", etc.) even with the ``"bounds"`` attribute set on the
axes.

Bug Fixes
~~~~~~~~~

- Update ``get_bounds()`` to support mappable non-CF axes using ``"bounds"`` attr by
`Tom Vo`_ in https://github.com/xCDAT/xcdat/pull/708

Documentation
~~~~~~~~~~~~~

- Add link to SciPy talk in docs by `Tom Vo`_ in https://github.com/xCDAT/xcdat/pull/704

DevOps
~~~~~~~~~~~~

- Adopt ``ruff`` as the central tool for linting, formatting, and import
sorting by `Tom Vo`_ in https://github.com/xCDAT/xcdat/pull/702
- Update numpy constraint to ``>=2.0.0,<3.0.0`` by `Tom Vo`_ in
https://github.com/xCDAT/xcdat/pull/711,
https://github.com/xCDAT/xcdat/pull/712
- Replace ``setup.py`` with ``pyproject.toml`` for modern Python packaging by
`Tom Vo`_ in https://github.com/xCDAT/xcdat/pull/712

**Full Changelog**: https://github.com/xCDAT/xcdat/compare/v0.7.2...v0.7.3


v0.7.2 (02 October 2024)
------------------------

Expand Down Expand Up @@ -65,10 +99,10 @@ notebooks and documentation are up to date with the latest and relevant informat
Bug Fixes
~~~~~~~~~

- Fixes regrid2 mapping output to input ordering by `Jason Boutte`_
in https://github.com/xCDAT/xcdat/pull/653
- Update ``add_missing_bounds()`` to convert ``np.timedelta64`` to ``pd.Timedelta``
to support Xarray's datetime component accessor `_Jiwoo Lee` in https://github.com/xCDAT/xcdat/pull/660
- Fixes regrid2 mapping output to input ordering by `Jason Boutte`_
in https://github.com/xCDAT/xcdat/pull/653
- Update ``add_missing_bounds()`` to convert ``np.timedelta64`` to ``pd.Timedelta``
to support Xarray's datetime component accessor `_Jiwoo Lee` in https://github.com/xCDAT/xcdat/pull/660

Documentation
~~~~~~~~~~~~~
Expand Down
2 changes: 1 addition & 1 deletion conda-env/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ dependencies:
- cftime
- dask
- netcdf4
- numpy >=2.0.0,<=3.0.0
- numpy >=2.0.0,<3.0.0
- pandas
- python-dateutil
- xarray >=2024.03.0
Expand Down
2 changes: 1 addition & 1 deletion conda-env/dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ dependencies:
- cftime
- dask
- netcdf4
- numpy >=2.0.0,<=3.0.0
- numpy >=2.0.0,<3.0.0
- pandas
- python-dateutil
- xarray >=2024.03.0
Expand Down
32 changes: 32 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,3 +1,35 @@
[build-system]
requires = ["setuptools>=42", "wheel"]
build-backend = "setuptools.build_meta"

[project]
name = "xcdat"
version = "0.7.3"
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I added your suggestion, thanks.

description = "Xarray Climate Data Analysis Tools"
readme = "README.rst"
requires-python = ">=3.9"
license = { text = "Apache-2.0" }
authors = [{ name = "xCDAT developers" }]
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"License :: OSI Approved :: Apache-2.0 License",
"Natural Language :: English",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
]
keywords = ["xcdat"]
dependencies = []
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good. My only comment is that it can be advantageous to add all the runtime dependencies that are also available on PyPI here. This allows you to use pip check both here and on the conda-forge feedstock. But it also requires updating dependencies in 2 places.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I added your suggestion, thanks.


[project.optional-dependencies]
test = ["pytest>=3"]

[tool.setuptools.packages.find]
include = ["xcdat", "xcdat.*"]

Copy link
Collaborator Author

@tomvothecoder tomvothecoder Nov 6, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @xylar, I'm moving from setup.py to pyproject.toml for xCDAT. How does this look? And anything else I need to do on the conda-forge side?

[tool.ruff]
# Exclude a variety of commonly ignored directories.
exclude = [
Expand Down
41 changes: 0 additions & 41 deletions setup.py

This file was deleted.

2 changes: 1 addition & 1 deletion tbump.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
github_url = "https://github.com/xCDAT/xcdat"

[version]
current = "0.7.2"
current = "0.7.3"

# Example of a semver regexp.
# Make sure this matches current_version before
Expand Down
2 changes: 1 addition & 1 deletion xcdat/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,4 +21,4 @@
from xcdat.temporal import TemporalAccessor # noqa: F401
from xcdat.utils import compare_datasets # noqa: F401

__version__ = "0.7.2"
__version__ = "0.7.3"
Loading