DMSC Integration Testing

Last updated: September 25, 2026 08:04:50

Test: nexusfiles-scipp|bifrost|bifrost_read_detector_everything|all_detectors

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f399075baa0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00022378.hdf')
check_everything_events = <function _check_everything_events at 0x7f399d491bc0>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:81: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7f399075baa0>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7fc25c35d160>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00022308.hdf')
check_everything_events = <function _check_everything_events at 0x7fc260f45d00>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:81: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7fc25c35d160>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7fb624661520>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00022248.hdf')
check_everything_events = <function _check_everything_events at 0x7fb638b45bc0>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:81: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7fb624661520>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f0aac0861e0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00022208.hdf')
check_everything_events = <function _check_everything_events at 0x7f0ab2339d00>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:81: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7f0aac0861e0>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7fdd1052a390>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00022208.hdf')
check_everything_events = <function _check_everything_events at 0x7fdd1604dd00>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:81: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7fdd1052a390>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f82fc0bb650>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00022198.hdf')
check_everything_events = <function _check_everything_events at 0x7f833a1f9bc0>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:81: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7f82fc0bb650>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7fc9bb27c770>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00022118.hdf')
check_everything_events = <function _check_everything_events at 0x7fc9c5a0dda0>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7fc9bb27c770>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f1a02b42930>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00022068.hdf')
check_everything_events = <function _check_everything_events at 0x7f1a0cf75e40>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7f1a02b42930>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f25f11a3d10>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00022068.hdf')
check_everything_events = <function _check_everything_events at 0x7f25f3451e40>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7f25f11a3d10>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f7f821cc440>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00022068.hdf')
check_everything_events = <function _check_everything_events at 0x7f7f84011d00>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7f7f821cc440>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7ff418384170>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00022038.hdf')
check_everything_events = <function _check_everything_events at 0x7ff41ff69da0>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7ff418384170>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f7dacdb5670>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00022038.hdf')
check_everything_events = <function _check_everything_events at 0x7f7dda7298a0>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7f7dacdb5670>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f63c41abfe0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00022038.hdf')
check_everything_events = <function _check_everything_events at 0x7f63fc1798a0>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7f63c41abfe0>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f5b14007d10>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00022028.hdf')
check_everything_events = <function _check_everything_events at 0x7f5b6b4a99e0>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7f5b14007d10>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f58a1f54b00>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00022028.hdf')
check_everything_events = <function _check_everything_events at 0x7f58a3afd9e0>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7f58a1f54b00>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f7084295fd0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00022028.hdf')
check_everything_events = <function _check_everything_events at 0x7f70d34559e0>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7f7084295fd0>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7efee03bb6e0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00021978.hdf')
check_everything_events = <function _check_everything_events at 0x7efee60f9940>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7efee03bb6e0>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7fe0d12929c0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00021904.hdf')
check_everything_events = <function _check_everything_events at 0x7fe0d4b89940>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:81: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7fe0d12929c0>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7ff454103f80>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00021904.hdf')
check_everything_events = <function _check_everything_events at 0x7ff493ebd940>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7ff454103f80>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7fc898b83e30>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00021904.hdf')
check_everything_events = <function _check_everything_events at 0x7fc8e3491940>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7fc898b83e30>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
In provider ess.reduce.nexus.workflow.load_nexus_component(
    location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
    nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f64687433b0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00021834.hdf')
check_everything_events = <function _check_everything_events at 0x7f64a5731800>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:466: in compute_mapped
    results = pipeline.compute(key_series)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/task_graph.py:119: in compute
    results = self._scheduler.get(self._graph, list(targets), reporter=reporter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/scheduler.py:140: in get
    return self._dask_get(dsk, list(map(_to_dask_key, keys)))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:242: in load_nexus_component
    nexus.load_component(location, nx_class=nx_class, definitions=definitions)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:99: in load_component
    with open_component_group(
/opt/miniforge/lib/python3.12/contextlib.py:137: in __enter__
    return next(self.gen)
           ^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:325: in open_component_group
    yield _unique_child_group(parent, nx_class, group_name)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

group = <scippnexus.base.Group object at 0x7f649a32eb70>
nx_class = <class 'scippnexus.nexus_classes.NXmoderator'>, name = None

    def _unique_child_group(
        group: snx.Group, nx_class: type[snx.NXobject], name: str | None
    ) -> snx.Group:
        if name is not None:
            child = group[name]
            if isinstance(child, snx.Field):
                raise ValueError(
                    f"Expected a NeXus group as item '{name}' but got a field."
                )
            if child.nx_class != nx_class:
                raise ValueError(
                    f"The NeXus group '{name}' was expected to be a "
                    f'{nx_class} but is a {child.nx_class}.'
                )
            return child
    
        children = group[nx_class]
        if len(children) != 1:
>           raise ValueError(
                f"Expected exactly one {nx_class.__name__} group '{group.name}', "
                f"got {len(children)}"
            )
E           ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
E           In provider ess.reduce.nexus.workflow.load_nexus_component(
E               location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
E               nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
E           ) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError

View job log here


ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
In provider ess.reduce.nexus.workflow.load_nexus_component(
    location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
    nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f0b342b5e80>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00021704.hdf')
check_everything_events = <function _check_everything_events at 0x7f0b9e439800>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:466: in compute_mapped
    results = pipeline.compute(key_series)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/task_graph.py:119: in compute
    results = self._scheduler.get(self._graph, list(targets), reporter=reporter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/scheduler.py:140: in get
    return self._dask_get(dsk, list(map(_to_dask_key, keys)))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:242: in load_nexus_component
    nexus.load_component(location, nx_class=nx_class, definitions=definitions)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:99: in load_component
    with open_component_group(
/opt/miniforge/lib/python3.12/contextlib.py:137: in __enter__
    return next(self.gen)
           ^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:325: in open_component_group
    yield _unique_child_group(parent, nx_class, group_name)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

group = <scippnexus.base.Group object at 0x7f0b342b6ae0>
nx_class = <class 'scippnexus.nexus_classes.NXmoderator'>, name = None

    def _unique_child_group(
        group: snx.Group, nx_class: type[snx.NXobject], name: str | None
    ) -> snx.Group:
        if name is not None:
            child = group[name]
            if isinstance(child, snx.Field):
                raise ValueError(
                    f"Expected a NeXus group as item '{name}' but got a field."
                )
            if child.nx_class != nx_class:
                raise ValueError(
                    f"The NeXus group '{name}' was expected to be a "
                    f'{nx_class} but is a {child.nx_class}.'
                )
            return child
    
        children = group[nx_class]
        if len(children) != 1:
>           raise ValueError(
                f"Expected exactly one {nx_class.__name__} group '{group.name}', "
                f"got {len(children)}"
            )
E           ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
E           In provider ess.reduce.nexus.workflow.load_nexus_component(
E               location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
E               nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
E           ) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError

View job log here


ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
In provider ess.reduce.nexus.workflow.load_nexus_component(
    location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
    nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7fa4734dd910>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00021554.hdf')
check_everything_events = <function _check_everything_events at 0x7fa475739940>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:466: in compute_mapped
    results = pipeline.compute(key_series)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/task_graph.py:119: in compute
    results = self._scheduler.get(self._graph, list(targets), reporter=reporter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/scheduler.py:140: in get
    return self._dask_get(dsk, list(map(_to_dask_key, keys)))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:242: in load_nexus_component
    nexus.load_component(location, nx_class=nx_class, definitions=definitions)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:99: in load_component
    with open_component_group(
/opt/miniforge/lib/python3.12/contextlib.py:137: in __enter__
    return next(self.gen)
           ^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:325: in open_component_group
    yield _unique_child_group(parent, nx_class, group_name)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

group = <scippnexus.base.Group object at 0x7fa469a209b0>
nx_class = <class 'scippnexus.nexus_classes.NXmoderator'>, name = None

    def _unique_child_group(
        group: snx.Group, nx_class: type[snx.NXobject], name: str | None
    ) -> snx.Group:
        if name is not None:
            child = group[name]
            if isinstance(child, snx.Field):
                raise ValueError(
                    f"Expected a NeXus group as item '{name}' but got a field."
                )
            if child.nx_class != nx_class:
                raise ValueError(
                    f"The NeXus group '{name}' was expected to be a "
                    f'{nx_class} but is a {child.nx_class}.'
                )
            return child
    
        children = group[nx_class]
        if len(children) != 1:
>           raise ValueError(
                f"Expected exactly one {nx_class.__name__} group '{group.name}', "
                f"got {len(children)}"
            )
E           ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
E           In provider ess.reduce.nexus.workflow.load_nexus_component(
E               location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
E               nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
E           ) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError

View job log here


ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7fe1611cab40>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00021514.hdf')
check_everything_events = <function _check_everything_events at 0x7fe1a3635940>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:463: in compute_mapped
    key_series = get_mapped_node_names(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

graph = <sciline.pipeline.Pipeline object at 0x7fe1611cab40>
base_name = ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]
index_names = None

    def get_mapped_node_names(
        graph: DataGraph, base_name: type, *, index_names: Sequence[Hashable] | None = None
    ) -> pandas.Series:
        """
        Given a graph with a mapped node with given base_name, return a series of
        corresponding mapped names.
    
        This is meant to be used in combination with :py:func:`DataGraph.map`.
        If the mapped node depends on multiple indices, the index of the returned series
        will have a multi-index.
    
        Attention
        ---------
        This function requires `Pandas <https://pandas.pydata.org/>`_
        which is not installed automatically as a dependency of Sciline.
    
        Parameters
        ----------
        graph:
            The data graph to get the mapped node names from.
        base_name:
            The base name of the mapped node to get the names for.
        index_names:
            Specifies the names of the indices of the mapped node. If not given this is
            inferred from the graph, but the argument may be required to disambiguate
            multiple mapped nodes with the same name.
    
        Returns
        -------
        :
            The series of node names corresponding to the mapped node.
        """
        pd = _import_pandas("sciline.get_mapped_node_names")
        from cyclebane.graph import IndexValues, MappedNode, NodeName
    
        candidates = [
            node
            for node in graph.underlying_graph.nodes
            if isinstance(node, MappedNode) and node.name == base_name
        ]
        if len(candidates) == 0:
>           raise ValueError(f"'{base_name}' is not a mapped node.")
E           ValueError: 'ess.reduce.nexus.types.RawDetector[ess.reduce.nexus.types.SampleRun]' is not a mapped node.

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:407: ValueError

View job log here


ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
In provider ess.reduce.nexus.workflow.load_nexus_component(
    location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
    nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f5a6c0eaf00>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00021414.hdf')
check_everything_events = <function _check_everything_events at 0x7f5aa5d45940>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:466: in compute_mapped
    results = pipeline.compute(key_series)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/task_graph.py:119: in compute
    results = self._scheduler.get(self._graph, list(targets), reporter=reporter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/scheduler.py:140: in get
    return self._dask_get(dsk, list(map(_to_dask_key, keys)))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:242: in load_nexus_component
    nexus.load_component(location, nx_class=nx_class, definitions=definitions)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:99: in load_component
    with open_component_group(
/opt/miniforge/lib/python3.12/contextlib.py:137: in __enter__
    return next(self.gen)
           ^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:325: in open_component_group
    yield _unique_child_group(parent, nx_class, group_name)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

group = <scippnexus.base.Group object at 0x7f5a6016c2c0>
nx_class = <class 'scippnexus.nexus_classes.NXmoderator'>, name = None

    def _unique_child_group(
        group: snx.Group, nx_class: type[snx.NXobject], name: str | None
    ) -> snx.Group:
        if name is not None:
            child = group[name]
            if isinstance(child, snx.Field):
                raise ValueError(
                    f"Expected a NeXus group as item '{name}' but got a field."
                )
            if child.nx_class != nx_class:
                raise ValueError(
                    f"The NeXus group '{name}' was expected to be a "
                    f'{nx_class} but is a {child.nx_class}.'
                )
            return child
    
        children = group[nx_class]
        if len(children) != 1:
>           raise ValueError(
                f"Expected exactly one {nx_class.__name__} group '{group.name}', "
                f"got {len(children)}"
            )
E           ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
E           In provider ess.reduce.nexus.workflow.load_nexus_component(
E               location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
E               nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
E           ) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError

View job log here


ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
In provider ess.reduce.nexus.workflow.load_nexus_component(
    location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
    nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f4030096990>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00021274.hdf')
check_everything_events = <function _check_everything_events at 0x7f40776bd800>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:466: in compute_mapped
    results = pipeline.compute(key_series)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/task_graph.py:119: in compute
    results = self._scheduler.get(self._graph, list(targets), reporter=reporter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/scheduler.py:140: in get
    return self._dask_get(dsk, list(map(_to_dask_key, keys)))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:242: in load_nexus_component
    nexus.load_component(location, nx_class=nx_class, definitions=definitions)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:99: in load_component
    with open_component_group(
/opt/miniforge/lib/python3.12/contextlib.py:137: in __enter__
    return next(self.gen)
           ^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:325: in open_component_group
    yield _unique_child_group(parent, nx_class, group_name)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

group = <scippnexus.base.Group object at 0x7f4070f62060>
nx_class = <class 'scippnexus.nexus_classes.NXmoderator'>, name = None

    def _unique_child_group(
        group: snx.Group, nx_class: type[snx.NXobject], name: str | None
    ) -> snx.Group:
        if name is not None:
            child = group[name]
            if isinstance(child, snx.Field):
                raise ValueError(
                    f"Expected a NeXus group as item '{name}' but got a field."
                )
            if child.nx_class != nx_class:
                raise ValueError(
                    f"The NeXus group '{name}' was expected to be a "
                    f'{nx_class} but is a {child.nx_class}.'
                )
            return child
    
        children = group[nx_class]
        if len(children) != 1:
>           raise ValueError(
                f"Expected exactly one {nx_class.__name__} group '{group.name}', "
                f"got {len(children)}"
            )
E           ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
E           In provider ess.reduce.nexus.workflow.load_nexus_component(
E               location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
E               nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
E           ) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError

View job log here


ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
In provider ess.reduce.nexus.workflow.load_nexus_component(
    location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
    nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f07742d6e10>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00021124.hdf')
check_everything_events = <function _check_everything_events at 0x7f077bebd800>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:466: in compute_mapped
    results = pipeline.compute(key_series)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/task_graph.py:119: in compute
    results = self._scheduler.get(self._graph, list(targets), reporter=reporter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/scheduler.py:140: in get
    return self._dask_get(dsk, list(map(_to_dask_key, keys)))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:242: in load_nexus_component
    nexus.load_component(location, nx_class=nx_class, definitions=definitions)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:99: in load_component
    with open_component_group(
/opt/miniforge/lib/python3.12/contextlib.py:137: in __enter__
    return next(self.gen)
           ^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:325: in open_component_group
    yield _unique_child_group(parent, nx_class, group_name)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

group = <scippnexus.base.Group object at 0x7f077a454050>
nx_class = <class 'scippnexus.nexus_classes.NXmoderator'>, name = None

    def _unique_child_group(
        group: snx.Group, nx_class: type[snx.NXobject], name: str | None
    ) -> snx.Group:
        if name is not None:
            child = group[name]
            if isinstance(child, snx.Field):
                raise ValueError(
                    f"Expected a NeXus group as item '{name}' but got a field."
                )
            if child.nx_class != nx_class:
                raise ValueError(
                    f"The NeXus group '{name}' was expected to be a "
                    f'{nx_class} but is a {child.nx_class}.'
                )
            return child
    
        children = group[nx_class]
        if len(children) != 1:
>           raise ValueError(
                f"Expected exactly one {nx_class.__name__} group '{group.name}', "
                f"got {len(children)}"
            )
E           ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
E           In provider ess.reduce.nexus.workflow.load_nexus_component(
E               location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
E               nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
E           ) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError

View job log here


ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
In provider ess.reduce.nexus.workflow.load_nexus_component(
    location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
    nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f36c8711a60>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00020984.hdf')
check_everything_events = <function _check_everything_events at 0x7f371505d940>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:466: in compute_mapped
    results = pipeline.compute(key_series)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/task_graph.py:119: in compute
    results = self._scheduler.get(self._graph, list(targets), reporter=reporter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/scheduler.py:140: in get
    return self._dask_get(dsk, list(map(_to_dask_key, keys)))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:242: in load_nexus_component
    nexus.load_component(location, nx_class=nx_class, definitions=definitions)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:99: in load_component
    with open_component_group(
/opt/miniforge/lib/python3.12/contextlib.py:137: in __enter__
    return next(self.gen)
           ^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:325: in open_component_group
    yield _unique_child_group(parent, nx_class, group_name)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

group = <scippnexus.base.Group object at 0x7f36e0519be0>
nx_class = <class 'scippnexus.nexus_classes.NXmoderator'>, name = None

    def _unique_child_group(
        group: snx.Group, nx_class: type[snx.NXobject], name: str | None
    ) -> snx.Group:
        if name is not None:
            child = group[name]
            if isinstance(child, snx.Field):
                raise ValueError(
                    f"Expected a NeXus group as item '{name}' but got a field."
                )
            if child.nx_class != nx_class:
                raise ValueError(
                    f"The NeXus group '{name}' was expected to be a "
                    f'{nx_class} but is a {child.nx_class}.'
                )
            return child
    
        children = group[nx_class]
        if len(children) != 1:
>           raise ValueError(
                f"Expected exactly one {nx_class.__name__} group '{group.name}', "
                f"got {len(children)}"
            )
E           ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
E           In provider ess.reduce.nexus.workflow.load_nexus_component(
E               location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
E               nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
E           ) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError

View job log here


ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
In provider ess.reduce.nexus.workflow.load_nexus_component(
    location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
    nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f89b8518fb0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00020914.hdf')
check_everything_events = <function _check_everything_events at 0x7f8a147bd940>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:466: in compute_mapped
    results = pipeline.compute(key_series)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/task_graph.py:119: in compute
    results = self._scheduler.get(self._graph, list(targets), reporter=reporter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/scheduler.py:140: in get
    return self._dask_get(dsk, list(map(_to_dask_key, keys)))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:242: in load_nexus_component
    nexus.load_component(location, nx_class=nx_class, definitions=definitions)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:99: in load_component
    with open_component_group(
/opt/miniforge/lib/python3.12/contextlib.py:137: in __enter__
    return next(self.gen)
           ^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:325: in open_component_group
    yield _unique_child_group(parent, nx_class, group_name)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

group = <scippnexus.base.Group object at 0x7f8a0441bce0>
nx_class = <class 'scippnexus.nexus_classes.NXmoderator'>, name = None

    def _unique_child_group(
        group: snx.Group, nx_class: type[snx.NXobject], name: str | None
    ) -> snx.Group:
        if name is not None:
            child = group[name]
            if isinstance(child, snx.Field):
                raise ValueError(
                    f"Expected a NeXus group as item '{name}' but got a field."
                )
            if child.nx_class != nx_class:
                raise ValueError(
                    f"The NeXus group '{name}' was expected to be a "
                    f'{nx_class} but is a {child.nx_class}.'
                )
            return child
    
        children = group[nx_class]
        if len(children) != 1:
>           raise ValueError(
                f"Expected exactly one {nx_class.__name__} group '{group.name}', "
                f"got {len(children)}"
            )
E           ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
E           In provider ess.reduce.nexus.workflow.load_nexus_component(
E               location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
E               nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
E           ) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError

View job log here


ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
In provider ess.reduce.nexus.workflow.load_nexus_component(
    location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
    nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f830441fe00>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00020894.hdf')
check_everything_events = <function _check_everything_events at 0x7f83692c1800>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:466: in compute_mapped
    results = pipeline.compute(key_series)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/task_graph.py:119: in compute
    results = self._scheduler.get(self._graph, list(targets), reporter=reporter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/scheduler.py:140: in get
    return self._dask_get(dsk, list(map(_to_dask_key, keys)))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:242: in load_nexus_component
    nexus.load_component(location, nx_class=nx_class, definitions=definitions)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:99: in load_component
    with open_component_group(
/opt/miniforge/lib/python3.12/contextlib.py:137: in __enter__
    return next(self.gen)
           ^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:325: in open_component_group
    yield _unique_child_group(parent, nx_class, group_name)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

group = <scippnexus.base.Group object at 0x7f836587e9c0>
nx_class = <class 'scippnexus.nexus_classes.NXmoderator'>, name = None

    def _unique_child_group(
        group: snx.Group, nx_class: type[snx.NXobject], name: str | None
    ) -> snx.Group:
        if name is not None:
            child = group[name]
            if isinstance(child, snx.Field):
                raise ValueError(
                    f"Expected a NeXus group as item '{name}' but got a field."
                )
            if child.nx_class != nx_class:
                raise ValueError(
                    f"The NeXus group '{name}' was expected to be a "
                    f'{nx_class} but is a {child.nx_class}.'
                )
            return child
    
        children = group[nx_class]
        if len(children) != 1:
>           raise ValueError(
                f"Expected exactly one {nx_class.__name__} group '{group.name}', "
                f"got {len(children)}"
            )
E           ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
E           In provider ess.reduce.nexus.workflow.load_nexus_component(
E               location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
E               nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
E           ) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError

View job log here


ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
In provider ess.reduce.nexus.workflow.load_nexus_component(
    location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
    nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f57c40d5010>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00020894.hdf')
check_everything_events = <function _check_everything_events at 0x7f57eb4f5800>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:466: in compute_mapped
    results = pipeline.compute(key_series)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/task_graph.py:119: in compute
    results = self._scheduler.get(self._graph, list(targets), reporter=reporter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/scheduler.py:140: in get
    return self._dask_get(dsk, list(map(_to_dask_key, keys)))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:242: in load_nexus_component
    nexus.load_component(location, nx_class=nx_class, definitions=definitions)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:99: in load_component
    with open_component_group(
/opt/miniforge/lib/python3.12/contextlib.py:137: in __enter__
    return next(self.gen)
           ^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:325: in open_component_group
    yield _unique_child_group(parent, nx_class, group_name)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

group = <scippnexus.base.Group object at 0x7f57bbf13d10>
nx_class = <class 'scippnexus.nexus_classes.NXmoderator'>, name = None

    def _unique_child_group(
        group: snx.Group, nx_class: type[snx.NXobject], name: str | None
    ) -> snx.Group:
        if name is not None:
            child = group[name]
            if isinstance(child, snx.Field):
                raise ValueError(
                    f"Expected a NeXus group as item '{name}' but got a field."
                )
            if child.nx_class != nx_class:
                raise ValueError(
                    f"The NeXus group '{name}' was expected to be a "
                    f'{nx_class} but is a {child.nx_class}.'
                )
            return child
    
        children = group[nx_class]
        if len(children) != 1:
>           raise ValueError(
                f"Expected exactly one {nx_class.__name__} group '{group.name}', "
                f"got {len(children)}"
            )
E           ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
E           In provider ess.reduce.nexus.workflow.load_nexus_component(
E               location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
E               nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
E           ) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError

View job log here


ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
In provider ess.reduce.nexus.workflow.load_nexus_component(
    location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
    nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f8626ef6e70>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00020894.hdf')
check_everything_events = <function _check_everything_events at 0x7f8633267ba0>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:466: in compute_mapped
    results = pipeline.compute(key_series)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/task_graph.py:119: in compute
    results = self._scheduler.get(self._graph, list(targets), reporter=reporter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/scheduler.py:140: in get
    return self._dask_get(dsk, list(map(_to_dask_key, keys)))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:242: in load_nexus_component
    nexus.load_component(location, nx_class=nx_class, definitions=definitions)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:99: in load_component
    with open_component_group(
/opt/miniforge/lib/python3.12/contextlib.py:137: in __enter__
    return next(self.gen)
           ^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:325: in open_component_group
    yield _unique_child_group(parent, nx_class, group_name)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

group = <scippnexus.base.Group object at 0x7f860837fec0>
nx_class = <class 'scippnexus.nexus_classes.NXmoderator'>, name = None

    def _unique_child_group(
        group: snx.Group, nx_class: type[snx.NXobject], name: str | None
    ) -> snx.Group:
        if name is not None:
            child = group[name]
            if isinstance(child, snx.Field):
                raise ValueError(
                    f"Expected a NeXus group as item '{name}' but got a field."
                )
            if child.nx_class != nx_class:
                raise ValueError(
                    f"The NeXus group '{name}' was expected to be a "
                    f'{nx_class} but is a {child.nx_class}.'
                )
            return child
    
        children = group[nx_class]
        if len(children) != 1:
>           raise ValueError(
                f"Expected exactly one {nx_class.__name__} group '{group.name}', "
                f"got {len(children)}"
            )
E           ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
E           In provider ess.reduce.nexus.workflow.load_nexus_component(
E               location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
E               nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
E           ) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError

View job log here


ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
In provider ess.reduce.nexus.workflow.load_nexus_component(
    location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
    nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7faf1f2f65d0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00020704.hdf')
check_everything_events = <function _check_everything_events at 0x7faf22943ba0>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:466: in compute_mapped
    results = pipeline.compute(key_series)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/task_graph.py:119: in compute
    results = self._scheduler.get(self._graph, list(targets), reporter=reporter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/scheduler.py:140: in get
    return self._dask_get(dsk, list(map(_to_dask_key, keys)))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:242: in load_nexus_component
    nexus.load_component(location, nx_class=nx_class, definitions=definitions)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:99: in load_component
    with open_component_group(
/opt/miniforge/lib/python3.12/contextlib.py:137: in __enter__
    return next(self.gen)
           ^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:325: in open_component_group
    yield _unique_child_group(parent, nx_class, group_name)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

group = <scippnexus.base.Group object at 0x7faef405b350>
nx_class = <class 'scippnexus.nexus_classes.NXmoderator'>, name = None

    def _unique_child_group(
        group: snx.Group, nx_class: type[snx.NXobject], name: str | None
    ) -> snx.Group:
        if name is not None:
            child = group[name]
            if isinstance(child, snx.Field):
                raise ValueError(
                    f"Expected a NeXus group as item '{name}' but got a field."
                )
            if child.nx_class != nx_class:
                raise ValueError(
                    f"The NeXus group '{name}' was expected to be a "
                    f'{nx_class} but is a {child.nx_class}.'
                )
            return child
    
        children = group[nx_class]
        if len(children) != 1:
>           raise ValueError(
                f"Expected exactly one {nx_class.__name__} group '{group.name}', "
                f"got {len(children)}"
            )
E           ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
E           In provider ess.reduce.nexus.workflow.load_nexus_component(
E               location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
E               nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
E           ) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError

View job log here


ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
In provider ess.reduce.nexus.workflow.load_nexus_component(
    location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
    nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f6ba0c097c0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_bifrost_999999_00020564.hdf')
check_everything_events = <function _check_everything_events at 0x7f6ba2fc7a60>

    def test_bifrost_read_detector_everything__all_detectors(
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        check_everything_events: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
>       detectors = sciline.compute_mapped(workflow, RawDetector[SampleRun])
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/bifrost/bifrost_load_nexus_test.py:89: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:466: in compute_mapped
    results = pipeline.compute(key_series)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/task_graph.py:119: in compute
    results = self._scheduler.get(self._graph, list(targets), reporter=reporter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/scheduler.py:140: in get
    return self._dask_get(dsk, list(map(_to_dask_key, keys)))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:242: in load_nexus_component
    nexus.load_component(location, nx_class=nx_class, definitions=definitions)
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:99: in load_component
    with open_component_group(
/opt/miniforge/lib/python3.12/contextlib.py:137: in __enter__
    return next(self.gen)
           ^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:325: in open_component_group
    yield _unique_child_group(parent, nx_class, group_name)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

group = <scippnexus.base.Group object at 0x7f6b6c30eae0>
nx_class = <class 'scippnexus.nexus_classes.NXmoderator'>, name = None

    def _unique_child_group(
        group: snx.Group, nx_class: type[snx.NXobject], name: str | None
    ) -> snx.Group:
        if name is not None:
            child = group[name]
            if isinstance(child, snx.Field):
                raise ValueError(
                    f"Expected a NeXus group as item '{name}' but got a field."
                )
            if child.nx_class != nx_class:
                raise ValueError(
                    f"The NeXus group '{name}' was expected to be a "
                    f'{nx_class} but is a {child.nx_class}.'
                )
            return child
    
        children = group[nx_class]
        if len(children) != 1:
>           raise ValueError(
                f"Expected exactly one {nx_class.__name__} group '{group.name}', "
                f"got {len(children)}"
            )
E           ValueError: Expected exactly one NXmoderator group '/entry/instrument', got 0
E           In provider ess.reduce.nexus.workflow.load_nexus_component(
E               location: ess.reduce.nexus.types.NeXusComponentLocationSpec[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun],
E               nx_class: ess.reduce.nexus.types.NeXusClass[scippnexus.nexus_classes.NXsource],
E           ) -> ess.reduce.nexus.types.NeXusComponent[scippnexus.nexus_classes.NXsource, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-bifrost/lib/python3.12/site-packages/ess/reduce/nexus/_nexus_loader.py:384: ValueError

View job log here


Test passed, nothing to report

View job log here


Test passed, nothing to report

View job log here


Test passed, nothing to report

View job log here


Test passed, nothing to report

View job log here


Test passed, nothing to report

View job log here


Test passed, nothing to report

View job log here


Test passed, nothing to report