Skip to content

The versions of Scanpy, AnnData, or H5py that STCAT depends on contain a bug, which makes them unable to read .h5ad files generated with more recent versions of Scanpy. #8

@Constantine-mty

Description

@Constantine-mty

The versions of Scanpy, AnnData, or H5py that STCAT depends on contain a bug, which makes them unable to read .h5ad files generated with more recent versions of Scanpy.

Traceback (most recent call last):
  File "/media/desk16/MaTianyu/Project/Scanpy/run_stcat.py", line 34, in <module>
    main(args.input, args.output)
  File "/media/desk16/MaTianyu/Project/Scanpy/run_stcat.py", line 12, in main
    adata = sc.read_h5ad(input_path)
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/_io/h5ad.py", line 258, in read_h5ad
    adata = read_dispatched(f, callback=callback)
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/experimental/_dispatch_io.py", line 42, in read_dispatched
    return reader.read_elem(elem)
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/_io/utils.py", line 211, in func_wrapper
    return func(*args, **kwargs)
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/_io/specs/registry.py", line 275, in read_elem
    return self.callback(read_func, elem.name, elem, iospec=iospec)
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/_io/h5ad.py", line 239, in callback
    **{
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/_io/h5ad.py", line 242, in <dictcomp>
    k: read_dispatched(elem[k], callback)
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/experimental/_dispatch_io.py", line 42, in read_dispatched
    return reader.read_elem(elem)
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/_io/utils.py", line 211, in func_wrapper
    return func(*args, **kwargs)
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/_io/specs/registry.py", line 275, in read_elem
    return self.callback(read_func, elem.name, elem, iospec=iospec)
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/_io/h5ad.py", line 256, in callback
    return func(elem)
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/_io/specs/methods.py", line 335, in read_mapping
    return {k: _reader.read_elem(v) for k, v in elem.items()}
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/_io/specs/methods.py", line 335, in <dictcomp>
    return {k: _reader.read_elem(v) for k, v in elem.items()}
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/_io/utils.py", line 211, in func_wrapper
    return func(*args, **kwargs)
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/_io/specs/registry.py", line 275, in read_elem
    return self.callback(read_func, elem.name, elem, iospec=iospec)
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/_io/h5ad.py", line 256, in callback
    return func(elem)
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/_io/specs/methods.py", line 335, in read_mapping
    return {k: _reader.read_elem(v) for k, v in elem.items()}
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/_io/specs/methods.py", line 335, in <dictcomp>
    return {k: _reader.read_elem(v) for k, v in elem.items()}
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/_io/utils.py", line 211, in func_wrapper
    return func(*args, **kwargs)
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/_io/specs/registry.py", line 272, in read_elem
    read_func = self.registry.get_read(type(elem), iospec, modifiers, reader=self)
  File "/media/desk16/MaTianyu/anaconda3/envs/STCAT/lib/python3.9/site-packages/anndata/_io/specs/registry.py", line 167, in get_read
    raise IORegistryError._from_read_parts(
anndata._io.specs.registry.IORegistryError: No read method registered for IOSpec(encoding_type='null', encoding_version='0.1.0') from <class 'h5py._hl.dataset.Dataset'>. You may need to update your installation of anndata.
Error raised while reading key 'base' of <class 'h5py._hl.dataset.Dataset'> from /uns/log1p

test version:

scanpy                    1.11.4
anndata                   0.12.2
h5py                      3.14.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions