-
Notifications
You must be signed in to change notification settings - Fork 444
Description
The Nightly workflow is failing.
The tests failed.
Log:
Details
============================= test session starts ============================== platform linux -- Python 3.13.11, pytest-9.0.0, pluggy-1.6.0 Matplotlib: 3.10.8 Freetype: 2.6.1 Dep Versions: Cartopy: 0.24.0, Dask: 2025.12.0, Matplotlib: 3.10.8, Numpy: 2.4.0, Pandas: 3.0.0rc1, Pint: 0.25.2.dev3+g9325ea272, Pooch: v1.8.2, Pyproj: 3.7.2, Scipy: 1.17.0rc2, Shapely: 2.1.2, Traitlets: 5.14.3, Xarray: 2025.12.1.dev30+g29ed0e650 rootdir: /home/runner/work/MetPy/MetPy configfile: pyproject.toml plugins: mpl-0.18.0 collected 1632 itemstests/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%]
..................................... [ 40%]
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 ........................ [ 48%]
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.......... [ 69%]
.......................................... [ 71%]
tests/plots/test_mapping.py ........................ [ 73%]
tests/plots/test_patheffects.py ........ [ 73%]
tests/plots/test_plot_areas.py ..... [ 74%]
tests/plots/test_plot_text.py ... [ 74%]
tests/plots/test_skewt.py .............................................. [ 77%]
............ [ 77%]
tests/plots/test_station_plot.py .......................... [ 79%]
tests/plots/test_util.py .............. [ 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 .....................................x.. [100%]=================================== FAILURES ===================================
_______________________ test_absolute_momentum_given_xy ________________________test_cross_xy = <xarray.Dataset> Size: 788B
Dimensions: (time: 1, isobaric: 5, index: 7)
Coordinates:
-
time ...4....
v_wind (time, isobaric, index) float64 280B <Quantity([[[ 24....
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([[[169.22221086 146.36352646 145.75557749 171...t64 56B -1.5e+06 -1.269e+06 ... -2.677e+05 -939.1
Attributes:
grid_mapping: lambert_conformal
_metpy_axis: x
desired = <xarray.DataArray (time: 1, isobaric: 5, index: 7)> Size: 280B
<Quantity([[[169.22222693 146.36354006 145.75559124 171...6B -4.995e+05 9.84e+04 ... 2.428e+06 3e+06
y (index) float64 56B -1.5e+06 -1.269e+06 ... -2.677e+05 -939.1
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.11/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([137.46164031 134.11450232 133.85196023], 'meter / second')>
Coordin... grid_spacing: 32.463 km
_CoordinateAxisType: GeoX
_metpy_axis: x
desired = <xarray.DataArray (index: 3)> Size: 24B
<Quantity([137.46164031 134.11450232 133.85196023], 'meter / second')>
Coordin... (index) float64 24B 1.818e+05 2.18e+05 2.541e+05
y (index) float64 24B -1.454e+06 -1.447e+06 -1.44e+06
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.11/x64/lib/python3.13/site-packages/metpy/testing.py:338: AssertionError
_________________________________ test_latlon __________________________________
args = (), kwargs = {}
def wrapper(*args, **kwargs):
store.return_value[test_name] = obj(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/pytest_mpl/plugin.py:126:
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/metpy/testing.py:129: in wrapped
return test_func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/plots/test_declarative.py:856: in test_latlon
pc.draw()
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/metpy/plots/declarative.py:188: in draw
panel.draw()
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/metpy/plots/declarative.py:512: in draw
p.draw()
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/metpy/plots/declarative.py:892: in draw
self._build()
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/metpy/plots/declarative.py:1009: in _build
x_like, y_like, imdata = self.plotdata
^^^^^^^^^^^^^
self = <metpy.plots.ImagePlot object at 0x7f99e0110510>
@property
def plotdata(self):
"""Return the data for plotting.
The two dimension coordinates and the data array
"""
x_like = self.griddata[self.griddata.dims[1]]
# At least currently imshow with cartopy does not like this
if 'degree' in x_like.units:
x_like = x_like.data
x_like[x_like > 180] -= 360
^^^^^^^^^^^^^^^^^^^^
E ValueError: assignment destination is read-only
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/metpy/plots/declarative.py:1003: ValueError
____________________________ test_dataset_quantify _____________________________
test_ds_generic = <xarray.Dataset> Size: 2kB
Dimensions: (a: 1, b: 3, c: 3, d: 5, e: 5)
Coordinates:
-
a (a) int64 8B 0
-
b ...e) int64 40B 0 1 2 3 4
Data variables:
test (a, b, c, d, e) float64 2kB 0.0 0.0 0.0 0.0 0.0 ... 0.0 0.0 0.0 0.0def test_dataset_quantify(test_ds_generic):
"""Test quantify method for converting data to Quantity on Datasets."""
result = test_ds_generic.metpy.quantify()
assert is_quantity(result['test'].data)
assert result['test'].data.units == units.kelvin
assert 'units' not in result['test'].attrs
E AssertionError: assert 'units' not in {'units': 'kelvin'}
E + where {'units': 'kelvin'} = <xarray.DataArray 'test' (a: 1, b: 3, c: 3, d: 5, e: 5)> Size: 2kB\n<Quantity([[[[[0. 0. 0. 0. 0.]\n [0. 0. 0. 0. 0.]...64 24B 0 1 2\n * d (d) int64 40B 0 1 2 3 4\n * e (e) int64 40B 0 1 2 3 4\nAttributes:\n units: kelvin.attrs
tests/test_xarray.py:217: AssertionError
___________________________ test_dataset_dequantify ____________________________
def test_dataset_dequantify():
"""Test dequantify method for converting data away from Quantity on Datasets."""
original = xr.Dataset({
'test': ('x', units.Quantity([280, 290, 300], 'K')),
'x': np.arange(3)
}, attrs={'test': 'test'})
result = original.metpy.dequantify()
assert isinstance(result['test'].data, np.ndarray)
assert result['test'].attrs['units'] == 'kelvin'
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E KeyError: 'units'
tests/test_xarray.py:233: KeyError
_______________________ test_update_attribute_dictionary _______________________
test_ds_generic = <xarray.Dataset> Size: 2kB
Dimensions: (a: 1, b: 3, c: 3, d: 5, e: 5)
Coordinates:
-
a (a) int64 8B 0
-
b ...e) int64 40B 0 1 2 3 4
Data variables:
test (a, b, c, d, e) float64 2kB 0.0 0.0 0.0 0.0 0.0 ... 0.0 0.0 0.0 0.0def test_update_attribute_dictionary(test_ds_generic):
"""Test update_attribute using dictionary."""
descriptions = {
'test': 'Filler data',
'c': 'The third coordinate'
}
test_ds_generic.c.attrs['units'] = 'K'
test_ds_generic.a.attrs['standard_name'] = 'air_temperature'
result = test_ds_generic.metpy.update_attribute('description', descriptions)# Test attribute updates assert 'description' not in result['a'].attrs assert 'description' not in result['b'].attrs assert result['c'].attrs['description'] == 'The third coordinate' assert 'description' not in result['d'].attrs assert 'description' not in result['e'].attrs
assert result['test'].attrs['description'] == 'Filler data'
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E KeyError: 'description'
tests/test_xarray.py:1116: KeyError
________________________ test_update_attribute_callable ________________________
test_ds_generic = <xarray.Dataset> Size: 2kB
Dimensions: (a: 1, b: 3, c: 3, d: 5, e: 5)
Coordinates:
-
a (a) int64 8B 0
-
b ...e) int64 40B 0 1 2 3 4
Data variables:
test (a, b, c, d, e) float64 2kB 0.0 0.0 0.0 0.0 0.0 ... 0.0 0.0 0.0 0.0def test_update_attribute_callable(test_ds_generic):
"""Test update_attribute using callable."""
def even_ascii(varname, **kwargs):
return 'yes' if ord(varname[0]) % 2 == 0 else Noneresult = test_ds_generic.metpy.update_attribute('even', even_ascii) # Test attribute updates assert 'even' not in result['a'].attrs assert result['b'].attrs['even'] == 'yes' assert 'even' not in result['c'].attrs assert result['d'].attrs['even'] == 'yes' assert 'even' not in result['e'].attrs
assert result['test'].attrs['even'] == 'yes'
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E KeyError: 'even'
tests/test_xarray.py:1140: KeyError
=========================== short test summary info ============================
FAILED tests/calc/test_cross_sections.py::test_absolute_momentum_given_xy - AssertionError
FAILED tests/calc/test_cross_sections.py::test_absolute_momentum_xarray_units_attr - AssertionError
FAILED tests/plots/test_declarative.py::test_latlon - ValueError: assignment destination is read-only
FAILED tests/test_xarray.py::test_dataset_quantify - AssertionError: assert 'units' not in {'units': 'kelvin'}
- where {'units': 'kelvin'} = <xarray.DataArray 'test' (a: 1, b: 3, c: 3, d: 5, e: 5)> Size: 2kB\n<Quantity([[[[[0. 0. 0. 0. 0.]\n [0. 0. 0. 0. 0.]...64 24B 0 1 2\n * d (d) int64 40B 0 1 2 3 4\n * e (e) int64 40B 0 1 2 3 4\nAttributes:\n units: kelvin.attrs
FAILED tests/test_xarray.py::test_dataset_dequantify - KeyError: 'units'
FAILED tests/test_xarray.py::test_update_attribute_dictionary - KeyError: 'description'
FAILED tests/test_xarray.py::test_update_attribute_callable - KeyError: 'even'
============ 7 failed, 1624 passed, 1 xfailed in 367.71s (0:06:07) =============
Log:
Details
python override_check.py
Override check successful.
Running Sphinx v8.1.3
loading translations [en]... done
making output directory... done
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 ...
generating gallery...
generating gallery for examples... [ 12%] XArray_Projections.py
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:241: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/10m_physical/ne_10m_coastline.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:241: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/10m_physical/ne_10m_lakes.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:241: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/10m_physical/ne_10m_rivers_lake_centerlines.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
generating gallery for examples... [ 25%] sigma_to_pressure_interpolation.py
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:241: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/50m_physical/ne_50m_coastline.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:241: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/10m_cultural/ne_10m_admin_1_states_provinces_lakes.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
generating gallery for examples... [ 38%] Advanced_Sounding.py
generating gallery for examples... [ 50%] cross_section.py
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:241: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/50m_cultural/ne_50m_admin_1_states_provinces_lakes.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
generating gallery for examples... [ 62%] Four_Panel_Map.py
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/cartopy/io/__init__.py:241: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/50m_cultural/ne_50m_admin_0_boundary_lines_land.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
generating gallery for examples... [ 75%] isentropic_example.py
generating gallery for examples... [ 88%] meteogram_metpy.py
generating gallery for examples... [100%] Advanced_Sounding_With_Complex_Layout.py
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.
generating gallery for examples/calculations... [ 5%] Parse_Angles.py
generating gallery for examples/calculations... [ 9%] Dewpoint_and_Mixing_Ratio.py
generating gallery for examples/calculations... [ 14%] Angle_to_Direction.py
generating gallery for examples/calculations... [ 18%] Wind_Speed.py
generating gallery for examples/calculations... [ 23%] Divergence.py
generating gallery for examples/calculations... [ 27%] Vorticity.py
generating gallery for examples/calculations... [ 32%] Absolute_Vorticity.py
generating gallery for examples/calculations... [ 36%] Total_Deformation.py
generating gallery for examples/calculations... [ 41%] Shearing_Deformation.py
generating gallery for examples/calculations... [ 45%] Stretching_Deformation.py
generating gallery for examples/calculations... [ 50%] Static_Stability.py
generating gallery for examples/calculations... [ 55%] Mean_Pressure_Weighted.py
generating gallery for examples/calculations... [ 59%] Mountain_Problem.py
generating gallery for examples/calculations... [ 64%] Bulk_Shear.py
generating gallery for examples/calculations... [ 68%] Thickness_Hydrostatic.py
generating gallery for examples/calculations... [ 73%] Equivalent_Potential_Temperature.py
generating gallery for examples/calculations... [ 77%] Advection.py
generating gallery for examples/calculations... [ 82%] Gradient.py
generating gallery for examples/calculations... [ 86%] QVector.py
generating gallery for examples/calculations... [ 91%] Smoothing.py
generating gallery for examples/calculations... [ 95%] High_Low_Analysis.py
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/cartopy/io/init.py:241: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/110m_physical/ne_110m_ocean.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/cartopy/io/init.py:241: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/110m_physical/ne_110m_land.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/cartopy/io/init.py:241: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/110m_physical/ne_110m_coastline.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
generating gallery for examples/calculations... [100%] Sounding_Calculations.py
generating gallery for examples/formats... [ 33%] GINI_Water_Vapor.py
generating gallery for examples/formats... [ 67%] NEXRAD_Level_3_File.py
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.
generating gallery for examples/formats... [100%] NEXRAD_Level_2_File.py
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.
generating gallery for examples/gridding... [ 20%] Find_Natural_Neighbors_Verification.py
generating gallery for examples/gridding... [ 40%] Wind_SLP_Interpolation.py
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/cartopy/io/init.py:241: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/50m_physical/ne_50m_ocean.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
generating gallery for examples/gridding... [ 60%] Point_Interpolation.py
generating gallery for examples/gridding... [ 80%] Inverse_Distance_Verification.py
Ignoring fixed y limits to fulfill fixed data aspect with adjustable data limits.
Ignoring fixed x limits to fulfill fixed data aspect with adjustable data limits.
generating gallery for examples/gridding... [100%] Natural_Neighbor_Verification.py
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.
Ignoring fixed x limits to fulfill fixed data aspect with adjustable data limits.
generating gallery for examples/plots... [ 6%] Simplified_Image_Plot.py
generating gallery for examples/plots... [ 12%] raster_declarative.py
generating gallery for examples/plots... [ 18%] US_Counties.py
generating gallery for examples/plots... [ 24%] Simple_Fronts_Plot.py
generating gallery for examples/plots... [ 29%] Combined_plotting.py
generating gallery for examples/plots... [ 35%] spc_convective_outlook.py
generating gallery for examples/plots... [ 41%] surface_declarative.py
generating gallery for examples/plots... [ 47%] upperair_declarative.py
generating gallery for examples/plots... [ 53%] Skew-T_Layout.py
generating gallery for examples/plots... [ 59%] nhc_wind_probabilities.py
generating gallery for examples/plots... [ 65%] Hodograph_Inset.py
generating gallery for examples/plots... [ 71%] Sounding_LCL_Dataset.py
generating gallery for examples/plots... [ 76%] Plotting_Surface_Analysis.py
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/cartopy/io/init.py:241: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/110m_physical/ne_110m_lakes.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
generating gallery for examples/plots... [ 82%] Simple_Sounding.py
generating gallery for examples/plots... [ 88%] Mesonet_Stationplot.py
/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/cartopy/io/init.py:241: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/10m_physical/ne_10m_land.zip
warnings.warn(f'Downloading: {url}', DownloadWarning)
generating gallery for examples/plots... [ 94%] Station_Plot.py
generating gallery for examples/plots... [100%] Station_Plot_with_Layout.py
generating gallery for examples/remote... [ 50%] ml_forecast.py
generating gallery for examples/remote... [100%] basic.py
generating gallery for tutorials... [ 20%] unit_tutorial.py
generating gallery for tutorials... [ 40%] area_tutorial.py
generating gallery for tutorials... [ 60%] upperair_soundings.py
generating gallery for tutorials... [ 80%] xarray_tutorial.py
WARNING:
../tutorials/xarray_tutorial.py unexpectedly failed to execute correctly:
Traceback (most recent call last):
File "/home/runner/work/MetPy/MetPy/tutorials/xarray_tutorial.py", line 284, in <module>
cape, cin = mpcalc.surface_based_cape_cin(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
data_at_point['isobaric3'][::-1],
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
data_at_point['Temperature_isobaric'][::-1],
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
dewpoint[::-1]
^^^^^^^^^^^^^^
)
^
File "/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/metpy/xarray.py", line 1323, in wrapper
_mutate_arguments(bound_args, xr.DataArray, lambda arg, _: arg.metpy.unit_array)
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/metpy/units.py", line 226, in _mutate_arguments
bound_args.arguments[arg_name] = mutate_arg(arg_val, arg_name)
~~~~~~~~~~^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/metpy/xarray.py", line 1323, in <lambda>
_mutate_arguments(bound_args, xr.DataArray, lambda arg, _: arg.metpy.unit_array)
^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/metpy/xarray.py", line 162, in unit_array
if is_quantity(self._data_array.data):
^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/xarray/core/dataarray.py", line 779, in data
return self.variable.data
^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/xarray/core/variable.py", line 456, in data
duck_array = self._data.get_duck_array()
File "/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/xarray/core/indexing.py", line 966, in get_duck_array
duck_array = self.array.get_duck_array()
File "/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/xarray/core/indexing.py", line 920, in get_duck_array
return self.array.get_duck_array()
~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/xarray/core/indexing.py", line 760, in get_duck_array
array = self.array[self.key]
~~~~~~~~~~^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/xarray/backends/netCDF4_.py", line 117, in __getitem__
return indexing.explicit_indexing_adapter(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
key, self.shape, indexing.IndexingSupport.OUTER, self._getitem
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/xarray/core/indexing.py", line 1151, in explicit_indexing_adapter
raw_key, numpy_indices = decompose_indexer(key, shape, indexing_support)
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/xarray/core/indexing.py", line 1201, in decompose_indexer
return _decompose_outer_indexer(indexer, shape, indexing_support)
File "/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/xarray/core/indexing.py", line 1427, in _decompose_outer_indexer
bk_slice, np_slice = _decompose_slice(k, s)
~~~~~~~~~~~~~~~~^^^^^^
File "/opt/hostedtoolcache/Python/3.13.11/x64/lib/python3.13/site-packages/xarray/core/indexing.py", line 1229, in _decompose_slice
exact_stop = range(start, stop, step)[-1]
~~~~~~~~~~~~~~~~~~~~~~~~^^^^
IndexError: range object index out of range
Extension error (sphinx_gallery.gen_gallery):
Handler <function generate_gallery_rst at 0x7f5805819260> for event 'builder-inited' threw an exception (exception: range object index out of range)
make: *** [Makefile:34: html] Error 2
Linkchecker output: