Details
============================= test session starts ==============================
platform linux -- Python 3.13.13, pytest-9.0.3, pluggy-1.6.0
Matplotlib: 3.11.0rc2
Freetype: 2.14.3
Dep Versions: Cartopy: 0.25.0, Dask: 2026.3.0, Matplotlib: 3.11.0rc2,
Numpy: 2.5.0rc1, Pandas: 3.0.3, Pint: 0.25.4.dev15+gd81ba4ec8, Pooch: v1.9.0,
Pyproj: 3.7.2, Scipy: 1.18.0rc2, Shapely: 2.1.2, Traitlets: 5.15.1,
Xarray: 2026.4.1.dev19+ga1408234d
rootdir: /home/runner/work/MetPy/MetPy
configfile: pyproject.toml
plugins: mpl-0.19.0
collected 1634 items
tests/calc/test_basic.py ............................................... [ 2%]
........................................................................ [ 7%]
....................... [ 8%]
tests/calc/test_calc_tools.py .......................................... [ 11%]
........................................................................ [ 15%]
............................................... [ 18%]
tests/calc/test_cross_sections.py ...........FF [ 19%]
tests/calc/test_indices.py ............................ [ 21%]
tests/calc/test_kinematics.py .......................................... [ 23%]
........................................ [ 26%]
tests/calc/test_thermo.py .............................................. [ 28%]
........................................................................ [ 33%]
........................................................................ [ 37%]
..................................... [ 39%]
tests/calc/test_turbulence.py .............................. [ 41%]
tests/interpolate/test_geometry.py ............. [ 42%]
tests/interpolate/test_grid.py ...................................... [ 44%]
tests/interpolate/test_interpolate_tools.py ....... [ 45%]
tests/interpolate/test_one_dimension.py ................... [ 46%]
tests/interpolate/test_points.py ........................ [ 47%]
tests/interpolate/test_slices.py ........ [ 48%]
tests/io/test_gempak.py .................................. [ 50%]
tests/io/test_gini.py .................. [ 51%]
tests/io/test_metar.py ........................................ [ 54%]
tests/io/test_nexrad.py ................................................ [ 57%]
........................................................................ [ 61%]
....................................................... [ 64%]
tests/io/test_station_data.py ....... [ 65%]
tests/io/test_text.py .... [ 65%]
tests/io/test_tools.py .. [ 65%]
tests/plots/test_cartopy_utils.py ....... [ 66%]
tests/plots/test_ctables.py .......... [ 66%]
tests/plots/test_declarative.py F...F......F..FF............FF..FF..F... [ 69%]
.......FFFFF.FFF..FFFxFF.........FF.F...FF [ 71%]
tests/plots/test_mapping.py ........................ [ 73%]
tests/plots/test_patheffects.py ........ [ 73%]
tests/plots/test_plot_areas.py ..... [ 73%]
tests/plots/test_plot_text.py FFF [ 74%]
tests/plots/test_skewt.py FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF [ 76%]
FFFFFFFFFFFF [ 77%]
tests/plots/test_station_plot.py FFFFFFF..FFFF.FFFFFFFFFFFF [ 79%]
tests/plots/test_util.py FFFFFFFFFFF... [ 80%]
tests/plots/test_wx_symbols.py .... [ 80%]
tests/remote/test_aws.py ........ [ 80%]
tests/test_cbook.py ... [ 81%]
tests/test_deprecation.py . [ 81%]
tests/test_packaging.py . [ 81%]
tests/test_testing.py ........ [ 81%]
tests/test_xarray.py .............................FF.................... [ 84%]
........................................................................ [ 89%]
........................................................................ [ 93%]
.............................FF................................ [ 97%]
tests/units/test_units.py ..FF.................................x.... [100%]
=================================== FAILURES ===================================
_______________________ test_absolute_momentum_given_xy ________________________
test_cross_xy = <xarray.Dataset> Size: 788B
Dimensions: (time: 1, isobaric: 5, index: 7)
Coordinates:
-
time ...[[...
v_wind (time, isobaric, index) float64 280B Quantity(array([[...
lambert_conformal <U1 4B ''
def test_absolute_momentum_given_xy(test_cross_xy):
"""Test absolute momentum calculation."""
momentum = absolute_momentum(test_cross_xy['u_wind'], test_cross_xy['v_wind'])
true_momentum_values = np.array([[[169.22222693, 146.36354006, 145.75559124, 171.8710635,
215.04876817, 265.73797007, 318.34138347],
[156.27520858, 133.32107346, 132.62636169, 158.66828331,
201.78218117, 252.41370282, 304.96242462],
[143.32819023, 120.27860686, 119.49713214, 145.46550311,
188.51559418, 239.08943557, 291.58346576],
[130.38117188, 107.23614026, 106.36790259, 132.26272292,
175.24900718, 225.76516831, 278.20450691],
[117.43415353, 94.19367366, 93.23867305, 119.05994273,
161.98242018, 212.44090106, 264.82554806]]])
true_momentum = xr.DataArray(true_momentum_values * units('m/s'),
coords=test_cross_xy['u_wind'].coords,
dims=test_cross_xy['u_wind'].dims)
assert_xarray_allclose(momentum, true_momentum)
tests/calc/test_cross_sections.py:323:
actual = <xarray.DataArray (time: 1, isobaric: 5, index: 7)> Size: 280B
Quantity(array([[[169.22221086, 146.36352646, 145.75557...rs object 8B Projection: lambert_conformal_conic
Attributes:
grid_mapping: lambert_conformal
_metpy_axis: x
desired = <xarray.DataArray (time: 1, isobaric: 5, index: 7)> Size: 280B
Quantity(array([[[169.22222693, 146.36354006, 145.75559...dex) float64 56B -1.5e+06 -1.269e+06 ... -2.677e+05 -939.1
metpy_crs object 8B Projection: lambert_conformal_conic
def assert_xarray_allclose(actual, desired):
"""Check that the xarrays are almost equal, including coordinates and attributes."""
xr.testing.assert_allclose(actual, desired)
assert desired.metpy.coordinates_identical(actual)
assert desired.attrs == actual.attrs
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E AssertionError
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/testing.py:338: AssertionError
___________________ test_absolute_momentum_xarray_units_attr ___________________
def test_absolute_momentum_xarray_units_attr():
"""Test absolute momentum when `u` and `v` are DataArrays with a `units` attribute."""
data = xr.open_dataset(get_test_data('narr_example.nc', False))
data = data.metpy.parse_cf().squeeze()
start = (37.0, -105.0)
end = (35.5, -65.0)
cross = cross_section(data, start, end)
u = cross['u_wind'][0].sel(index=slice(0, 2))
v = cross['v_wind'][0].sel(index=slice(0, 2))
momentum = absolute_momentum(u, v)
true_momentum_values = np.array([137.46164031, 134.11450232, 133.85196023])
true_momentum = xr.DataArray(units.Quantity(true_momentum_values, 'm/s'),
coords=u.coords)
assert_xarray_allclose(momentum, true_momentum)
tests/calc/test_cross_sections.py:343:
actual = <xarray.DataArray (index: 3)> Size: 24B
Quantity(array([137.46164031, 134.11450232, 133.85196023]), "meter / second")
... grid_spacing: 32.463 km
_CoordinateAxisType: GeoX
_metpy_axis: x
desired = <xarray.DataArray (index: 3)> Size: 24B
Quantity(array([137.46164031, 134.11450232, 133.85196023]), "meter / second")
...ns] 8B 1987-04-04T18:00:00
isobaric float64 8B 1e+03
metpy_crs object 8B Projection: lambert_conformal_conic
def assert_xarray_allclose(actual, desired):
"""Check that the xarrays are almost equal, including coordinates and attributes."""
xr.testing.assert_allclose(actual, desired)
assert desired.metpy.coordinates_identical(actual)
assert desired.attrs == actual.attrs
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E AssertionError
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/testing.py:338: AssertionError
____________________________ test_declarative_image ____________________________
Error: Image files did not match.
RMS Value: 0.40733636796469164
Expected:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_image/baseline.png
Actual:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_image/result.png
Difference:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_image/result-failed-diff.png
Tolerance:
0.0081
___________________________ test_declarative_titles ____________________________
Error: Image files did not match.
RMS Value: 11.646626702254464
Expected:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_titles/baseline.png
Actual:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_titles/result.png
Difference:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_titles/result-failed-diff.png
Tolerance:
0.094
_______________________ test_declarative_contour_options _______________________
Error: Image files did not match.
RMS Value: 25.92662523031745
Expected:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_contour_options/baseline.png
Actual:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_contour_options/result.png
Difference:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_contour_options/result-failed-diff.png
Tolerance:
0.74
____________________ test_declarative_contour_convert_units ____________________
Error: Image files did not match.
RMS Value: 19.374960161249366
Expected:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_contour_convert_units/baseline.png
Actual:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_contour_convert_units/result.png
Difference:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_contour_convert_units/result-failed-diff.png
Tolerance:
1.91
___________________________ test_declarative_events ____________________________
args = (), kwargs = {}
def wrapper(*args, **kwargs):
store.return_value[test_name] = obj(*args, **kwargs)
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/pytest_mpl/plugin.py:126:
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/testing.py:129: in wrapped
return test_func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/plots/test_declarative.py:508: in test_declarative_events
pc.draw()
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/plots/declarative.py:188: in draw
panel.draw()
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/plots/declarative.py:512: in draw
p.draw()
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/plots/declarative.py:892: in draw
self._build()
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/plots/declarative.py:1023: in _build
self.handle = self.parent.ax.imshow(imdata, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/mpl/geoaxes.py:291: in wrapper
return func(self, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/mpl/geoaxes.py:1298: in imshow
img, extent = warp_array(img,
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/img_transform.py:192: in warp_array
array = regrid(array, source_native_xy[0], source_native_xy[1],
array = array([[ 5.5236206 , 5.3517456 , 5.1173706 , ..., 0.8048706 ,
0.8204956 , 0.7267456 ],
[ 6.0236206...621 , 11.054871 , 10.429871 , ..., -0.5388794 ,
-0.3826294 , -0.4920044 ]], shape=(118, 292), dtype=float32)
source_x_coords = array([[-3960878.95108607, -3928527.1257436 , -3896175.30040114, ...,
5388798.57288653, 5421150.398229 , 5...36 , -3896175.30040114, ...,
5388798.57288653, 5421150.398229 , 5453502.22357147]],
shape=(118, 292))
source_y_coords = array([[-3070711.70153435, -3070711.70153435, -3070711.70153435, ...,
-3070711.70153435, -3070711.70153435, -3...514, 695271.40863514, ...,
695271.40863514, 695271.40863514, 695271.40863514]],
shape=(118, 292))
source_proj = <Projected CRS: +proj=lcc +ellps=sphere +a=6367470.21484375 +b=636 ...>
Name: unknown
Axis Info [cartesian]:
- E[east]... name: unknown
- method: Lambert Conic Conformal (1SP)
Datum: unknown
- Ellipsoid: unknown
- Prime Meridian: Greenwich
target_proj = <Projected CRS: +proj=lcc +ellps=WGS84 +lon_0=-100 +lat_0=40 +x_0= ...>
Name: unknown
Axis Info [cartesian]:
- E[east]...Lambert Conic Conformal (2SP)
Datum: Unknown based on WGS 84 ellipsoid
- Ellipsoid: WGS 84
- Prime Meridian: Greenwich
target_x_points = array([[-2108378.4890138 , -2103114.43898597, -2097850.38895813, ...,
4676981.99686554, 4682246.04689337, 4...97, -2097850.38895813, ...,
4676981.99686554, 4682246.04689337, 4687510.09692121]],
shape=(750, 1292))
target_y_points = array([[-2325378.48766728, -2325378.48766728, -2325378.48766728, ...,
-2325378.48766728, -2325378.48766728, -2...64, 1615665.69625064, ...,
1615665.69625064, 1615665.69625064, 1615665.69625064]],
shape=(750, 1292))
mask_extrapolated = True
def regrid(array, source_x_coords, source_y_coords, source_proj, target_proj,
target_x_points, target_y_points, mask_extrapolated=False):
"""
Regrid the data array from the source projection to the target projection.
Parameters
----------
array
The :class:`numpy.ndarray` of data to be regridded to the
target projection.
source_x_coords
A 2-dimensional source projection :class:`numpy.ndarray` of
x-direction sample points.
source_y_coords
A 2-dimensional source projection :class:`numpy.ndarray` of
y-direction sample points.
source_proj
The source :class:`~cartopy.crs.Projection` instance.
target_proj
The target :class:`~cartopy.crs.Projection` instance.
target_x_points
A 2-dimensional target projection :class:`numpy.ndarray` of
x-direction sample points.
target_y_points
A 2-dimensional target projection :class:`numpy.ndarray` of
y-direction sample points.
mask_extrapolated: optional
Assume that the source coordinate is rectilinear and so mask the
resulting target grid values which lie outside the source grid domain.
Defaults to False.
Returns
-------
new_array
The data array regridded in the target projection.
"""
# Stack our original xyz array, this will also wrap coords when necessary
xyz = source_proj.transform_points(source_proj,
source_x_coords.flatten(),
source_y_coords.flatten())
# Transform the target points into the source projection
target_xyz = source_proj.transform_points(target_proj,
target_x_points.flatten(),
target_y_points.flatten())
# Find mask of valid points before querying kdtree: scipy >= 1.11 errors
# when querying nan points, might as well use for pykdtree too.
indices = np.zeros(target_xyz.shape[0], dtype=int)
finite_xyz = np.all(np.isfinite(target_xyz), axis=-1)
if _is_pykdtree:
kdtree = _kdtreeClass(xyz)
# Use sqr_dists=True because we don't care about distances,
# and it saves a sqrt.
_, indices[finite_xyz] = kdtree.query(target_xyz[finite_xyz, :],
k=1,
sqr_dists=True)
else:
# Versions of scipy >= v0.16 added the balanced_tree argument,
# which caused the KDTree to hang with this input.
kdtree = _kdtreeClass(xyz, balanced_tree=False)
_, indices[finite_xyz] = kdtree.query(target_xyz[finite_xyz, :], k=1)
mask = ~finite_xyz | (indices >= len(xyz))
indices[mask] = 0
desired_ny, desired_nx = target_x_points.shape
# Squash the first two dims of the source array into one
temp_array = array.reshape((-1,) + array.shape[2:])
if np.any(mask):
new_array = np.ma.array(temp_array[indices])
new_array[mask] = np.ma.masked
else:
new_array = temp_array[indices]
new_array.shape = (desired_ny, desired_nx) + (array.shape[2:])
E DeprecationWarning: Setting the shape on a NumPy array has been deprecated in NumPy 2.5.
E As an alternative, you can create a new view using np.reshape (with copy=False if needed).
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/img_transform.py:301: DeprecationWarning
_________________________________ test_global __________________________________
Error: Image files did not match.
RMS Value: 8.45017274642622
Expected:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_global/baseline.png
Actual:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_global/result.png
Difference:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_global/result-failed-diff.png
Tolerance:
0.0012
_________________________________ test_latlon __________________________________
args = (), kwargs = {}
def wrapper(*args, **kwargs):
store.return_value[test_name] = obj(*args, **kwargs)
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/pytest_mpl/plugin.py:126:
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/testing.py:129: in wrapped
return test_func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/plots/test_declarative.py:858: in test_latlon
pc.draw()
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/plots/declarative.py:188: in draw
panel.draw()
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/plots/declarative.py:512: in draw
p.draw()
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/plots/declarative.py:892: in draw
self._build()
/opt/hostedtoolcache/Python/3.13.13/
The documentation build failed.
Details
python override_check.py
Override check successful.
�[01mRunning Sphinx v9.0.4�[39;49;00m
�[01mloading translations [en]... �[39;49;00mdone
�[01mmaking output directory... �[39;49;00mdone
Using Sphinx-Gallery to convert rst text blocks to markdown for .ipynb files.
Converting `source_suffix = ['.rst', '.md']` to `source_suffix = {'.rst': 'restructuredtext', '.md': 'restructuredtext'}`.
[autosummary] generating autosummary for: api/index.rst, api/references.rst, devel/CONTRIBUTING.md, devel/benchmarking.rst, devel/index.rst, devel/infrastructureguide.rst, devel/roadmap.rst, index.rst, userguide/SUPPORT.md, userguide/apichange.rst, userguide/citing.rst, userguide/gempak.rst, userguide/index.rst, userguide/installguide.rst, userguide/media.rst, userguide/startingguide.rst, userguide/upgradeguide.rst
[autosummary] generating autosummary for: /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.constants.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.interpolate.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.io.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.plots.ctables.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.plots.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.remote.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.units.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.xarray.rst
[autosummary] generating autosummary for: /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.absolute_momentum.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.absolute_vorticity.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.add_height_to_pressure.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.add_pressure_to_height.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.advection.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.ageostrophic_wind.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.altimeter_to_sea_level_pressure.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.altimeter_to_station_pressure.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.angle_to_direction.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.apparent_temperature.rst, ..., /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.plots.read_colortable.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.plots.scattertext.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.plots.wx_code_to_numeric.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.remote.GOESArchive.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.remote.MLWPArchive.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.remote.NEXRADLevel2Archive.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.remote.NEXRADLevel3Archive.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.units.pandas_dataframe_to_unit_arrays.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.units.setup_registry.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.xarray.grid_deltas_from_dataarray.rst
loading intersphinx inventory 'cartopy' from https://cartopy.readthedocs.io/stable/objects.inv ...
loading intersphinx inventory 'matplotlib' from https://matplotlib.org/stable/objects.inv ...
loading intersphinx inventory 'numpy' from https://numpy.org/doc/stable/objects.inv ...
loading intersphinx inventory 'pandas' from https://pandas.pydata.org/docs/objects.inv ...
loading intersphinx inventory 'pint' from https://pint.readthedocs.io/en/stable/objects.inv ...
loading intersphinx inventory 'pyproj' from https://pyproj4.github.io/pyproj/stable/objects.inv ...
loading intersphinx inventory 'python' from https://docs.python.org/3/objects.inv ...
loading intersphinx inventory 'scipy' from https://docs.scipy.org/doc/scipy/objects.inv ...
loading intersphinx inventory 'xarray' from https://docs.xarray.dev/en/stable/objects.inv ...
�[97mgenerating gallery...�[39;49;00m
�[2K�[01mgenerating gallery for examples... �[39;49;00m[ 12%] �[32mXArray_Projections.py�[39;49;00m
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/10m_physical/ne_10m_coastline.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/10m_physical/ne_10m_lakes.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/10m_physical/ne_10m_rivers_lake_centerlines.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
�[2K�[01mgenerating gallery for examples... �[39;49;00m[ 25%] �[32msigma_to_pressure_interpolation.py�[39;49;00m
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/50m_physical/ne_50m_coastline.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/10m_cultural/ne_10m_admin_1_states_provinces_lakes.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
�[2K�[01mgenerating gallery for examples... �[39;49;00m[ 38%] �[32mAdvanced_Sounding.py�[39;49;00m
�[2K�[01mgenerating gallery for examples... �[39;49;00m[ 50%] �[32mcross_section.py�[39;49;00m
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/50m_cultural/ne_50m_admin_1_states_provinces_lakes.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
�[2K�[01mgenerating gallery for examples... �[39;49;00m[ 62%] �[32mFour_Panel_Map.py�[39;49;00m
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/50m_cultural/ne_50m_admin_0_boundary_lines_land.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
�[2K�[01mgenerating gallery for examples... �[39;49;00m[ 75%] �[32misentropic_example.py�[39;49;00m
�[2K�[01mgenerating gallery for examples... �[39;49;00m[ 88%] �[32mmeteogram_metpy.py�[39;49;00m
�[2K�[01mgenerating gallery for examples... �[39;49;00m[100%] �[32mAdvanced_Sounding_With_Complex_Layout.py�[39;49;00m
Ignoring fixed x limits to fulfill fixed data aspect with adjustable data limits.
Ignoring fixed x limits to fulfill fixed data aspect with adjustable data limits.
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 5%] �[32mParse_Angles.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 9%] �[32mDewpoint_and_Mixing_Ratio.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 14%] �[32mAngle_to_Direction.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 18%] �[32mWind_Speed.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 23%] �[32mDivergence.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 27%] �[32mVorticity.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 32%] �[32mAbsolute_Vorticity.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 36%] �[32mTotal_Deformation.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 41%] �[32mShearing_Deformation.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 45%] �[32mStretching_Deformation.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 50%] �[32mStatic_Stability.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 55%] �[32mMean_Pressure_Weighted.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 59%] �[32mMountain_Problem.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 64%] �[32mBulk_Shear.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 68%] �[32mThickness_Hydrostatic.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 73%] �[32mEquivalent_Potential_Temperature.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 77%] �[32mAdvection.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 82%] �[32mGradient.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 86%] �[32mQVector.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 91%] �[32mSmoothing.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 95%] �[32mHigh_Low_Analysis.py�[39;49;00m
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/init.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/110m_physical/ne_110m_ocean.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/init.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/110m_physical/ne_110m_land.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/init.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/110m_physical/ne_110m_coastline.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
�[91mWARNING:
�[01m�[91m../examples/calculations/High_Low_Analysis.py�[39;49;00m�[39;49;00m unexpectedly failed to execute correctly:
�[91m Traceback (most recent call last):
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/sphinx_gallery/scrapers.py", line 417, in save_figures
rst = scraper(block, block_vars, gallery_conf)
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/sphinx_gallery/scrapers.py", line 195, in matplotlib_scraper
fig.savefig(image_path, **these_kwargs)
~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/figure.py", line 3515, in savefig
self.canvas.print_figure(fname, **kwargs)
~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/backend_bases.py", line 2281, in print_figure
result = print_method(
filename,
...<3 lines>...
bbox_inches_restore=_bbox_inches_restore,
**kwargs)
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/backend_bases.py", line 2138, in
print_method = functools.wraps(meth)(lambda *args, **kwargs: meth(
~~~~^
*args, **{k: v for k, v in kwargs.items() if k not in skip}))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/backends/backend_agg.py", line 537, in print_png
self._print_pil(filename_or_obj, "png", pil_kwargs, metadata)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/backends/backend_agg.py", line 485, in _print_pil
FigureCanvasAgg.draw(self)
~~~~~~~~~~~~~~~~~~~~^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/backends/backend_agg.py", line 438, in draw
self.figure.draw(self.renderer)
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/artist.py", line 94, in draw_wrapper
result = draw(artist, renderer, *args, **kwargs)
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/artist.py", line 71, in draw_wrapper
return draw(artist, renderer)
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/figure.py", line 3282, in draw
mimage._draw_list_compositing_images(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
renderer, self, artists, self.suppressComposite)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/image.py", line 133, in _draw_list_compositing_images
a.draw(renderer)
~~~~~~^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/artist.py", line 71, in draw_wrapper
return draw(artist, renderer)
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/mpl/geoaxes.py", line 509, in draw
return super().draw(renderer=renderer, **kwargs)
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/artist.py", line 71, in draw_wrapper
return draw(artist, renderer)
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/axes/_base.py", line 3350, in draw
mimage._draw_list_compositing_images(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
renderer, self, artists, self.get_figure(root=True).suppressComposite)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/image.py", line 133, in _draw_list_compositing_images
a.draw(renderer)
~~~~~~^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/artist.py", line 71, in draw_wrapper
return draw(artist, renderer)
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/plots/text.py", line 233, in draw
for line, _, x, y in info:
^^^^^^^^^^^^^
ValueError: not enough values to unpack (expected 4, got 3)
�[39;49;00m�[39;49;00m
�[91mExtension error (sphinx_gallery.gen_gallery)!�[39;49;00m
Versions
- Platform: linux; (Linux-6.17.0-1015-azure-x86_64-with-glibc2.39)
- Python version: 3.13.13 (CPython)
- Sphinx version: 9.0.4
- Docutils version: 0.22.4
- Jinja2 version: 3.1.6
- Pygments version: 2.20.0
Last Messages
None.
Loaded Extensions
None.
Traceback
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/sphinx/events.py", line 452, in emit
raise ExtensionError(
...<3 lines>...
) from exc
sphinx.errors.ExtensionError: Handler <function generate_gallery_rst at 0x7fb4ced9bba0> for event 'builder-inited' threw an exception (exception: not enough values to unpack (expected 4, got 3))
The full traceback has been saved in:
/tmp/sphinx-err-sfz016ux.log
To report this error to the developers, please open an issue at https://github.com/sphinx-doc/sphinx/issues/. Thanks!
Please also report this if it was a user error, so that a better error message can be provided next time.
make: *** [Makefile:34: html] Error 2
The Nightly workflow is failing.
The tests failed.
Log:
Details
time ...[[...
v_wind (time, isobaric, index) float64 280B Quantity(array([[...
lambert_conformal <U1 4B ''
def test_absolute_momentum_given_xy(test_cross_xy):
"""Test absolute momentum calculation."""
momentum = absolute_momentum(test_cross_xy['u_wind'], test_cross_xy['v_wind'])
true_momentum_values = np.array([[[169.22222693, 146.36354006, 145.75559124, 171.8710635,
215.04876817, 265.73797007, 318.34138347],
[156.27520858, 133.32107346, 132.62636169, 158.66828331,
201.78218117, 252.41370282, 304.96242462],
[143.32819023, 120.27860686, 119.49713214, 145.46550311,
188.51559418, 239.08943557, 291.58346576],
[130.38117188, 107.23614026, 106.36790259, 132.26272292,
175.24900718, 225.76516831, 278.20450691],
[117.43415353, 94.19367366, 93.23867305, 119.05994273,
161.98242018, 212.44090106, 264.82554806]]])
true_momentum = xr.DataArray(true_momentum_values * units('m/s'),
coords=test_cross_xy['u_wind'].coords,
dims=test_cross_xy['u_wind'].dims)
tests/calc/test_cross_sections.py:323:
actual = <xarray.DataArray (time: 1, isobaric: 5, index: 7)> Size: 280B
Quantity(array([[[169.22221086, 146.36352646, 145.75557...rs object 8B Projection: lambert_conformal_conic
Attributes:
grid_mapping: lambert_conformal
_metpy_axis: x
desired = <xarray.DataArray (time: 1, isobaric: 5, index: 7)> Size: 280B
Quantity(array([[[169.22222693, 146.36354006, 145.75559...dex) float64 56B -1.5e+06 -1.269e+06 ... -2.677e+05 -939.1
metpy_crs object 8B Projection: lambert_conformal_conic
E AssertionError
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/testing.py:338: AssertionError
___________________ test_absolute_momentum_xarray_units_attr ___________________
tests/calc/test_cross_sections.py:343:
actual = <xarray.DataArray (index: 3)> Size: 24B
Quantity(array([137.46164031, 134.11450232, 133.85196023]), "meter / second")
... grid_spacing: 32.463 km
_CoordinateAxisType: GeoX
_metpy_axis: x
desired = <xarray.DataArray (index: 3)> Size: 24B
Quantity(array([137.46164031, 134.11450232, 133.85196023]), "meter / second")
...ns] 8B 1987-04-04T18:00:00
isobaric float64 8B 1e+03
metpy_crs object 8B Projection: lambert_conformal_conic
E AssertionError
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/testing.py:338: AssertionError
____________________________ test_declarative_image ____________________________
Error: Image files did not match.
RMS Value: 0.40733636796469164
Expected:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_image/baseline.png
Actual:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_image/result.png
Difference:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_image/result-failed-diff.png
Tolerance:
0.0081
___________________________ test_declarative_titles ____________________________
Error: Image files did not match.
RMS Value: 11.646626702254464
Expected:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_titles/baseline.png
Actual:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_titles/result.png
Difference:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_titles/result-failed-diff.png
Tolerance:
0.094
_______________________ test_declarative_contour_options _______________________
Error: Image files did not match.
RMS Value: 25.92662523031745
Expected:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_contour_options/baseline.png
Actual:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_contour_options/result.png
Difference:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_contour_options/result-failed-diff.png
Tolerance:
0.74
____________________ test_declarative_contour_convert_units ____________________
Error: Image files did not match.
RMS Value: 19.374960161249366
Expected:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_contour_convert_units/baseline.png
Actual:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_contour_convert_units/result.png
Difference:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_declarative_contour_convert_units/result-failed-diff.png
Tolerance:
1.91
___________________________ test_declarative_events ____________________________
args = (), kwargs = {}
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/pytest_mpl/plugin.py:126:
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/testing.py:129: in wrapped
return test_func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/plots/test_declarative.py:508: in test_declarative_events
pc.draw()
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/plots/declarative.py:188: in draw
panel.draw()
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/plots/declarative.py:512: in draw
p.draw()
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/plots/declarative.py:892: in draw
self._build()
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/plots/declarative.py:1023: in _build
self.handle = self.parent.ax.imshow(imdata, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/mpl/geoaxes.py:291: in wrapper
return func(self, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/mpl/geoaxes.py:1298: in imshow
img, extent = warp_array(img,
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/img_transform.py:192: in warp_array
array = regrid(array, source_native_xy[0], source_native_xy[1],
array = array([[ 5.5236206 , 5.3517456 , 5.1173706 , ..., 0.8048706 ,
0.8204956 , 0.7267456 ],
[ 6.0236206...621 , 11.054871 , 10.429871 , ..., -0.5388794 ,
-0.3826294 , -0.4920044 ]], shape=(118, 292), dtype=float32)
source_x_coords = array([[-3960878.95108607, -3928527.1257436 , -3896175.30040114, ...,
5388798.57288653, 5421150.398229 , 5...36 , -3896175.30040114, ...,
5388798.57288653, 5421150.398229 , 5453502.22357147]],
shape=(118, 292))
source_y_coords = array([[-3070711.70153435, -3070711.70153435, -3070711.70153435, ...,
-3070711.70153435, -3070711.70153435, -3...514, 695271.40863514, ...,
695271.40863514, 695271.40863514, 695271.40863514]],
shape=(118, 292))
source_proj = <Projected CRS: +proj=lcc +ellps=sphere +a=6367470.21484375 +b=636 ...>
Name: unknown
Axis Info [cartesian]:
Datum: unknown
target_proj = <Projected CRS: +proj=lcc +ellps=WGS84 +lon_0=-100 +lat_0=40 +x_0= ...>
Name: unknown
Axis Info [cartesian]:
Datum: Unknown based on WGS 84 ellipsoid
target_x_points = array([[-2108378.4890138 , -2103114.43898597, -2097850.38895813, ...,
4676981.99686554, 4682246.04689337, 4...97, -2097850.38895813, ...,
4676981.99686554, 4682246.04689337, 4687510.09692121]],
shape=(750, 1292))
target_y_points = array([[-2325378.48766728, -2325378.48766728, -2325378.48766728, ...,
-2325378.48766728, -2325378.48766728, -2...64, 1615665.69625064, ...,
1615665.69625064, 1615665.69625064, 1615665.69625064]],
shape=(750, 1292))
mask_extrapolated = True
E DeprecationWarning: Setting the shape on a NumPy array has been deprecated in NumPy 2.5.
E As an alternative, you can create a new view using np.reshape (with copy=False if needed).
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/img_transform.py:301: DeprecationWarning
_________________________________ test_global __________________________________
Error: Image files did not match.
RMS Value: 8.45017274642622
Expected:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_global/baseline.png
Actual:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_global/result.png
Difference:
/home/runner/work/MetPy/MetPy/test_output/test_declarative.test_global/result-failed-diff.png
Tolerance:
0.0012
_________________________________ test_latlon __________________________________
args = (), kwargs = {}
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/pytest_mpl/plugin.py:126:
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/testing.py:129: in wrapped
return test_func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/plots/test_declarative.py:858: in test_latlon
pc.draw()
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/plots/declarative.py:188: in draw
panel.draw()
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/plots/declarative.py:512: in draw
p.draw()
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/plots/declarative.py:892: in draw
self._build()
/opt/hostedtoolcache/Python/3.13.13/
Log:
Details
python override_check.py Override check successful. �[01mRunning Sphinx v9.0.4�[39;49;00m �[01mloading translations [en]... �[39;49;00mdone �[01mmaking output directory... �[39;49;00mdone Using Sphinx-Gallery to convert rst text blocks to markdown for .ipynb files. Converting `source_suffix = ['.rst', '.md']` to `source_suffix = {'.rst': 'restructuredtext', '.md': 'restructuredtext'}`. [autosummary] generating autosummary for: api/index.rst, api/references.rst, devel/CONTRIBUTING.md, devel/benchmarking.rst, devel/index.rst, devel/infrastructureguide.rst, devel/roadmap.rst, index.rst, userguide/SUPPORT.md, userguide/apichange.rst, userguide/citing.rst, userguide/gempak.rst, userguide/index.rst, userguide/installguide.rst, userguide/media.rst, userguide/startingguide.rst, userguide/upgradeguide.rst [autosummary] generating autosummary for: /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.constants.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.interpolate.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.io.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.plots.ctables.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.plots.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.remote.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.units.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.xarray.rst [autosummary] generating autosummary for: /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.absolute_momentum.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.absolute_vorticity.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.add_height_to_pressure.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.add_pressure_to_height.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.advection.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.ageostrophic_wind.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.altimeter_to_sea_level_pressure.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.altimeter_to_station_pressure.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.angle_to_direction.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.calc.apparent_temperature.rst, ..., /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.plots.read_colortable.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.plots.scattertext.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.plots.wx_code_to_numeric.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.remote.GOESArchive.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.remote.MLWPArchive.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.remote.NEXRADLevel2Archive.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.remote.NEXRADLevel3Archive.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.units.pandas_dataframe_to_unit_arrays.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.units.setup_registry.rst, /home/runner/work/MetPy/MetPy/docs/api/generated/metpy.xarray.grid_deltas_from_dataarray.rst loading intersphinx inventory 'cartopy' from https://cartopy.readthedocs.io/stable/objects.inv ... loading intersphinx inventory 'matplotlib' from https://matplotlib.org/stable/objects.inv ... loading intersphinx inventory 'numpy' from https://numpy.org/doc/stable/objects.inv ... loading intersphinx inventory 'pandas' from https://pandas.pydata.org/docs/objects.inv ... loading intersphinx inventory 'pint' from https://pint.readthedocs.io/en/stable/objects.inv ... loading intersphinx inventory 'pyproj' from https://pyproj4.github.io/pyproj/stable/objects.inv ... loading intersphinx inventory 'python' from https://docs.python.org/3/objects.inv ... loading intersphinx inventory 'scipy' from https://docs.scipy.org/doc/scipy/objects.inv ... loading intersphinx inventory 'xarray' from https://docs.xarray.dev/en/stable/objects.inv ... �[97mgenerating gallery...�[39;49;00m �[2K�[01mgenerating gallery for examples... �[39;49;00m[ 12%] �[32mXArray_Projections.py�[39;49;00m /opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/10m_physical/ne_10m_coastline.zip warnings.warn(f'Downloading: {url}', DownloadWarning) /opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/10m_physical/ne_10m_lakes.zip warnings.warn(f'Downloading: {url}', DownloadWarning) /opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/10m_physical/ne_10m_rivers_lake_centerlines.zip warnings.warn(f'Downloading: {url}', DownloadWarning) �[2K�[01mgenerating gallery for examples... �[39;49;00m[ 25%] �[32msigma_to_pressure_interpolation.py�[39;49;00m /opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/50m_physical/ne_50m_coastline.zip warnings.warn(f'Downloading: {url}', DownloadWarning) /opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/10m_cultural/ne_10m_admin_1_states_provinces_lakes.zip warnings.warn(f'Downloading: {url}', DownloadWarning) �[2K�[01mgenerating gallery for examples... �[39;49;00m[ 38%] �[32mAdvanced_Sounding.py�[39;49;00m �[2K�[01mgenerating gallery for examples... �[39;49;00m[ 50%] �[32mcross_section.py�[39;49;00m /opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/50m_cultural/ne_50m_admin_1_states_provinces_lakes.zip warnings.warn(f'Downloading: {url}', DownloadWarning) �[2K�[01mgenerating gallery for examples... �[39;49;00m[ 62%] �[32mFour_Panel_Map.py�[39;49;00m /opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/50m_cultural/ne_50m_admin_0_boundary_lines_land.zip warnings.warn(f'Downloading: {url}', DownloadWarning) �[2K�[01mgenerating gallery for examples... �[39;49;00m[ 75%] �[32misentropic_example.py�[39;49;00m �[2K�[01mgenerating gallery for examples... �[39;49;00m[ 88%] �[32mmeteogram_metpy.py�[39;49;00m �[2K�[01mgenerating gallery for examples... �[39;49;00m[100%] �[32mAdvanced_Sounding_With_Complex_Layout.py�[39;49;00m Ignoring fixed x limits to fulfill fixed data aspect with adjustable data limits. Ignoring fixed x limits to fulfill fixed data aspect with adjustable data limits.�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 5%] �[32mParse_Angles.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 9%] �[32mDewpoint_and_Mixing_Ratio.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 14%] �[32mAngle_to_Direction.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 18%] �[32mWind_Speed.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 23%] �[32mDivergence.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 27%] �[32mVorticity.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 32%] �[32mAbsolute_Vorticity.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 36%] �[32mTotal_Deformation.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 41%] �[32mShearing_Deformation.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 45%] �[32mStretching_Deformation.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 50%] �[32mStatic_Stability.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 55%] �[32mMean_Pressure_Weighted.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 59%] �[32mMountain_Problem.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 64%] �[32mBulk_Shear.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 68%] �[32mThickness_Hydrostatic.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 73%] �[32mEquivalent_Potential_Temperature.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 77%] �[32mAdvection.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 82%] �[32mGradient.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 86%] �[32mQVector.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 91%] �[32mSmoothing.py�[39;49;00m
�[2K�[01mgenerating gallery for examples/calculations... �[39;49;00m[ 95%] �[32mHigh_Low_Analysis.py�[39;49;00m
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/init.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/110m_physical/ne_110m_ocean.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/init.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/110m_physical/ne_110m_land.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/io/init.py:242: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/110m_physical/ne_110m_coastline.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
�[91mWARNING:
�[01m�[91m../examples/calculations/High_Low_Analysis.py�[39;49;00m�[39;49;00m unexpectedly failed to execute correctly:
�[91m Traceback (most recent call last):
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/sphinx_gallery/scrapers.py", line 417, in save_figures
rst = scraper(block, block_vars, gallery_conf)
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/sphinx_gallery/scrapers.py", line 195, in matplotlib_scraper
fig.savefig(image_path, **these_kwargs)
~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/figure.py", line 3515, in savefig
self.canvas.print_figure(fname, **kwargs)
~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/backend_bases.py", line 2281, in print_figure
result = print_method(
filename,
...<3 lines>...
bbox_inches_restore=_bbox_inches_restore,
**kwargs)
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/backend_bases.py", line 2138, in
print_method = functools.wraps(meth)(lambda *args, **kwargs: meth(
~~~~^
*args, **{k: v for k, v in kwargs.items() if k not in skip}))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/backends/backend_agg.py", line 537, in print_png
self._print_pil(filename_or_obj, "png", pil_kwargs, metadata)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/backends/backend_agg.py", line 485, in _print_pil
FigureCanvasAgg.draw(self)
~~~~~~~~~~~~~~~~~~~~^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/backends/backend_agg.py", line 438, in draw
self.figure.draw(self.renderer)
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/artist.py", line 94, in draw_wrapper
result = draw(artist, renderer, *args, **kwargs)
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/artist.py", line 71, in draw_wrapper
return draw(artist, renderer)
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/figure.py", line 3282, in draw
mimage._draw_list_compositing_images(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
renderer, self, artists, self.suppressComposite)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/image.py", line 133, in _draw_list_compositing_images
a.draw(renderer)
~~~~~~^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/artist.py", line 71, in draw_wrapper
return draw(artist, renderer)
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/cartopy/mpl/geoaxes.py", line 509, in draw
return super().draw(renderer=renderer, **kwargs)
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/artist.py", line 71, in draw_wrapper
return draw(artist, renderer)
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/axes/_base.py", line 3350, in draw
mimage._draw_list_compositing_images(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
renderer, self, artists, self.get_figure(root=True).suppressComposite)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/image.py", line 133, in _draw_list_compositing_images
a.draw(renderer)
~~~~~~^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/matplotlib/artist.py", line 71, in draw_wrapper
return draw(artist, renderer)
File "/opt/hostedtoolcache/Python/3.13.13/x64/lib/python3.13/site-packages/metpy/plots/text.py", line 233, in draw
for line, _, x, y in info:
^^^^^^^^^^^^^
ValueError: not enough values to unpack (expected 4, got 3)
�[39;49;00m�[39;49;00m
�[91mExtension error (sphinx_gallery.gen_gallery)!�[39;49;00m
Versions
Last Messages
None.
Loaded Extensions
None.
Traceback
The full traceback has been saved in:
/tmp/sphinx-err-sfz016ux.log
To report this error to the developers, please open an issue at https://github.com/sphinx-doc/sphinx/issues/. Thanks!
Please also report this if it was a user error, so that a better error message can be provided next time.
make: *** [Makefile:34: html] Error 2
Linkchecker output:
Details