DMSC Integration Testing

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

Test: nexusfiles-scipp|loki|can_compute_wavelength|loki_detector_0

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7fc23833f4a0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00022382.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f51b99746e0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00022302.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f7fa3559ee0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00022252.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f413b61fb60>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00022212.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f14434d3140>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00022202.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f3416d71520>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00022192.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f1d40eddc70>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00022112.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f82404c5970>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00022072.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7fbef8589b80>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00022062.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f9717f880b0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00022062.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f1862e51220>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00022042.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f46a77e4860>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00022042.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f149c827c50>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00022042.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f3453c07920>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00022032.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f85340b0230>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00022022.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7ff23c4b4b30>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00022022.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f5371e11f70>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00021972.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f83c5d86300>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00021908.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7fe85abf4d40>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00021908.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f893a87e990>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00021898.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f383b175250>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00021838.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f89f1a85520>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00021698.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f5ae78c7ef0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00021558.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f1b640b8a40>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00021518.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7fc0546c8f20>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00021418.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7fb48c06ecc0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00021268.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f3646dcd1c0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00021128.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7fb510e551c0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00020988.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f5814109e80>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00020918.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f5568b30aa0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00020898.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f7a840fdc70>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00020898.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f288404c440>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00020898.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7fd136f594c0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00020708.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7fb0a018ed80>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00020568.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f15488d3260>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00020558.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f9802acbe60>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00020412.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f88f4c455b0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00020272.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f2674537350>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00020199.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f08a05520f0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00020199.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7fc540181400>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00020199.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7fe2479104d0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00020199.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError

View job log here


ValueError: Transform is time-dependent: <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0
* maximum_value             float64             [mm]  ()  0
* minimum_value             float64             [mm]  ()  0
* time                    datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []

, but no filter is provided.
In provider ess.reduce.nexus.workflow.to_transformation(
    chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
    interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
    time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError
Full output
workflow = <sciline.pipeline.Pipeline object at 0x7f13b63ccfe0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_loki_999999_00020199.hdf')
detector_name = 'loki_detector_0'

    @pytest.mark.parametrize(
        "detector_name",
        [f"loki_detector_{i}" for i in range(9)] + [f"beam_monitor_m{i}" for i in range(5)],
    )
    def test_can_compute_wavelength(
        workflow: sciline.Pipeline, coda_nexus_file_path: Path, detector_name: str
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
    
        if "monitor" in detector_name:
            workflow[NeXusMonitorName[Incident]] = detector_name
            result = workflow.compute(WavelengthMonitor[SampleRun, Incident])
        else:
            workflow[NeXusDetectorName] = detector_name
>           result = workflow.compute(WavelengthDetector[SampleRun])
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/loki/loki_reduction_test.py:48: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/pipeline.py:191: in compute
    return self.get(tp, **kwargs).compute(reporter=reporter)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/task_graph.py:122: in compute
    return self._scheduler.get(self._graph, [targets], reporter=reporter)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/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-loki/lib/python3.12/site-packages/dask/threaded.py:115: in get
    results = get_async(
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:547: in get_async
    raise_exception(exc, tb)
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:351: in reraise
    raise exc
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/local.py:256: in execute_task
    result = task(data)
             ^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/_task_spec.py:768: in __call__
    return self.func(*new_argspec)
           ^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/dask/utils.py:81: in apply
    return func(*args)
           ^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/sciline/_provider.py:145: in __call__
    return self._func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:375: in to_transformation
    t.value = _apply_time_filter(t.value['time', interval.value], time_filter)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:319: in _apply_time_filter
    filtered = user_filter(transform)
               ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

transform = <scipp.DataArray>
Dimensions: Sizes[time:0, ]
Coordinates:
* average_value             float64             [mm]  ()  0...       datetime64             [ns]  (time)  []
Data:
                            float64             [mm]  (time)  []



    def reject_time_dependent_transform(
        transform: sc.DataArray,
    ) -> Never:
        """Raise a value error to forbid time-dependent transformations by default."""
>       raise ValueError(
            f"Transform is time-dependent: {transform}, but no filter is provided."
        )
E       ValueError: Transform is time-dependent: <scipp.DataArray>
E       Dimensions: Sizes[time:0, ]
E       Coordinates:
E       * average_value             float64             [mm]  ()  0
E       * maximum_value             float64             [mm]  ()  0
E       * minimum_value             float64             [mm]  ()  0
E       * time                    datetime64             [ns]  (time)  []
E       Data:
E                                   float64             [mm]  (time)  []
E       
E       , but no filter is provided.
E       In provider ess.reduce.nexus.workflow.to_transformation(
E           chain: ess.reduce.nexus.types.NeXusTransformationChain[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E           interval: ess.reduce.nexus.types.TimeInterval[ess.reduce.nexus.types.SampleRun],
E           time_filter: ess.reduce.nexus.types.TransformationTimeFilter[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun],
E       ) -> ess.reduce.nexus.types.NeXusTransformation[scippnexus.nxdetector.NXdetector, ess.reduce.nexus.types.SampleRun]

.tox/nexusfiles-scipp-loki/lib/python3.12/site-packages/ess/reduce/nexus/workflow.py:308: ValueError