NOAA-GFDL/MDTF-diagnostics

CI fails from xarray/numpy version compatibility issue

Closed this issue · 0 comments

Bug Severity

  • 1 = Minor problem that does not affect total framework functionality (e.g., computation error in a POD, problem with logging output, or an issue on a single system
  • 2 = Major problem that affects overall functionality, but that does not occur for all users (e.g., problems installing the framework with a specific Conda version, a framework option that causes one or more PODs to fail, or missing/incompatible Python modules).
  • 3 = Catastrophic problem that occurs frequently for multiple users and/or on multiple systems (e.g.,framework consistently fails to install on multiple systems, or one or more PODs continuously fails after running successfully)

Describe the bug
The github actions CI fails from a class type compatibility error in newer versions of xrray and numpy 1.20 when trying to run mdtf-test-data.
An issue has been submitted here

Steps To Reproduce
build the MDTF synthetic environment according to the recipe file
run mdtf_synthetic.py with desired convention and additional args to generate test data

Environment
Describe the system environment:

  • OS: [e.g. RHEL 7.2] Ubuntu latest, Python 3.9
  • Conda version: [the conda info command will provide the installation information] : latest GH Actions version available
  • branch name and link :main

Log information and/or terminal output

Traceback (most recent call last):
  File "/usr/share/miniconda3/envs/_MDTF_synthetic_data/bin/mdtf_synthetic.py", line 4, in <module>
    import mdtf_test_data
  File "/usr/share/miniconda3/envs/_MDTF_synthetic_data/lib/python3.9/site-packages/mdtf_test_data/__init__.py", line 4, in <module>
    from . import synthetic
  File "/usr/share/miniconda3/envs/_MDTF_synthetic_data/lib/python3.9/site-packages/mdtf_test_data/synthetic/__init__.py", line 3, in <module>
    from .synthetic_data import (
  File "/usr/share/miniconda3/envs/_MDTF_synthetic_data/lib/python3.9/site-packages/mdtf_test_data/synthetic/synthetic_data.py", line 11, in <module>
    import xarray as xr
  File "/usr/share/miniconda3/envs/_MDTF_synthetic_data/lib/python3.9/site-packages/xarray/__init__.py", line 1, in <module>
    from . import testing, tutorial
  File "/usr/share/miniconda3/envs/_MDTF_synthetic_data/lib/python3.9/site-packages/xarray/testing.py", line 9, in <module>
    from xarray.core import duck_array_ops, formatting, utils
  File "/usr/share/miniconda3/envs/_MDTF_synthetic_data/lib/python3.9/site-packages/xarray/core/duck_array_ops.py", line 26, in <module>
    from . import dask_array_compat, dask_array_ops, dtypes, npcompat, nputils
  File "/usr/share/miniconda3/envs/_MDTF_synthetic_data/lib/python3.9/site-packages/xarray/core/npcompat.py", line 72, in <module>
    _SupportsDType[np.dtype],
  File "/usr/share/miniconda3/envs/_MDTF_synthetic_data/lib/python3.9/typing.py", line 277, in inner
    return func(*args, **kwds)
  File "/usr/share/miniconda3/envs/_MDTF_synthetic_data/lib/python3.9/typing.py", line 1004, in __class_getitem__
    _check_generic(cls, params, len(cls.__parameters__))
  File "/usr/share/miniconda3/envs/_MDTF_synthetic_data/lib/python3.9/typing.py", line 211, in _check_generic
    raise TypeError(f"{cls} is not a generic class")
TypeError: <class 'numpy.typing._dtype_like._SupportsDType'> is not a generic class