workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/999999/raw/999999_00084405.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
Test: nexusfiles-scipp|dream|dream_read_choppers|
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/999999/raw/999999_00084265.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/999999/raw/999999_00084125.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/999999/raw/999999_00083996.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/999999/raw/999999_00083863.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/999999/raw/999999_00083737.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/999999/raw/999999_00083604.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/999999/raw/999999_00083471.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/999999/raw/999999_00083345.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/999999/raw/999999_00083212.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/999999/raw/999999_00083079.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/999999/raw/999999_00082953.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/999999/raw/999999_00082827.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
instrument = 'dream', coda_proposal_id = '977695'
pathfinder =
@pytest.fixture(scope="session")
def coda_nexus_file_path(
instrument: str, coda_proposal_id: str, pathfinder: Callable[..., Path]
) -> Path:
> return pathfinder(proposal_id=coda_proposal_id, instrument=instrument)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dmsc_nightly/testing/nexusfiles/setup_fixtures.py:46:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dmsc_nightly/testing/nexusfiles/setup_fixtures.py:34: in
"manual": lambda *args, **kwargs: coda.get_latest_nexus_paths(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
instrument = 'DREAM', proposal_id = '977695', n = 1, inspect = 20
def get_latest_nexus_paths(
instrument: str, proposal_id: str | None, n: int = 1, inspect: int = 20
) -> list[Path]:
"""
Get the latest file paths manually by sorting the files in the directory.
Parameters
----------
instrument:
The instrument name.
proposal_id:
SciCat proposal ID for CODA.
If ``None``, the environment variable ``OVERRIDE_RAW_DATA_DIR`` must be set.
n:
The number of files to return.
inspect:
The number of files to inspect before returning.
Returns
-------
:
Paths to the n latest files for the given instrument and proposal.
"""
instrument = NEXUS_INSTRUMENT_NAME[instrument]
path = _coda_raw_data_path(proposal_id)
files_found = []
logging.info(
"Scanning the %d latest files in %s for instrument %s",
inspect,
path,
instrument,
)
recent_files = sorted(path.glob("*.hdf"))[-inspect::][::-1]
logging.info("Recent files: %s", recent_files)
for file in recent_files:
logging.info("Inspecting file: %s", file)
try:
with snx.File(file, "r", locking=False) as f:
instrument_in_file = f["/entry/instrument/name"][()]
if instrument_in_file == instrument:
logging.info(
"File %s matches requested instrument %s. Adding to list. "
"Last modified: %s",
file,
instrument,
datetime.fromtimestamp(
os.stat(file).st_mtime, tz=local_timezone()
),
)
files_found.append(file)
if len(files_found) == n:
logging.info("Found %d files. Returning.", n)
return files_found
else:
logging.info(
"File instrument is %s, but %s was requested. Skipping.",
instrument_in_file,
instrument,
)
except OSError as e:
logging.warning(
"File %s could not be opened. Reason: %s",
file,
e,
)
continue
logging.error("No files found for instrument %s", instrument)
> raise RuntimeError(f"No files found for instrument {instrument}")
E RuntimeError: No files found for instrument DREAM
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dmsc_nightly/nexusfiles/coda.py:94: RuntimeError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/977695/raw/977695_00082364.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/977695/raw/977695_00082364.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/977695/raw/977695_00082286.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/977695/raw/977695_00082172.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/977695/raw/977695_00082046.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/977695/raw/977695_00081914.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/977695/raw/977695_00081644.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/977695/raw/977695_00081524.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/977695/raw/977695_00081392.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/977695/raw/977695_00081266.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/977695/raw/977695_00081128.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/977695/raw/977695_00081002.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/977695/raw/977695_00080876.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/977695/raw/977695_00080744.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/977695/raw/977695_00080606.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/977695/raw/977695_00080450.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/977695/raw/977695_00080312.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:549: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:353: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:258: in execute_task
result = task(data)
^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:759: in __call__
return self.func(*new_argspec)
^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:80: in apply
return func(*args)
^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
^^^^^^^^^^^^^^^^^
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError
instrument = 'dream', coda_proposal_id = '977695'
pathfinder =
@pytest.fixture(scope="session")
def coda_nexus_file_path(
instrument: str, coda_proposal_id: str, pathfinder: Callable[..., Path]
) -> Path:
> return pathfinder(proposal_id=coda_proposal_id, instrument=instrument)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dmsc_nightly/testing/nexusfiles/setup_fixtures.py:46:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dmsc_nightly/testing/nexusfiles/setup_fixtures.py:34: in
"manual": lambda *args, **kwargs: coda.get_latest_nexus_paths(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
instrument = 'DREAM', proposal_id = '977695', n = 1, inspect = 20
def get_latest_nexus_paths(
instrument: str, proposal_id: str | None, n: int = 1, inspect: int = 20
) -> list[Path]:
"""
Get the latest file paths manually by sorting the files in the directory.
Parameters
----------
instrument:
The instrument name.
proposal_id:
SciCat proposal ID for CODA.
If ``None``, the environment variable ``OVERRIDE_RAW_DATA_DIR`` must be set.
n:
The number of files to return.
inspect:
The number of files to inspect before returning.
Returns
-------
:
Paths to the n latest files for the given instrument and proposal.
"""
instrument = NEXUS_INSTRUMENT_NAME[instrument]
path = _coda_raw_data_path(proposal_id)
files_found = []
logging.info(
"Scanning the %d latest files in %s for instrument %s",
inspect,
path,
instrument,
)
recent_files = sorted(path.glob("*.hdf"))[-inspect::][::-1]
logging.info("Recent files: %s", recent_files)
for file in recent_files:
logging.info("Inspecting file: %s", file)
try:
with snx.File(file, "r", locking=False) as f:
instrument_in_file = f["/entry/instrument/name"][()]
if instrument_in_file == instrument:
logging.info(
"File %s matches requested instrument %s. Adding to list. "
"Last modified: %s",
file,
instrument,
datetime.fromtimestamp(
os.stat(file).st_mtime, tz=local_timezone()
),
)
files_found.append(file)
if len(files_found) == n:
logging.info("Found %d files. Returning.", n)
return files_found
else:
logging.info(
"File instrument is %s, but %s was requested. Skipping.",
instrument_in_file,
instrument,
)
except OSError as e:
logging.warning(
"File %s could not be opened. Reason: %s",
file,
e,
)
continue
logging.error("No files found for instrument %s", instrument)
> raise RuntimeError(f"No files found for instrument {instrument}")
E RuntimeError: No files found for instrument DREAM
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dmsc_nightly/nexusfiles/coda.py:94: RuntimeError
workflow =
coda_nexus_file_path = PosixPath('/ess/data/coda/2025/977695/raw/977695_00080035.hdf')
def test_dream_read_choppers(
workflow: sciline.Pipeline, coda_nexus_file_path: Path
) -> None:
workflow[Filename[SampleRun]] = coda_nexus_file_path
> choppers = workflow.compute(RawChoppers[SampleRun])
tests/nexusfiles-scipp/dream/dream_load_nexus_test.py:139:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
return self.get(tp, **kwargs).compute(reporter=reporter)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/sciline/scheduler.py:119: in get
return self._dask_get(dsk, list(map(_to_dask_key, keys)))
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/threaded.py:91: in get
results = get_async(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:516: in get_async
raise_exception(exc, tb)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:324: in reraise
raise exc
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/local.py:229: in execute_task
result = task(data)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/_task_spec.py:741: in __call__
return self.func(*new_argspec)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/dask/utils.py:79: in apply
return func(*args)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:528: in parse_disk_choppers
choppers.apply(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:268: in apply
return DataGroup({key: func(v, *args, **kwargs) for key, v in self.items()})
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:529: in
lambda chopper: extract_chopper_from_nexus(
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:37: in extract_chopper_from_nexus
**{key: _parse_field(key, val) for key, val in chopper.items()},
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:44: in _parse_field
return _parse_tdc(value)
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scippneutron/chopper/nexus_chopper.py:53: in _parse_tdc
return tdc["time"]
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = DataGroup(sizes={'time': 0}, keys=[
value: DataArray({'time': 0}),
alarm: DataArray({'time': 0}),
connection_status: DataArray({'time': 0}),
])
name = 'time'
def __getitem__(self, name: Any) -> Any:
"""Return item of given name or index all items.
When ``name`` is a string, return the item of the given name. Otherwise, this
returns a new DataGroup, with items created by indexing the items in this
DataGroup. This may perform, e.g., Scipp's positional indexing, label-based
indexing, or advanced indexing on items that are scipp.Variable or
scipp.DataArray.
Label-based indexing is only possible when all items have a coordinate for the
indexed dimension.
Advanced indexing comprises integer-array indexing and boolean-variable
indexing. Unlike positional indexing, integer-array indexing works even when
the item shapes are inconsistent for the indexed dimensions, provided that all
items contain the maximal index in the integer array. Boolean-variable indexing
is only possible when the shape of all items is compatible with the boolean
variable.
"""
from .bins import Bins
if isinstance(name, str):
> return self._items[name]
E KeyError: 'time'
.tox/nexusfiles-scipp-dream/lib/python3.12/site-packages/scipp/core/data_group.py:164: KeyError