From 822b0fc4908b2d7e446bc8eb2717ee3db3da8b7a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 15 Jun 2026 14:13:25 +0000 Subject: [PATCH 1/4] CI: (deps): Bump matplotlib from 3.10.9 to 3.11.0 in /ci Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.10.9 to 3.11.0. - [Release notes](https://github.com/matplotlib/matplotlib/releases) - [Commits](https://github.com/matplotlib/matplotlib/compare/v3.10.9...v3.11.0) --- updated-dependencies: - dependency-name: matplotlib dependency-version: 3.11.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- ci/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/requirements.txt b/ci/requirements.txt index bebafe2300..1168f5ec3a 100644 --- a/ci/requirements.txt +++ b/ci/requirements.txt @@ -1,4 +1,4 @@ -matplotlib==3.10.9 +matplotlib==3.11.0 numpy==2.4.6 pandas==3.0.3 pooch==1.9.0 From 920473a426394a47f4a95410fa43017d74aa05eb Mon Sep 17 00:00:00 2001 From: Ryan May Date: Wed, 15 Jul 2026 17:28:03 -0600 Subject: [PATCH 2/4] MNT: Update TextCollection for Matplotlib 3.11 3.11 changed how one of the returns from _get_layout() was packed. Luckily an elegant work-around exists. --- src/metpy/plots/text.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/metpy/plots/text.py b/src/metpy/plots/text.py index f22e8b8962..4903951aed 100644 --- a/src/metpy/plots/text.py +++ b/src/metpy/plots/text.py @@ -230,7 +230,9 @@ def draw(self, renderer): _, info, _ = self._get_layout(renderer) self._text = '' - for line, _, x, y in info: + for line, _, *xy in info: + # Matplotlib 3.11 changed the packing of this + x, y = xy if len(xy) == 2 else xy[0] mtext = self if len(info) == 1 else None x = x + posx From a126c6a377ef9228d92ca0fff52b95a90d252e13 Mon Sep 17 00:00:00 2001 From: Ryan May Date: Wed, 15 Jul 2026 17:29:13 -0600 Subject: [PATCH 3/4] MNT: Remove no-longer needed warning suppression This release of dateutil is long since out. --- pyproject.toml | 3 --- 1 file changed, 3 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 7ad5b26abc..bbf1acabfb 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -111,9 +111,6 @@ xfail_strict = true filterwarnings = [ "error", "ignore:numpy.ndarray size changed:RuntimeWarning", - # To be removed in the next python-dateutil release. - # See: https://github.com/dateutil/dateutil/issues/1314 - 'ignore:datetime.datetime.utcfromtimestamp\(\) is deprecated:DeprecationWarning:dateutil.tz.tz:37', # Numpy deprecation triggered by Pint: https://github.com/hgrecco/pint/pull/1880 "ignore:Conversion of an array with ndim > 0 to a scalar is deprecated:DeprecationWarning:pint.facets.plain.quantity:575", # PyProj automatically dispatching for single point, will be waiting for NumPy 2.0 to address From e1a8a5649c9a92d800f45a9c192630aa5babf6af Mon Sep 17 00:00:00 2001 From: Ryan May Date: Wed, 15 Jul 2026 17:30:05 -0600 Subject: [PATCH 4/4] MNT: Ignore matplotlib PendingDeprecationWarnings Matplotlib 3.11 apparently decided that set_over()/set_under() will eventually be deprecated. We can't begin to use the new functions yet, so just suppress these warnings until 3.11 becomes our min version. --- pyproject.toml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pyproject.toml b/pyproject.toml index bbf1acabfb..a60168197b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -111,6 +111,9 @@ xfail_strict = true filterwarnings = [ "error", "ignore:numpy.ndarray size changed:RuntimeWarning", + # Nothing to be done now, need to wait until Matplotlib actually deprecates/removes + "ignore:.*set_over.*:PendingDeprecationWarning", + "ignore:.*set_under.*:PendingDeprecationWarning", # Numpy deprecation triggered by Pint: https://github.com/hgrecco/pint/pull/1880 "ignore:Conversion of an array with ndim > 0 to a scalar is deprecated:DeprecationWarning:pint.facets.plain.quantity:575", # PyProj automatically dispatching for single point, will be waiting for NumPy 2.0 to address