Incompatible with iris 3.16

Open
#255 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
python
Domain
data

Research direction

Start with ncdata/dataset_like.py, where the traceback shows the missing set_auto_chartostring attribute, and review the related work in issues #253 and #254. Reproduce the failure with Iris 3.16.0 and confirm the ncdata Iris integration works without the AttributeError.

Written by the indexing model from the issue text.

Description

It looks like ncdata v0.3.2 is not compatible with the latest iris release, v3.16.0 (tested with xarray 2026.7.0).

.pixi/envs/default/lib/python3.14/site-packages/ncdata/iris_xarray.py:54: in cubes_from_xarray
    cubes = to_iris(ncdata, **iris_load_kwargs)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.pixi/envs/default/lib/python3.14/site-packages/ncdata/iris.py:53: in to_iris
    cubes = CubeList(iris.load(dslikes, **iris_load_kwargs))
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.pixi/envs/default/lib/python3.14/site-packages/iris/loading.py:235: in load
    cubes = _load_collection(uris, constraints, callback).combined().cubes()
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.pixi/envs/default/lib/python3.14/site-packages/iris/loading.py:203: in _load_collection
    result = _CubeFilterCollection.from_cubes(cubes, constraints)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.pixi/envs/default/lib/python3.14/site-packages/iris/loading.py:159: in from_cubes
    for c in cubes:
             ^^^^^
.pixi/envs/default/lib/python3.14/site-packages/iris/loading.py:108: in _generate_cubes
    for cube in iris.io.load_data_objects(data_objects, callback):
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.pixi/envs/default/lib/python3.14/site-packages/iris/io/__init__.py:306: in load_data_objects
    yield from load_http(urls, callback)
.pixi/envs/default/lib/python3.14/site-packages/iris/io/__init__.py:286: in load_http
    for cube in handling_format_spec.handler(fnames, callback):
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.pixi/envs/default/lib/python3.14/site-packages/iris/fileformats/netcdf/loader.py:712: in load_cubes
    with CFReader(file_source) as cf:
         ^^^^^^^^^^^^^^^^^^^^^
.pixi/envs/default/lib/python3.14/site-packages/iris/fileformats/cf.py:1356: in __init__
    ds.set_auto_chartostring(False)
    ^^^^^^^^^^^^^^^^^^^^^^^^
.pixi/envs/default/lib/python3.14/site-packages/ncdata/dataset_like.py:74: in __getattr__
    return self.getncattr(attr)
           ^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <ncdata.dataset_like.Nc4DatasetLike object at 0x7c1cf981dd30>, attr = 'set_auto_chartostring'

    def getncattr(self, attr: str):
        attrs = self._ncdata.avals
        if attr in attrs:
            result = attrs[attr]
        else:
            # Don't allow it to issue a KeyError, as this upsets 'getattr' usage.
            # Raise an AttributeError instead.
>           raise AttributeError(attr)
E           AttributeError: set_auto_chartostring

.pixi/envs/default/lib/python3.14/site-packages/ncdata/dataset_like.py:59: AttributeError

I noticed you have some work in progress to fix this in #253 and #254

Dominant language
Python
Stars
16
Forks
5
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from SciTools/ncdata

All issues in SciTools/ncdata

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.