diff --git a/.copier-answers.yml b/.copier-answers.yml index b45b72b45..0da7d05d3 100644 --- a/.copier-answers.yml +++ b/.copier-answers.yml @@ -1,13 +1,13 @@ # Changes here will be overwritten by Copier; NEVER EDIT MANUALLY -_commit: cac2bde +_commit: 86a1e5c _src_path: gh:scipp/copier_template description: Live data reduction visualisation framework for ESS. max_python: '3.12' min_python: '3.10' namespace_package: '' -nightly_deps: scipp,sciline,plopp,scippneutron +nightly_deps: scipp,sciline,plopp,essreduce orgname: scipp prettyname: Beamlime projectname: beamlime -related_projects: Scipp,Sciline,Plopp,ScippNeutron +related_projects: Scipp,Sciline,Plopp,Essreduce year: 2024 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 44266a238..8234bc9f9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -46,6 +46,7 @@ jobs: os-variant: ${{ matrix.os }} python-version: ${{ matrix.python.version }} tox-env: ${{ matrix.python.tox-env }} + secrets: inherit docs: needs: tests @@ -54,3 +55,4 @@ jobs: publish: false linkcheck: ${{ contains(matrix.variant.os, 'ubuntu') && github.ref == 'refs/heads/main' }} branch: ${{ github.head_ref == '' && github.ref_name || github.head_ref }} + secrets: inherit diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 98aaf5685..a5ea2b05c 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -42,6 +42,10 @@ jobs: docs: name: Build documentation runs-on: 'ubuntu-22.04' + env: + ESS_PROTECTED_FILESTORE_USERNAME: ${{ secrets.ESS_PROTECTED_FILESTORE_USERNAME }} + ESS_PROTECTED_FILESTORE_PASSWORD: ${{ secrets.ESS_PROTECTED_FILESTORE_PASSWORD }} + steps: - run: sudo apt install --yes graphviz pandoc - uses: actions/checkout@v4 @@ -65,7 +69,7 @@ jobs: name: docs_html path: html/ - - uses: JamesIves/github-pages-deploy-action@v4.6.1 + - uses: JamesIves/github-pages-deploy-action@v4.6.3 if: ${{ inputs.publish }} with: branch: gh-pages diff --git a/.github/workflows/nightly_at_main.yml b/.github/workflows/nightly_at_main.yml index 08fdddd29..c2b9d33a3 100644 --- a/.github/workflows/nightly_at_main.yml +++ b/.github/workflows/nightly_at_main.yml @@ -31,3 +31,4 @@ jobs: os-variant: ${{ matrix.os }} python-version: ${{ matrix.python.version }} tox-env: ${{ matrix.python.tox-env }} + secrets: inherit diff --git a/.github/workflows/nightly_at_release.yml b/.github/workflows/nightly_at_release.yml index 373c45463..3faa1c23b 100644 --- a/.github/workflows/nightly_at_release.yml +++ b/.github/workflows/nightly_at_release.yml @@ -38,3 +38,4 @@ jobs: python-version: ${{ matrix.python.version }} tox-env: ${{ matrix.python.tox-env }} checkout_ref: ${{ needs.setup.outputs.release_tag }} + secrets: inherit diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 5f56a069a..e98ed7cdf 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -41,8 +41,26 @@ on: type: string jobs: + package-test: + runs-on: ${{ inputs.os-variant }} + + steps: + - uses: actions/checkout@v4 + with: + ref: ${{ inputs.checkout_ref }} + - uses: actions/setup-python@v5 + with: + python-version: ${{ inputs.python-version }} + - run: python -m pip install --upgrade pip + - run: python -m pip install . + - run: python tests/package_test.py + name: Run package tests + test: runs-on: ${{ inputs.os-variant }} + env: + ESS_PROTECTED_FILESTORE_USERNAME: ${{ secrets.ESS_PROTECTED_FILESTORE_USERNAME }} + ESS_PROTECTED_FILESTORE_PASSWORD: ${{ secrets.ESS_PROTECTED_FILESTORE_PASSWORD }} steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/unpinned.yml b/.github/workflows/unpinned.yml index 46a84c1c7..3f49f7223 100644 --- a/.github/workflows/unpinned.yml +++ b/.github/workflows/unpinned.yml @@ -38,3 +38,4 @@ jobs: python-version: ${{ matrix.python.version }} tox-env: ${{ matrix.python.tox-env }} checkout_ref: ${{ needs.setup.outputs.release_tag }} + secrets: inherit diff --git a/.gitignore b/.gitignore index 1c6a4f10d..beb6953b8 100644 --- a/.gitignore +++ b/.gitignore @@ -20,6 +20,7 @@ __pycache__/ .pytest_cache .mypy_cache docs/generated/ +.ruff_cache # Editor settings .idea/ diff --git a/conda/meta.yaml b/conda/meta.yaml index e27986afc..1bd6e3e98 100644 --- a/conda/meta.yaml +++ b/conda/meta.yaml @@ -17,7 +17,7 @@ requirements: - setuptools_scm run: - rich - - scippneutron>=24.03.0 + - essreduce - python>=3.10 {% for package in dependencies %} @@ -33,11 +33,13 @@ test: - pytest-asyncio - psutil - pandas + - pyarrow # Future hard-dependency of pandas, it can be removed from pandas>3.0 - numpy - scipp - plopp - sciline - - scippneutron>=24.03.0 + - essreduce + - pooch source_files: - pyproject.toml - tests/ diff --git a/docs/_templates/doc_version.html b/docs/_templates/doc_version.html index 48f9aacf1..84d02c70e 100644 --- a/docs/_templates/doc_version.html +++ b/docs/_templates/doc_version.html @@ -1,2 +1,2 @@ -Current {{ project }} version: {{ version }} (older versions). +Current Beamlime version: {{ version }} (older versions). diff --git a/docs/conf.py b/docs/conf.py index 40fd45bd2..752d17445 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -1,10 +1,15 @@ import doctest import os import sys +from importlib.metadata import PackageNotFoundError from importlib.metadata import version as get_version +from sphinx.util import logging + sys.path.insert(0, os.path.abspath('.')) +logger = logging.getLogger(__name__) + # General information about the project. project = 'Beamlime' copyright = '2024 Scipp contributors' @@ -32,6 +37,8 @@ import sciline.sphinxext.domain_types # noqa: F401 extensions.append('sciline.sphinxext.domain_types') + # See https://github.com/tox-dev/sphinx-autodoc-typehints/issues/457 + suppress_warnings = ["config.cache"] except ModuleNotFoundError: pass @@ -109,8 +116,15 @@ # built documents. # -release = get_version("beamlime") -version = ".".join(release.split('.')[:3]) # CalVer +try: + release = get_version("beamlime") + version = ".".join(release.split('.')[:3]) # CalVer +except PackageNotFoundError: + logger.info( + "Warning: determining version from package metadata failed, falling back to " + "a dummy version number." + ) + release = version = "0.0.0-dev" warning_is_error = True @@ -149,10 +163,10 @@ "image_dark": "_static/logo-dark.svg", }, "external_links": [ + {"name": "Essreduce", "url": "https://scipp.github.io/essreduce"}, {"name": "Plopp", "url": "https://scipp.github.io/plopp"}, {"name": "Sciline", "url": "https://scipp.github.io/sciline"}, {"name": "Scipp", "url": "https://scipp.github.io"}, - {"name": "ScippNeutron", "url": "https://scipp.github.io/scippneutron"}, ], "icon_links": [ { diff --git a/pyproject.toml b/pyproject.toml index 13804ec54..1b0319ca8 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -31,7 +31,7 @@ requires-python = ">=3.10" # Make sure to list one dependency per line. dependencies = [ "rich", - "scippneutron>=24.03.0", + "essreduce", ] dynamic = ["version"] diff --git a/requirements/base.in b/requirements/base.in index ac2199cca..ff96fcd66 100644 --- a/requirements/base.in +++ b/requirements/base.in @@ -3,4 +3,4 @@ # --- END OF CUSTOM SECTION --- # The following was generated by 'tox -e deps', DO NOT EDIT MANUALLY! rich -scippneutron>=24.03.0 +essreduce diff --git a/requirements/base.txt b/requirements/base.txt index 37e8aea6b..8c1de218e 100644 --- a/requirements/base.txt +++ b/requirements/base.txt @@ -1,57 +1,36 @@ -# SHA1:d16beb1d2c8626e90a075eda92b5c43d0a9625df +# SHA1:89978bb0fef0efd08032890f4d4bc4e3fd22eb53 # # This file is autogenerated by pip-compile-multi # To update, run: # # pip-compile-multi # -certifi==2024.2.2 - # via requests -charset-normalizer==3.3.2 - # via requests +essreduce==24.8.0 + # via -r base.in h5py==3.11.0 - # via - # scippneutron - # scippnexus -idna==3.7 - # via requests + # via scippnexus markdown-it-py==3.0.0 # via rich mdurl==0.1.2 # via markdown-it-py -numpy==1.26.4 +numpy==2.0.1 # via # h5py # scipp - # scippneutron # scipy -packaging==24.0 - # via pooch -platformdirs==4.2.2 - # via pooch -pooch==1.8.1 - # via scippneutron pygments==2.18.0 # via rich python-dateutil==2.9.0.post0 # via scippnexus -requests==2.32.2 - # via pooch rich==13.7.1 # via -r base.in scipp==24.6.0 # via - # scippneutron - # scippnexus -scippneutron==24.3.0 - # via -r base.in -scippnexus==24.3.1 - # via scippneutron -scipy==1.13.1 - # via - # scippneutron + # essreduce # scippnexus +scippnexus==24.8.1 + # via essreduce +scipy==1.14.0 + # via scippnexus six==1.16.0 # via python-dateutil -urllib3==2.2.1 - # via requests diff --git a/requirements/basetest.in b/requirements/basetest.in index a501c9187..af32a4f0c 100644 --- a/requirements/basetest.in +++ b/requirements/basetest.in @@ -9,5 +9,6 @@ psutil pandas pyarrow # Future hard-dependency of pandas, it can be removed from pandas>3.0 scipp -scippneutron +essreduce plopp +pooch diff --git a/requirements/basetest.txt b/requirements/basetest.txt index 2553ce9b1..3eb619c4a 100644 --- a/requirements/basetest.txt +++ b/requirements/basetest.txt @@ -1,37 +1,39 @@ -# SHA1:381f73e26ef39bd66eeb15db1a231214f6b7a75e +# SHA1:8a4489025b5de25e5a97b53104e3d4354c11c487 # # This file is autogenerated by pip-compile-multi # To update, run: # # pip-compile-multi # -certifi==2024.2.2 +certifi==2024.7.4 # via requests charset-normalizer==3.3.2 # via requests contourpy==1.2.1 # via matplotlib -coverage[toml]==7.5.1 +coverage[toml]==7.6.1 # via pytest-cov cycler==0.12.1 # via matplotlib +essreduce==24.8.0 + # via -r basetest.in +exceptiongroup==1.2.2 + # via pytest execnet==2.1.1 # via pytest-xdist -fonttools==4.51.0 +fonttools==4.53.1 # via matplotlib h5py==3.11.0 - # via - # scippneutron - # scippnexus + # via scippnexus idna==3.7 # via requests iniconfig==2.0.0 # via pytest kiwisolver==1.4.5 # via matplotlib -matplotlib==3.9.0 +matplotlib==3.9.2 # via plopp -numpy==1.26.4 +numpy==2.0.1 # via # contourpy # h5py @@ -39,38 +41,37 @@ numpy==1.26.4 # pandas # pyarrow # scipp - # scippneutron # scipy -packaging==24.0 +packaging==24.1 # via # matplotlib # pooch # pytest pandas==2.2.2 # via -r basetest.in -pillow==10.3.0 +pillow==10.4.0 # via matplotlib platformdirs==4.2.2 # via pooch -plopp==24.5.0 +plopp==24.6.0 # via -r basetest.in pluggy==1.5.0 # via pytest -pooch==1.8.1 - # via scippneutron -psutil==5.9.8 +pooch==1.8.2 + # via -r basetest.in +psutil==6.0.0 # via -r basetest.in -pyarrow==16.1.0 +pyarrow==17.0.0 # via -r basetest.in pyparsing==3.1.2 # via matplotlib -pytest==8.2.1 +pytest==8.3.2 # via # -r basetest.in # pytest-asyncio # pytest-cov # pytest-xdist -pytest-asyncio==0.23.7 +pytest-asyncio==0.23.8 # via -r basetest.in pytest-cov==5.0.0 # via -r basetest.in @@ -83,24 +84,24 @@ python-dateutil==2.9.0.post0 # scippnexus pytz==2024.1 # via pandas -requests==2.32.2 +requests==2.32.3 # via pooch scipp==24.6.0 # via # -r basetest.in - # scippneutron - # scippnexus -scippneutron==24.3.0 - # via -r basetest.in -scippnexus==24.3.1 - # via scippneutron -scipy==1.13.1 - # via - # scippneutron + # essreduce # scippnexus +scippnexus==24.8.1 + # via essreduce +scipy==1.14.0 + # via scippnexus six==1.16.0 # via python-dateutil +tomli==2.0.1 + # via + # coverage + # pytest tzdata==2024.1 # via pandas -urllib3==2.2.1 +urllib3==2.2.2 # via requests diff --git a/requirements/ci.txt b/requirements/ci.txt index 1c70b6a7a..b0cd56cce 100644 --- a/requirements/ci.txt +++ b/requirements/ci.txt @@ -5,9 +5,9 @@ # # pip-compile-multi # -cachetools==5.3.3 +cachetools==5.4.0 # via tox -certifi==2024.2.2 +certifi==2024.7.4 # via requests chardet==5.2.0 # via tox @@ -17,7 +17,7 @@ colorama==0.4.6 # via tox distlib==0.3.8 # via virtualenv -filelock==3.14.0 +filelock==3.15.4 # via # tox # virtualenv @@ -27,7 +27,7 @@ gitpython==3.1.43 # via -r ci.in idna==3.7 # via requests -packaging==24.0 +packaging==24.1 # via # -r ci.in # pyproject-api @@ -38,9 +38,9 @@ platformdirs==4.2.2 # virtualenv pluggy==1.5.0 # via tox -pyproject-api==1.6.1 +pyproject-api==1.7.1 # via tox -requests==2.32.2 +requests==2.32.3 # via -r ci.in smmap==5.0.1 # via gitdb @@ -48,9 +48,9 @@ tomli==2.0.1 # via # pyproject-api # tox -tox==4.15.0 +tox==4.18.0 # via -r ci.in -urllib3==2.2.1 +urllib3==2.2.2 # via requests -virtualenv==20.26.2 +virtualenv==20.26.3 # via tox diff --git a/requirements/dev.txt b/requirements/dev.txt index d7d8a7418..8c1aae535 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -14,7 +14,7 @@ -r wheels.txt annotated-types==0.7.0 # via pydantic -anyio==4.3.0 +anyio==4.4.0 # via # httpx # jupyter-server @@ -26,15 +26,15 @@ arrow==1.3.0 # via isoduration async-lru==2.0.4 # via jupyterlab -cffi==1.16.0 +cffi==1.17.0 # via argon2-cffi-bindings click==8.1.7 # via # pip-compile-multi # pip-tools -copier==9.2.0 +copier==9.3.1 # via -r dev.in -dunamai==1.21.1 +dunamai==1.22.0 # via copier fqdn==1.5.1 # via jsonschema @@ -52,9 +52,9 @@ jinja2-ansible-filters==1.3.2 # via copier json5==0.9.25 # via jupyterlab-server -jsonpointer==2.4 +jsonpointer==3.0.0 # via jsonschema -jsonschema[format-nongpl]==4.22.0 +jsonschema[format-nongpl]==4.23.0 # via # jupyter-events # jupyterlab-server @@ -63,7 +63,7 @@ jupyter-events==0.10.0 # via jupyter-server jupyter-lsp==2.2.5 # via jupyterlab -jupyter-server==2.14.0 +jupyter-server==2.14.2 # via # jupyter-lsp # jupyterlab @@ -71,9 +71,9 @@ jupyter-server==2.14.0 # notebook-shim jupyter-server-terminals==0.5.3 # via jupyter-server -jupyterlab==4.2.1 +jupyterlab==4.2.4 # via -r dev.in -jupyterlab-server==2.27.2 +jupyterlab-server==2.27.3 # via jupyterlab notebook-shim==0.2.4 # via jupyterlab @@ -81,7 +81,7 @@ overrides==7.7.0 # via jupyter-server pathspec==0.12.1 # via copier -pip-compile-multi==2.6.3 +pip-compile-multi==2.6.4 # via -r dev.in pip-tools==7.4.1 # via pip-compile-multi @@ -91,9 +91,9 @@ prometheus-client==0.20.0 # via jupyter-server pycparser==2.22 # via cffi -pydantic==2.7.1 +pydantic==2.8.2 # via copier -pydantic-core==2.18.2 +pydantic-core==2.20.1 # via pydantic python-json-logger==2.0.7 # via jupyter-events @@ -123,11 +123,11 @@ types-python-dateutil==2.9.0.20240316 # via arrow uri-template==1.3.0 # via jsonschema -webcolors==1.13 +webcolors==24.8.0 # via jsonschema websocket-client==1.8.0 # via jupyter-server -wheel==0.43.0 +wheel==0.44.0 # via pip-tools # The following packages are considered to be unsafe in a requirements file: diff --git a/requirements/docs.txt b/requirements/docs.txt index 732fcebce..2f8925b4d 100644 --- a/requirements/docs.txt +++ b/requirements/docs.txt @@ -9,15 +9,15 @@ -r basetest.txt accessible-pygments==0.0.5 # via pydata-sphinx-theme -alabaster==0.7.16 +alabaster==1.0.0 # via sphinx asttokens==2.4.1 # via stack-data -attrs==23.2.0 +attrs==24.2.0 # via # jsonschema # referencing -babel==2.15.0 +babel==2.16.0 # via # pydata-sphinx-theme # sphinx @@ -31,7 +31,7 @@ comm==0.2.2 # via # ipykernel # ipywidgets -debugpy==1.8.1 +debugpy==1.8.5 # via ipykernel decorator==5.1.1 # via ipython @@ -45,17 +45,17 @@ docutils==0.21.2 # sphinx executing==2.0.1 # via stack-data -fastjsonschema==2.19.1 +fastjsonschema==2.20.0 # via nbformat imagesize==1.4.1 # via sphinx ipydatawidgets==4.3.5 # via pythreejs -ipykernel==6.29.4 +ipykernel==6.29.5 # via -r docs.in ipympl==0.9.4 # via -r docs.in -ipython==8.24.0 +ipython==8.26.0 # via # -r docs.in # ipykernel @@ -63,7 +63,7 @@ ipython==8.24.0 # ipywidgets ipython-genutils==0.2.0 # via ipympl -ipywidgets==8.1.2 +ipywidgets==8.1.3 # via # ipydatawidgets # ipympl @@ -76,7 +76,7 @@ jinja2==3.1.4 # nbconvert # nbsphinx # sphinx -jsonschema==4.22.0 +jsonschema==4.23.0 # via nbformat jsonschema-specifications==2023.12.1 # via jsonschema @@ -93,7 +93,7 @@ jupyter-core==5.7.2 # nbformat jupyterlab-pygments==0.3.0 # via nbconvert -jupyterlab-widgets==3.0.10 +jupyterlab-widgets==3.0.11 # via ipywidgets markupsafe==2.1.5 # via @@ -107,7 +107,7 @@ mdit-py-plugins==0.4.1 # via myst-parser mistune==3.0.2 # via nbconvert -myst-parser==3.0.1 +myst-parser==4.0.0 # via -r docs.in nbclient==0.10.0 # via nbconvert @@ -118,7 +118,7 @@ nbformat==5.10.4 # nbclient # nbconvert # nbsphinx -nbsphinx==0.9.4 +nbsphinx==0.9.5 # via -r docs.in nest-asyncio==1.6.0 # via ipykernel @@ -128,19 +128,19 @@ parso==0.8.4 # via jedi pexpect==4.9.0 # via ipython -prompt-toolkit==3.0.43 +prompt-toolkit==3.0.47 # via ipython ptyprocess==0.7.0 # via pexpect -pure-eval==0.2.2 +pure-eval==0.2.3 # via stack-data -pydata-sphinx-theme==0.15.2 +pydata-sphinx-theme==0.15.4 # via -r docs.in pythreejs==2.4.2 # via -r docs.in -pyyaml==6.0.1 +pyyaml==6.0.2 # via myst-parser -pyzmq==26.0.3 +pyzmq==26.1.0 # via # ipykernel # jupyter-client @@ -148,15 +148,15 @@ referencing==0.35.1 # via # jsonschema # jsonschema-specifications -rpds-py==0.18.1 +rpds-py==0.20.0 # via # jsonschema # referencing snowballstemmer==2.2.0 # via sphinx -soupsieve==2.5 +soupsieve==2.6 # via beautifulsoup4 -sphinx==7.3.7 +sphinx==8.0.2 # via # -r docs.in # myst-parser @@ -165,29 +165,29 @@ sphinx==7.3.7 # sphinx-autodoc-typehints # sphinx-copybutton # sphinx-design -sphinx-autodoc-typehints==2.1.0 +sphinx-autodoc-typehints==2.2.3 # via -r docs.in sphinx-copybutton==0.5.2 # via -r docs.in -sphinx-design==0.6.0 +sphinx-design==0.6.1 # via -r docs.in -sphinxcontrib-applehelp==1.0.8 +sphinxcontrib-applehelp==2.0.0 # via sphinx -sphinxcontrib-devhelp==1.0.6 +sphinxcontrib-devhelp==2.0.0 # via sphinx -sphinxcontrib-htmlhelp==2.0.5 +sphinxcontrib-htmlhelp==2.1.0 # via sphinx sphinxcontrib-jsmath==1.0.1 # via sphinx -sphinxcontrib-qthelp==1.0.7 +sphinxcontrib-qthelp==2.0.0 # via sphinx -sphinxcontrib-serializinghtml==1.1.10 +sphinxcontrib-serializinghtml==2.0.0 # via sphinx stack-data==0.6.3 # via ipython tinycss2==1.3.0 # via nbconvert -tornado==6.4 +tornado==6.4.1 # via # ipykernel # jupyter-client @@ -209,7 +209,7 @@ traitlets==5.14.3 # traittypes traittypes==0.2.1 # via ipydatawidgets -typing-extensions==4.12.0 +typing-extensions==4.12.2 # via # ipython # pydata-sphinx-theme @@ -219,5 +219,5 @@ webencodings==0.5.1 # via # bleach # tinycss2 -widgetsnbextension==4.0.10 +widgetsnbextension==4.0.11 # via ipywidgets diff --git a/requirements/make_base.py b/requirements/make_base.py index 68a17e843..493ede160 100644 --- a/requirements/make_base.py +++ b/requirements/make_base.py @@ -55,7 +55,8 @@ def as_nightly(repo: str) -> str: version = f"cp{sys.version_info.major}{sys.version_info.minor}" base = "https://github.com/scipp/scipp/releases/download/nightly/scipp-nightly" suffix = "manylinux_2_17_x86_64.manylinux2014_x86_64.whl" - return "-".join([base, version, version, suffix]) + prefix = "scipp @ " + return prefix + "-".join([base, version, version, suffix]) return f"{repo} @ git+https://github.com/{org}/{repo}@main" diff --git a/requirements/mypy.txt b/requirements/mypy.txt index f0e7b3bfc..07b04d716 100644 --- a/requirements/mypy.txt +++ b/requirements/mypy.txt @@ -6,9 +6,9 @@ # pip-compile-multi # -r test.txt -mypy==1.10.0 +mypy==1.11.1 # via -r mypy.in mypy-extensions==1.0.0 # via mypy -typing-extensions==4.12.0 +typing-extensions==4.12.2 # via mypy diff --git a/requirements/nightly.in b/requirements/nightly.in index 8915a76f7..cdd8e902a 100644 --- a/requirements/nightly.in +++ b/requirements/nightly.in @@ -2,7 +2,7 @@ # --- END OF CUSTOM SECTION --- # The following was generated by 'tox -e deps', DO NOT EDIT MANUALLY! rich -https://github.com/scipp/scipp/releases/download/nightly/scipp-nightly-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl +scipp @ https://github.com/scipp/scipp/releases/download/nightly/scipp-nightly-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl sciline @ git+https://github.com/scipp/sciline@main plopp @ git+https://github.com/scipp/plopp@main -scippneutron @ git+https://github.com/scipp/scippneutron@main +essreduce @ git+https://github.com/scipp/essreduce@main diff --git a/requirements/nightly.txt b/requirements/nightly.txt index cc8ac154d..6612f0673 100644 --- a/requirements/nightly.txt +++ b/requirements/nightly.txt @@ -1,4 +1,4 @@ -# SHA1:a788a7d080006bdaa621351d9a23825309801235 +# SHA1:c0265a2c0386af2e15f3491a7c2046782b81bb93 # # This file is autogenerated by pip-compile-multi # To update, run: @@ -6,13 +6,19 @@ # pip-compile-multi # -r basetest.txt +cyclebane==24.6.0 + # via sciline markdown-it-py==3.0.0 # via rich mdurl==0.1.2 # via markdown-it-py +networkx==3.3 + # via cyclebane pygments==2.18.0 # via rich rich==13.7.1 # via -r nightly.in sciline @ git+https://github.com/scipp/sciline@main - # via -r nightly.in + # via + # -r nightly.in + # essreduce diff --git a/requirements/static.txt b/requirements/static.txt index 7f416fbac..85da246dd 100644 --- a/requirements/static.txt +++ b/requirements/static.txt @@ -9,20 +9,17 @@ cfgv==3.4.0 # via pre-commit distlib==0.3.8 # via virtualenv -filelock==3.14.0 +filelock==3.15.4 # via virtualenv -identify==2.5.36 +identify==2.6.0 # via pre-commit -nodeenv==1.8.0 +nodeenv==1.9.1 # via pre-commit platformdirs==4.2.2 # via virtualenv -pre-commit==3.7.1 +pre-commit==3.8.0 # via -r static.in -pyyaml==6.0.1 +pyyaml==6.0.2 # via pre-commit -virtualenv==20.26.2 +virtualenv==20.26.3 # via pre-commit - -# The following packages are considered to be unsafe in a requirements file: -# setuptools diff --git a/requirements/stream.txt b/requirements/stream.txt index 835fd66c4..4126e7d28 100644 --- a/requirements/stream.txt +++ b/requirements/stream.txt @@ -6,7 +6,7 @@ # pip-compile-multi # -r base.txt -confluent-kafka==2.4.0 +confluent-kafka==2.5.0 # via -r stream.in linkify-it-py==2.0.3 # via markdown-it-py @@ -17,9 +17,9 @@ markdown-it-py[linkify,plugins]==3.0.0 # textual mdit-py-plugins==0.4.1 # via markdown-it-py -textual==0.63.2 +textual==0.76.0 # via -r stream.in -typing-extensions==4.12.0 +typing-extensions==4.12.2 # via textual uc-micro-py==1.0.3 # via linkify-it-py diff --git a/requirements/wheels.txt b/requirements/wheels.txt index d1a95de4f..a1fa46e23 100644 --- a/requirements/wheels.txt +++ b/requirements/wheels.txt @@ -7,7 +7,7 @@ # build==1.2.1 # via -r wheels.in -packaging==24.0 +packaging==24.1 # via build pyproject-hooks==1.1.0 # via build diff --git a/src/beamlime/applications/handlers.py b/src/beamlime/applications/handlers.py index bf4c28cf6..95b7a4b41 100644 --- a/src/beamlime/applications/handlers.py +++ b/src/beamlime/applications/handlers.py @@ -9,7 +9,7 @@ from typing import NewType import scipp as sc -from scippneutron.io.nexus._json_nexus import JSONGroup +from ess.reduce.nexus.json_nexus import JSONGroup from beamlime.logging import BeamlimeLogger diff --git a/src/beamlime/stateless_workflow.py b/src/beamlime/stateless_workflow.py index 73a7c289c..724adc3f0 100644 --- a/src/beamlime/stateless_workflow.py +++ b/src/beamlime/stateless_workflow.py @@ -3,14 +3,12 @@ from importlib.metadata import entry_points from typing import NewType, Protocol +from ess.reduce.nexus.json_nexus import JSONGroup + try: import scipp as sc - from scippneutron.io.nexus.load_nexus import JSONGroup except ImportError as e: - raise ImportError( - "Please install the scipp and " - "scippneutron packages to use the ``DummyWorkflow``." - ) from e + raise ImportError("Please install the scipp to use the ``DummyWorkflow``.") from e Workflow = NewType('Workflow', str) diff --git a/tests/package_test.py b/tests/package_test.py index 146f009d6..c7a5ec231 100644 --- a/tests/package_test.py +++ b/tests/package_test.py @@ -1,7 +1,20 @@ # SPDX-License-Identifier: BSD-3-Clause # Copyright (c) 2024 Scipp contributors (https://github.com/scipp) + +"""Tests of package integrity. + +Note that addidional imports need to be added for repositories that +contain multiple packages. +""" + import beamlime as pkg def test_has_version(): assert hasattr(pkg, '__version__') + + +# This is for CI package tests. They need to run tests with minimal dependencies, +# that is, without installing pytest. This code does not affect pytest. +if __name__ == '__main__': + test_has_version() diff --git a/tox.ini b/tox.ini index 7ff5d95e6..bd3c75134 100644 --- a/tox.ini +++ b/tox.ini @@ -63,5 +63,5 @@ deps = tomli skip_install = true changedir = requirements -commands = python ./make_base.py --nightly scipp,sciline,plopp,scippneutron +commands = python ./make_base.py --nightly scipp,sciline,plopp,essreduce pip-compile-multi -d . --backtracking