diff --git a/pyproject.toml b/pyproject.toml index 1fab023c..8bd51714 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -38,7 +38,7 @@ dependencies = [ "pandas", "plopp", "pythreejs", - "sciline>=24.06.2", + "sciline>=25.04.1", "scipp>=24.09.1", # Fixed new hist/bin API "scippneutron>=25.02.1", "scippnexus>=23.12.1", # 23.12.0 and below deadlock in threaded use diff --git a/requirements/base.in b/requirements/base.in index 98e31ae1..821db426 100644 --- a/requirements/base.in +++ b/requirements/base.in @@ -9,7 +9,7 @@ numpy pandas plopp pythreejs -sciline>=24.06.2 +sciline>=25.04.1 scipp>=24.09.1 scippneutron>=25.02.1 scippnexus>=23.12.1 diff --git a/requirements/base.txt b/requirements/base.txt index e0ac0ca5..eb690550 100644 --- a/requirements/base.txt +++ b/requirements/base.txt @@ -1,4 +1,4 @@ -# SHA1:4505a5e875bef5ea2f9d5ce0d28ffeafee367336 +# SHA1:9ceca0d4836c3d2459f42c28f60b679a19c8d660 # # This file is autogenerated by pip-compile-multi # To update, run: @@ -21,23 +21,23 @@ cyclebane==24.10.0 # via sciline cycler==0.12.1 # via matplotlib -dask==2025.2.0 +dask==2025.3.0 # via -r base.in -decorator==5.1.1 +decorator==5.2.1 # via ipython dnspython==2.7.0 # via email-validator email-validator==2.2.0 # via scippneutron -essreduce==25.2.4 +essreduce==25.4.1 # via -r base.in exceptiongroup==1.2.2 # via ipython executing==2.2.0 # via stack-data -fonttools==4.56.0 +fonttools==4.57.0 # via matplotlib -fsspec==2025.2.0 +fsspec==2025.3.2 # via dask graphviz==0.20.3 # via -r base.in @@ -51,7 +51,7 @@ importlib-metadata==8.6.1 # via dask ipydatawidgets==4.3.5 # via pythreejs -ipython==8.32.0 +ipython==8.35.0 # via ipywidgets ipywidgets==8.1.5 # via @@ -64,10 +64,12 @@ jupyterlab-widgets==3.0.13 kiwisolver==1.4.8 # via matplotlib lazy-loader==0.4 - # via scippneutron + # via + # plopp + # scippneutron locket==1.0.0 # via partd -matplotlib==3.10.0 +matplotlib==3.10.1 # via # mpltoolbox # plopp @@ -77,7 +79,7 @@ mpltoolbox==24.5.1 # via scippneutron networkx==3.4.2 # via cyclebane -numpy==2.2.3 +numpy==2.2.4 # via # -r base.in # contourpy @@ -105,7 +107,7 @@ pexpect==4.9.0 # via ipython pillow==11.1.0 # via matplotlib -plopp==24.10.0 +plopp==25.3.0 # via # -r base.in # scippneutron @@ -115,13 +117,13 @@ ptyprocess==0.7.0 # via pexpect pure-eval==0.2.3 # via stack-data -pydantic==2.10.6 +pydantic==2.11.3 # via scippneutron -pydantic-core==2.27.2 +pydantic-core==2.33.1 # via pydantic pygments==2.19.1 # via ipython -pyparsing==3.2.1 +pyparsing==3.2.3 # via matplotlib python-dateutil==2.9.0.post0 # via @@ -131,11 +133,11 @@ python-dateutil==2.9.0.post0 # scippnexus pythreejs==2.4.2 # via -r base.in -pytz==2025.1 +pytz==2025.2 # via pandas pyyaml==6.0.2 # via dask -sciline==24.10.0 +sciline==25.4.1 # via # -r base.in # essreduce @@ -149,7 +151,7 @@ scippneutron==25.2.1 # via # -r base.in # essreduce -scippnexus==24.11.1 +scippnexus==25.4.0 # via # -r base.in # essreduce @@ -176,12 +178,16 @@ traitlets==5.14.3 # traittypes traittypes==0.2.1 # via ipydatawidgets -typing-extensions==4.12.2 +typing-extensions==4.13.1 # via # ipython # pydantic # pydantic-core -tzdata==2025.1 + # sciline + # typing-inspection +typing-inspection==0.4.0 + # via pydantic +tzdata==2025.2 # via pandas wcwidth==0.2.13 # via prompt-toolkit diff --git a/requirements/basetest.txt b/requirements/basetest.txt index 827641d7..98728685 100644 --- a/requirements/basetest.txt +++ b/requirements/basetest.txt @@ -13,21 +13,21 @@ exceptiongroup==1.2.2 # via pytest idna==3.10 # via requests -iniconfig==2.0.0 +iniconfig==2.1.0 # via pytest -numpy==2.2.3 +numpy==2.2.4 # via scipy packaging==24.2 # via # pooch # pytest -platformdirs==4.3.6 +platformdirs==4.3.7 # via pooch pluggy==1.5.0 # via pytest pooch==1.8.2 # via -r basetest.in -pytest==8.3.4 +pytest==8.3.5 # via -r basetest.in requests==2.32.3 # via pooch diff --git a/requirements/ci.txt b/requirements/ci.txt index 1faaceaf..176b5124 100644 --- a/requirements/ci.txt +++ b/requirements/ci.txt @@ -17,7 +17,7 @@ colorama==0.4.6 # via tox distlib==0.3.9 # via virtualenv -filelock==3.17.0 +filelock==3.18.0 # via # tox # virtualenv @@ -32,7 +32,7 @@ packaging==24.2 # -r ci.in # pyproject-api # tox -platformdirs==4.3.6 +platformdirs==4.3.7 # via # tox # virtualenv @@ -48,11 +48,11 @@ tomli==2.2.1 # via # pyproject-api # tox -tox==4.24.1 +tox==4.25.0 # via -r ci.in -typing-extensions==4.12.2 +typing-extensions==4.13.1 # via tox urllib3==2.3.0 # via requests -virtualenv==20.29.2 +virtualenv==20.30.0 # via tox diff --git a/requirements/dev.txt b/requirements/dev.txt index b9014c97..091efdaf 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -12,7 +12,7 @@ -r static.txt -r test.txt -r wheels.txt -anyio==4.8.0 +anyio==4.9.0 # via # httpx # jupyter-server @@ -22,13 +22,13 @@ argon2-cffi-bindings==21.2.0 # via argon2-cffi arrow==1.3.0 # via isoduration -async-lru==2.0.4 +async-lru==2.0.5 # via jupyterlab cffi==1.17.1 # via argon2-cffi-bindings -copier==9.5.0 +copier==9.6.0 # via -r dev.in -dunamai==1.23.0 +dunamai==1.23.1 # via copier fqdn==1.5.1 # via jsonschema @@ -44,7 +44,7 @@ isoduration==20.11.0 # via jsonschema jinja2-ansible-filters==1.3.2 # via copier -json5==0.10.0 +json5==0.12.0 # via jupyterlab-server jsonpointer==3.0.0 # via jsonschema @@ -65,7 +65,7 @@ jupyter-server==2.15.0 # notebook-shim jupyter-server-terminals==0.5.3 # via jupyter-server -jupyterlab==4.3.5 +jupyterlab==4.4.0 # via -r dev.in jupyterlab-server==2.27.3 # via jupyterlab @@ -75,7 +75,7 @@ overrides==7.7.0 # via jupyter-server pathspec==0.12.1 # via copier -pip-compile-multi==2.7.1 +pip-compile-multi==2.8.0 # via -r dev.in pip-tools==7.4.1 # via pip-compile-multi @@ -85,7 +85,7 @@ prometheus-client==0.21.1 # via jupyter-server pycparser==2.22 # via cffi -python-json-logger==3.2.1 +python-json-logger==3.3.0 # via jupyter-events questionary==2.1.0 # via copier diff --git a/requirements/docs.txt b/requirements/docs.txt index 40809442..e1d7da63 100644 --- a/requirements/docs.txt +++ b/requirements/docs.txt @@ -10,7 +10,7 @@ accessible-pygments==0.0.5 # via pydata-sphinx-theme alabaster==1.0.0 # via sphinx -attrs==25.1.0 +attrs==25.3.0 # via # jsonschema # referencing @@ -28,7 +28,7 @@ certifi==2025.1.31 # via requests charset-normalizer==3.4.1 # via requests -debugpy==1.8.12 +debugpy==1.8.13 # via ipykernel defusedxml==0.7.1 # via nbconvert @@ -44,7 +44,7 @@ imagesize==1.4.1 # via sphinx ipykernel==6.29.5 # via -r docs.in -jinja2==3.1.5 +jinja2==3.1.6 # via # myst-parser # nbconvert @@ -79,7 +79,7 @@ mdit-py-plugins==0.4.2 # via myst-parser mdurl==0.1.2 # via markdown-it-py -mistune==3.1.2 +mistune==3.1.3 # via nbconvert myst-parser==4.0.1 # via -r docs.in @@ -92,13 +92,13 @@ nbformat==5.10.4 # nbclient # nbconvert # nbsphinx -nbsphinx==0.9.6 +nbsphinx==0.9.7 # via -r docs.in nest-asyncio==1.6.0 # via ipykernel pandocfilters==1.5.1 # via nbconvert -platformdirs==4.3.6 +platformdirs==4.3.7 # via # jupyter-core # pooch @@ -108,7 +108,7 @@ psutil==7.0.0 # via ipykernel pydata-sphinx-theme==0.16.1 # via -r docs.in -pyzmq==26.2.1 +pyzmq==26.4.0 # via # ipykernel # jupyter-client @@ -120,7 +120,7 @@ requests==2.32.3 # via # pooch # sphinx -rpds-py==0.23.0 +rpds-py==0.24.0 # via # jsonschema # referencing diff --git a/requirements/nightly.txt b/requirements/nightly.txt index e5601846..0ead56a1 100644 --- a/requirements/nightly.txt +++ b/requirements/nightly.txt @@ -28,9 +28,9 @@ cyclebane==24.10.0 # via sciline cycler==0.12.1 # via matplotlib -dask==2025.2.0 +dask==2025.3.0 # via -r nightly.in -decorator==5.1.1 +decorator==5.2.1 # via ipython dnspython==2.7.0 # via email-validator @@ -44,9 +44,9 @@ exceptiongroup==1.2.2 # pytest executing==2.2.0 # via stack-data -fonttools==4.56.0 +fonttools==4.57.0 # via matplotlib -fsspec==2025.2.0 +fsspec==2025.3.2 # via dask graphviz==0.20.3 # via -r nightly.in @@ -60,11 +60,11 @@ idna==3.10 # requests importlib-metadata==8.6.1 # via dask -iniconfig==2.0.0 +iniconfig==2.1.0 # via pytest ipydatawidgets==4.3.5 # via pythreejs -ipython==8.32.0 +ipython==8.35.0 # via ipywidgets ipywidgets==8.1.5 # via @@ -82,7 +82,7 @@ lazy-loader==0.4 # scippneutron locket==1.0.0 # via partd -matplotlib==3.10.0 +matplotlib==3.10.1 # via # mpltoolbox # plopp @@ -92,7 +92,7 @@ mpltoolbox==24.5.1 # via scippneutron networkx==3.4.2 # via cyclebane -numpy==2.2.3 +numpy==2.2.4 # via # -r nightly.in # contourpy @@ -122,7 +122,7 @@ pexpect==4.9.0 # via ipython pillow==11.1.0 # via matplotlib -platformdirs==4.3.6 +platformdirs==4.3.7 # via pooch plopp @ git+https://github.com/scipp/plopp@main # via @@ -138,15 +138,15 @@ ptyprocess==0.7.0 # via pexpect pure-eval==0.2.3 # via stack-data -pydantic==2.11.0a2 +pydantic==2.11.3 # via scippneutron -pydantic-core==2.29.0 +pydantic-core==2.33.1 # via pydantic pygments==2.19.1 # via ipython -pyparsing==3.2.1 +pyparsing==3.2.3 # via matplotlib -pytest==8.3.4 +pytest==8.3.5 # via -r nightly.in python-dateutil==2.9.0.post0 # via @@ -156,7 +156,7 @@ python-dateutil==2.9.0.post0 # scippnexus pythreejs==2.4.2 # via -r nightly.in -pytz==2025.1 +pytz==2025.2 # via pandas pyyaml==6.0.2 # via dask @@ -206,12 +206,16 @@ traitlets==5.14.3 # traittypes traittypes==0.2.1 # via ipydatawidgets -typing-extensions==4.12.2 +typing-extensions==4.13.1 # via # ipython # pydantic # pydantic-core -tzdata==2025.1 + # sciline + # typing-inspection +typing-inspection==0.4.0 + # via pydantic +tzdata==2025.2 # via pandas urllib3==2.3.0 # via requests diff --git a/requirements/static.txt b/requirements/static.txt index a0569bda..c0e73660 100644 --- a/requirements/static.txt +++ b/requirements/static.txt @@ -9,17 +9,17 @@ cfgv==3.4.0 # via pre-commit distlib==0.3.9 # via virtualenv -filelock==3.17.0 +filelock==3.18.0 # via virtualenv -identify==2.6.7 +identify==2.6.9 # via pre-commit nodeenv==1.9.1 # via pre-commit -platformdirs==4.3.6 +platformdirs==4.3.7 # via virtualenv -pre-commit==4.1.0 +pre-commit==4.2.0 # via -r static.in pyyaml==6.0.2 # via pre-commit -virtualenv==20.29.2 +virtualenv==20.30.0 # via pre-commit diff --git a/src/ess/sans/types.py b/src/ess/sans/types.py index 4d80ea09..b3c14c2c 100644 --- a/src/ess/sans/types.py +++ b/src/ess/sans/types.py @@ -178,9 +178,7 @@ class TofData(sciline.Scope[ScatteringRunType, sc.DataArray], sc.DataArray): """Data with a time-of-flight coordinate""" -class TofMonitor( - sciline.ScopeTwoParams[RunType, MonitorType, sc.DataGroup], sc.DataGroup -): +class TofMonitor(sciline.Scope[RunType, MonitorType, sc.DataGroup], sc.DataGroup): """Monitor data with a time-of-flight coordinate""" @@ -196,7 +194,7 @@ class MonitorTerm(sciline.Scope[ScatteringRunType, sc.DataArray], sc.DataArray): class CleanWavelength( - sciline.ScopeTwoParams[ScatteringRunType, IofQPart, sc.DataArray], sc.DataArray + sciline.Scope[ScatteringRunType, IofQPart, sc.DataArray], sc.DataArray ): """ Prerequisite for IofQ numerator or denominator. @@ -208,50 +206,44 @@ class CleanWavelength( class WavelengthScaledQ( - sciline.ScopeTwoParams[ScatteringRunType, IofQPart, sc.DataArray], sc.DataArray + sciline.Scope[ScatteringRunType, IofQPart, sc.DataArray], sc.DataArray ): """Result of applying wavelength scaling/masking to :py:class:`CleanSummedQ`""" class WavelengthScaledQxy( - sciline.ScopeTwoParams[ScatteringRunType, IofQPart, sc.DataArray], sc.DataArray + sciline.Scope[ScatteringRunType, IofQPart, sc.DataArray], sc.DataArray ): """Result of applying wavelength scaling/masking to :py:class:`CleanSummedQxy`""" -class CleanQ( - sciline.ScopeTwoParams[ScatteringRunType, IofQPart, sc.DataArray], sc.DataArray -): +class CleanQ(sciline.Scope[ScatteringRunType, IofQPart, sc.DataArray], sc.DataArray): """Result of converting :py:class:`CleanWavelengthMasked` to Q""" -class CleanQxy( - sciline.ScopeTwoParams[ScatteringRunType, IofQPart, sc.DataArray], sc.DataArray -): +class CleanQxy(sciline.Scope[ScatteringRunType, IofQPart, sc.DataArray], sc.DataArray): """Result of converting :py:class:`CleanWavelengthMasked` to Qx and Qy""" class CleanSummedQ( - sciline.ScopeTwoParams[ScatteringRunType, IofQPart, sc.DataArray], sc.DataArray + sciline.Scope[ScatteringRunType, IofQPart, sc.DataArray], sc.DataArray ): """Result of histogramming/binning :py:class:`CleanQ` over all pixels into Q bins""" class CleanSummedQxy( - sciline.ScopeTwoParams[ScatteringRunType, IofQPart, sc.DataArray], sc.DataArray + sciline.Scope[ScatteringRunType, IofQPart, sc.DataArray], sc.DataArray ): """Result of histogramming/binning :py:class:`CleanQxy` over all pixels into Qx and Qy bins""" -class ReducedQ( - sciline.ScopeTwoParams[ScatteringRunType, IofQPart, sc.DataArray], sc.DataArray -): +class ReducedQ(sciline.Scope[ScatteringRunType, IofQPart, sc.DataArray], sc.DataArray): """Result of reducing :py:class:`CleanSummedQ` over the wavelength dimensions""" class ReducedQxy( - sciline.ScopeTwoParams[ScatteringRunType, IofQPart, sc.DataArray], sc.DataArray + sciline.Scope[ScatteringRunType, IofQPart, sc.DataArray], sc.DataArray ): """Result of reducing :py:class:`CleanSummedQxy` over the wavelength dimensions""" @@ -272,14 +264,12 @@ class IofQxy(sciline.Scope[ScatteringRunType, sc.DataArray], sc.DataArray): class WavelengthMonitor( - sciline.ScopeTwoParams[RunType, MonitorType, sc.DataArray], sc.DataArray + sciline.Scope[RunType, MonitorType, sc.DataArray], sc.DataArray ): """Monitor data converted to wavelength""" -class CleanMonitor( - sciline.ScopeTwoParams[RunType, MonitorType, sc.DataArray], sc.DataArray -): +class CleanMonitor(sciline.Scope[RunType, MonitorType, sc.DataArray], sc.DataArray): """Monitor data cleaned of background counts"""