From 3479abf90c0786cc8d57d6d4389070caeff323ee Mon Sep 17 00:00:00 2001 From: YooSunyoung Date: Wed, 14 Aug 2024 10:55:13 +0200 Subject: [PATCH 1/9] Copier udpate. --- .copier-answers.yml | 6 +++--- .github/workflows/ci.yml | 2 ++ .github/workflows/docs.yml | 6 +++++- .github/workflows/nightly_at_main.yml | 1 + .github/workflows/nightly_at_release.yml | 1 + .github/workflows/test.yml | 18 ++++++++++++++++ .github/workflows/unpinned.yml | 1 + .gitignore | 1 + docs/_templates/doc_version.html | 2 +- docs/conf.py | 27 ++++++++++++++++++------ requirements/make_base.py | 3 ++- tests/package_test.py | 13 ++++++++++++ tox.ini | 2 +- 13 files changed, 70 insertions(+), 13 deletions(-) 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/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..92fd26942 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,11 @@ "image_dark": "_static/logo-dark.svg", }, "external_links": [ - {"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"}, +{"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"}, + ], "icon_links": [ { 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/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 From 1ceec933e6c2bf7497ef8be2c88c0a463a78a0a7 Mon Sep 17 00:00:00 2001 From: YooSunyoung Date: Wed, 14 Aug 2024 12:05:45 +0200 Subject: [PATCH 2/9] Update dependencies. --- requirements/base.txt | 51 ++++++++++++++++----------- requirements/basetest.txt | 60 ++++++++++++++++---------------- requirements/ci.txt | 18 +++++----- requirements/dev.txt | 28 +++++++-------- requirements/docs.txt | 72 +++++++++++++++++++++++---------------- requirements/mypy.txt | 4 +-- requirements/nightly.in | 4 +-- requirements/nightly.txt | 12 +++++-- requirements/static.txt | 15 ++++---- requirements/stream.txt | 6 ++-- requirements/wheels.txt | 2 +- 11 files changed, 149 insertions(+), 123 deletions(-) diff --git a/requirements/base.txt b/requirements/base.txt index 37e8aea6b..ce21c5da0 100644 --- a/requirements/base.txt +++ b/requirements/base.txt @@ -5,53 +5,64 @@ # # pip-compile-multi # -certifi==2024.2.2 - # via requests -charset-normalizer==3.3.2 - # via requests +contourpy==1.2.1 + # via matplotlib +cycler==0.12.1 + # via matplotlib +fonttools==4.53.1 + # via matplotlib h5py==3.11.0 # via # scippneutron # scippnexus -idna==3.7 - # via requests +kiwisolver==1.4.5 + # via matplotlib markdown-it-py==3.0.0 # via rich +matplotlib==3.9.2 + # via + # mpltoolbox + # plopp mdurl==0.1.2 # via markdown-it-py -numpy==1.26.4 +mpltoolbox==24.5.1 + # via scippneutron +numpy==2.0.1 # via + # contourpy # h5py + # matplotlib + # mpltoolbox # scipp # scippneutron # scipy -packaging==24.0 - # via pooch -platformdirs==4.2.2 - # via pooch -pooch==1.8.1 +packaging==24.1 + # via matplotlib +pillow==10.4.0 + # via matplotlib +plopp==24.6.0 # via scippneutron pygments==2.18.0 # via rich +pyparsing==3.1.2 + # via matplotlib python-dateutil==2.9.0.post0 - # via scippnexus -requests==2.32.2 - # via pooch + # via + # matplotlib + # scippnexus rich==13.7.1 # via -r base.in scipp==24.6.0 # via # scippneutron # scippnexus -scippneutron==24.3.0 +scippneutron==24.8.0 # via -r base.in -scippnexus==24.3.1 +scippnexus==24.8.1 # via scippneutron -scipy==1.13.1 +scipy==1.14.0 # via # scippneutron # scippnexus six==1.16.0 # via python-dateutil -urllib3==2.2.1 - # via requests diff --git a/requirements/basetest.txt b/requirements/basetest.txt index 2553ce9b1..d613369f1 100644 --- a/requirements/basetest.txt +++ b/requirements/basetest.txt @@ -5,72 +5,70 @@ # # pip-compile-multi # -certifi==2024.2.2 - # 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 +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 -idna==3.7 - # via requests iniconfig==2.0.0 # via pytest kiwisolver==1.4.5 # via matplotlib -matplotlib==3.9.0 - # via plopp -numpy==1.26.4 +matplotlib==3.9.2 + # via + # mpltoolbox + # plopp +mpltoolbox==24.5.1 + # via scippneutron +numpy==2.0.1 # via # contourpy # h5py # matplotlib + # mpltoolbox # 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 - # via -r basetest.in +plopp==24.6.0 + # via + # -r basetest.in + # scippneutron pluggy==1.5.0 # via pytest -pooch==1.8.1 - # via scippneutron -psutil==5.9.8 +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 +81,24 @@ python-dateutil==2.9.0.post0 # scippnexus pytz==2024.1 # via pandas -requests==2.32.2 - # via pooch scipp==24.6.0 # via # -r basetest.in # scippneutron # scippnexus -scippneutron==24.3.0 +scippneutron==24.8.0 # via -r basetest.in -scippnexus==24.3.1 +scippnexus==24.8.1 # via scippneutron -scipy==1.13.1 +scipy==1.14.0 # via # scippneutron # scippnexus six==1.16.0 # via python-dateutil +tomli==2.0.1 + # via + # coverage + # pytest tzdata==2024.1 # via pandas -urllib3==2.2.1 - # 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..f531cccc0 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 @@ -27,11 +27,15 @@ beautifulsoup4==4.12.3 # pydata-sphinx-theme bleach==6.1.0 # via nbconvert +certifi==2024.7.4 + # via requests +charset-normalizer==3.3.2 + # via requests 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 +49,19 @@ docutils==0.21.2 # sphinx executing==2.0.1 # via stack-data -fastjsonschema==2.19.1 +fastjsonschema==2.20.0 # via nbformat +idna==3.7 + # via requests 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 +69,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 +82,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 +99,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 +113,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 +124,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 +134,21 @@ parso==0.8.4 # via jedi pexpect==4.9.0 # via ipython -prompt-toolkit==3.0.43 +platformdirs==4.2.2 + # via jupyter-core +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 +156,17 @@ referencing==0.35.1 # via # jsonschema # jsonschema-specifications -rpds-py==0.18.1 +requests==2.32.3 + # via sphinx +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 +175,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,15 +219,17 @@ 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 +urllib3==2.2.2 + # via requests wcwidth==0.2.13 # via prompt-toolkit webencodings==0.5.1 # via # bleach # tinycss2 -widgetsnbextension==4.0.10 +widgetsnbextension==4.0.11 # via ipywidgets 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..a28a64182 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,21 @@ # pip-compile-multi # -r basetest.txt +cyclebane==24.6.0 + # via sciline +essreduce @ git+https://github.com/scipp/essreduce@main + # via -r nightly.in 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 From 0009339b91d3f7882e7e6f61d328a39b7a21bbb0 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci-lite[bot]" <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com> Date: Wed, 14 Aug 2024 10:06:44 +0000 Subject: [PATCH 3/9] Apply automatic formatting --- docs/conf.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/docs/conf.py b/docs/conf.py index 92fd26942..752d17445 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -163,11 +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": "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"}, ], "icon_links": [ { From bb7fb49ee5f1b54cb4f9c7f61f93c2871079a6e6 Mon Sep 17 00:00:00 2001 From: YooSunyoung Date: Wed, 14 Aug 2024 13:13:44 +0200 Subject: [PATCH 4/9] Use essreduce instead of scippneutron --- src/beamlime/stateless_workflow.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/beamlime/stateless_workflow.py b/src/beamlime/stateless_workflow.py index 73a7c289c..7d3a32edb 100644 --- a/src/beamlime/stateless_workflow.py +++ b/src/beamlime/stateless_workflow.py @@ -5,7 +5,7 @@ try: import scipp as sc - from scippneutron.io.nexus.load_nexus import JSONGroup + from ess.reduce.nexus.json_nexus import JSONGroup except ImportError as e: raise ImportError( "Please install the scipp and " From 4f81297b30ec6cd880dd8daea084c0611ba25afc Mon Sep 17 00:00:00 2001 From: YooSunyoung Date: Wed, 14 Aug 2024 13:20:15 +0200 Subject: [PATCH 5/9] Use essreduce instead of scippneutron. --- pyproject.toml | 2 +- requirements/base.in | 2 +- requirements/base.txt | 48 +++++------------------------- requirements/basetest.in | 2 +- requirements/basetest.txt | 30 ++++++------------- requirements/nightly.txt | 2 -- src/beamlime/stateless_workflow.py | 8 ++--- 7 files changed, 23 insertions(+), 71 deletions(-) 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 ce21c5da0..8c1de218e 100644 --- a/requirements/base.txt +++ b/requirements/base.txt @@ -1,68 +1,36 @@ -# SHA1:d16beb1d2c8626e90a075eda92b5c43d0a9625df +# SHA1:89978bb0fef0efd08032890f4d4bc4e3fd22eb53 # # This file is autogenerated by pip-compile-multi # To update, run: # # pip-compile-multi # -contourpy==1.2.1 - # via matplotlib -cycler==0.12.1 - # via matplotlib -fonttools==4.53.1 - # via matplotlib +essreduce==24.8.0 + # via -r base.in h5py==3.11.0 - # via - # scippneutron - # scippnexus -kiwisolver==1.4.5 - # via matplotlib + # via scippnexus markdown-it-py==3.0.0 # via rich -matplotlib==3.9.2 - # via - # mpltoolbox - # plopp mdurl==0.1.2 # via markdown-it-py -mpltoolbox==24.5.1 - # via scippneutron numpy==2.0.1 # via - # contourpy # h5py - # matplotlib - # mpltoolbox # scipp - # scippneutron # scipy -packaging==24.1 - # via matplotlib -pillow==10.4.0 - # via matplotlib -plopp==24.6.0 - # via scippneutron pygments==2.18.0 # via rich -pyparsing==3.1.2 - # via matplotlib python-dateutil==2.9.0.post0 - # via - # matplotlib - # scippnexus + # via scippnexus rich==13.7.1 # via -r base.in scipp==24.6.0 # via - # scippneutron + # essreduce # scippnexus -scippneutron==24.8.0 - # via -r base.in scippnexus==24.8.1 - # via scippneutron + # via essreduce scipy==1.14.0 - # via - # scippneutron - # scippnexus + # via scippnexus six==1.16.0 # via python-dateutil diff --git a/requirements/basetest.in b/requirements/basetest.in index a501c9187..f8e6e6656 100644 --- a/requirements/basetest.in +++ b/requirements/basetest.in @@ -9,5 +9,5 @@ psutil pandas pyarrow # Future hard-dependency of pandas, it can be removed from pandas>3.0 scipp -scippneutron +essreduce plopp diff --git a/requirements/basetest.txt b/requirements/basetest.txt index d613369f1..5d99e5e78 100644 --- a/requirements/basetest.txt +++ b/requirements/basetest.txt @@ -1,4 +1,4 @@ -# SHA1:381f73e26ef39bd66eeb15db1a231214f6b7a75e +# SHA1:4701e6ca0c1a372d004c96dd9c07ce2db6e49b4e # # This file is autogenerated by pip-compile-multi # To update, run: @@ -11,6 +11,8 @@ 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 @@ -18,29 +20,21 @@ execnet==2.1.1 fonttools==4.53.1 # via matplotlib h5py==3.11.0 - # via - # scippneutron - # scippnexus + # via scippnexus iniconfig==2.0.0 # via pytest kiwisolver==1.4.5 # via matplotlib matplotlib==3.9.2 - # via - # mpltoolbox - # plopp -mpltoolbox==24.5.1 - # via scippneutron + # via plopp numpy==2.0.1 # via # contourpy # h5py # matplotlib - # mpltoolbox # pandas # pyarrow # scipp - # scippneutron # scipy packaging==24.1 # via @@ -51,9 +45,7 @@ pandas==2.2.2 pillow==10.4.0 # via matplotlib plopp==24.6.0 - # via - # -r basetest.in - # scippneutron + # via -r basetest.in pluggy==1.5.0 # via pytest psutil==6.0.0 @@ -84,16 +76,12 @@ pytz==2024.1 scipp==24.6.0 # via # -r basetest.in - # scippneutron + # essreduce # scippnexus -scippneutron==24.8.0 - # via -r basetest.in scippnexus==24.8.1 - # via scippneutron + # via essreduce scipy==1.14.0 - # via - # scippneutron - # scippnexus + # via scippnexus six==1.16.0 # via python-dateutil tomli==2.0.1 diff --git a/requirements/nightly.txt b/requirements/nightly.txt index a28a64182..6612f0673 100644 --- a/requirements/nightly.txt +++ b/requirements/nightly.txt @@ -8,8 +8,6 @@ -r basetest.txt cyclebane==24.6.0 # via sciline -essreduce @ git+https://github.com/scipp/essreduce@main - # via -r nightly.in markdown-it-py==3.0.0 # via rich mdurl==0.1.2 diff --git a/src/beamlime/stateless_workflow.py b/src/beamlime/stateless_workflow.py index 7d3a32edb..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 ess.reduce.nexus.json_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) From bf19329c142a659fd0c0f5fa51d03b012802b4ab Mon Sep 17 00:00:00 2001 From: YooSunyoung Date: Wed, 14 Aug 2024 13:24:20 +0200 Subject: [PATCH 6/9] Add pooch in the dependency. --- requirements/basetest.in | 1 + requirements/basetest.txt | 17 ++++++++++++++++- requirements/docs.txt | 12 ------------ 3 files changed, 17 insertions(+), 13 deletions(-) diff --git a/requirements/basetest.in b/requirements/basetest.in index f8e6e6656..af32a4f0c 100644 --- a/requirements/basetest.in +++ b/requirements/basetest.in @@ -11,3 +11,4 @@ pyarrow # Future hard-dependency of pandas, it can be removed from pandas>3.0 scipp essreduce plopp +pooch diff --git a/requirements/basetest.txt b/requirements/basetest.txt index 5d99e5e78..3eb619c4a 100644 --- a/requirements/basetest.txt +++ b/requirements/basetest.txt @@ -1,10 +1,14 @@ -# SHA1:4701e6ca0c1a372d004c96dd9c07ce2db6e49b4e +# SHA1:8a4489025b5de25e5a97b53104e3d4354c11c487 # # This file is autogenerated by pip-compile-multi # To update, run: # # pip-compile-multi # +certifi==2024.7.4 + # via requests +charset-normalizer==3.3.2 + # via requests contourpy==1.2.1 # via matplotlib coverage[toml]==7.6.1 @@ -21,6 +25,8 @@ fonttools==4.53.1 # via matplotlib h5py==3.11.0 # via scippnexus +idna==3.7 + # via requests iniconfig==2.0.0 # via pytest kiwisolver==1.4.5 @@ -39,15 +45,20 @@ numpy==2.0.1 packaging==24.1 # via # matplotlib + # pooch # pytest pandas==2.2.2 # via -r basetest.in pillow==10.4.0 # via matplotlib +platformdirs==4.2.2 + # via pooch plopp==24.6.0 # via -r basetest.in pluggy==1.5.0 # via pytest +pooch==1.8.2 + # via -r basetest.in psutil==6.0.0 # via -r basetest.in pyarrow==17.0.0 @@ -73,6 +84,8 @@ python-dateutil==2.9.0.post0 # scippnexus pytz==2024.1 # via pandas +requests==2.32.3 + # via pooch scipp==24.6.0 # via # -r basetest.in @@ -90,3 +103,5 @@ tomli==2.0.1 # pytest tzdata==2024.1 # via pandas +urllib3==2.2.2 + # via requests diff --git a/requirements/docs.txt b/requirements/docs.txt index f531cccc0..2f8925b4d 100644 --- a/requirements/docs.txt +++ b/requirements/docs.txt @@ -27,10 +27,6 @@ beautifulsoup4==4.12.3 # pydata-sphinx-theme bleach==6.1.0 # via nbconvert -certifi==2024.7.4 - # via requests -charset-normalizer==3.3.2 - # via requests comm==0.2.2 # via # ipykernel @@ -51,8 +47,6 @@ executing==2.0.1 # via stack-data fastjsonschema==2.20.0 # via nbformat -idna==3.7 - # via requests imagesize==1.4.1 # via sphinx ipydatawidgets==4.3.5 @@ -134,8 +128,6 @@ parso==0.8.4 # via jedi pexpect==4.9.0 # via ipython -platformdirs==4.2.2 - # via jupyter-core prompt-toolkit==3.0.47 # via ipython ptyprocess==0.7.0 @@ -156,8 +148,6 @@ referencing==0.35.1 # via # jsonschema # jsonschema-specifications -requests==2.32.3 - # via sphinx rpds-py==0.20.0 # via # jsonschema @@ -223,8 +213,6 @@ typing-extensions==4.12.2 # via # ipython # pydata-sphinx-theme -urllib3==2.2.2 - # via requests wcwidth==0.2.13 # via prompt-toolkit webencodings==0.5.1 From d325b1d9236e47119d660d69673d8a1446fadf93 Mon Sep 17 00:00:00 2001 From: YooSunyoung Date: Wed, 14 Aug 2024 13:28:39 +0200 Subject: [PATCH 7/9] Add pooch in the dependency. --- src/beamlime/applications/handlers.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 From e95c1d447abbf5f954c569b1106e1aedf4c23fb6 Mon Sep 17 00:00:00 2001 From: YooSunyoung Date: Thu, 15 Aug 2024 09:52:50 +0200 Subject: [PATCH 8/9] Synchronize dependencies in conda meta. --- conda/meta.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/conda/meta.yaml b/conda/meta.yaml index e27986afc..272e78a41 100644 --- a/conda/meta.yaml +++ b/conda/meta.yaml @@ -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/ From 1b9740401d929def769809c38cc54896840baf6e Mon Sep 17 00:00:00 2001 From: YooSunyoung Date: Thu, 15 Aug 2024 09:53:06 +0200 Subject: [PATCH 9/9] Synchronize dependencies in conda meta. --- conda/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conda/meta.yaml b/conda/meta.yaml index 272e78a41..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 %}