From ec2697c48cb1b712739b0abd76cd08e16ad371f3 Mon Sep 17 00:00:00 2001 From: shachafl <66333410+shachafl@users.noreply.github.com> Date: Mon, 9 Sep 2024 13:38:49 -0400 Subject: [PATCH] Dropping support for Python 3.8 and setting Python 3.9 as minimum (#2018) * removing support for python 3.8 * upgrading setuptools as older ver is part of venv * dropping python 3.8 and adding tests for 3.11 --- .github/workflows/starfish-prod-ci.yml | 52 +++++----- Makefile | 6 +- README.rst | 6 +- docker/Dockerfile | 2 +- docs/source/installation/index.rst | 8 +- examples/quick_start/plot_quick_start.py | 4 +- examples/tutorials/transforms_list.json | 2 +- requirements/REQUIREMENTS-CI.txt | 91 +++++++++--------- requirements/REQUIREMENTS-CI.txt.in | 5 +- requirements/REQUIREMENTS-JUPYTER.txt | 77 +++++++-------- requirements/REQUIREMENTS-JUPYTER.txt.in | 4 +- requirements/REQUIREMENTS-NAPARI-CI.txt | 107 +++++++++++---------- requirements/REQUIREMENTS-NAPARI-CI.txt.in | 4 +- setup.cfg | 1 - setup.py | 2 +- starfish/REQUIREMENTS-STRICT.txt | 43 ++++----- 16 files changed, 203 insertions(+), 211 deletions(-) diff --git a/.github/workflows/starfish-prod-ci.yml b/.github/workflows/starfish-prod-ci.yml index 22aa76dbb..13d1ae552 100644 --- a/.github/workflows/starfish-prod-ci.yml +++ b/.github/workflows/starfish-prod-ci.yml @@ -17,10 +17,10 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Setup Python 3.8 + - name: Setup Python 3.9 uses: actions/setup-python@v2 with: - python-version: 3.8 + python-version: 3.9 - uses: actions/cache@v2 with: @@ -41,7 +41,7 @@ jobs: strategy: matrix: os: ["windows-latest", "ubuntu-latest"] - python-version: ["3.8", "3.9", "3.10"] + python-version: ["3.9", "3.10", "3.11"] fail-fast: false runs-on: ${{ matrix.os }} steps: @@ -71,7 +71,7 @@ jobs: strategy: matrix: os: ["windows-latest", "ubuntu-latest"] - python-version: ["3.8", "3.9", "3.10"] + python-version: ["3.9", "3.10", "3.11"] fail-fast: false runs-on: ${{ matrix.os }} steps: @@ -164,10 +164,10 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Setup Python 3.8 + - name: Setup Python 3.9 uses: actions/setup-python@v2 with: - python-version: 3.8 + python-version: 3.9 - uses: actions/cache@v2 with: @@ -189,10 +189,10 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Setup Python 3.8 + - name: Setup Python 3.9 uses: actions/setup-python@v2 with: - python-version: 3.8 + python-version: 3.9 - uses: actions/cache@v2 with: @@ -214,10 +214,10 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Setup Python 3.8 + - name: Setup Python 3.9 uses: actions/setup-python@v2 with: - python-version: 3.8 + python-version: 3.9 - uses: actions/cache@v2 with: @@ -239,10 +239,10 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Setup Python 3.8 + - name: Setup Python 3.9 uses: actions/setup-python@v2 with: - python-version: 3.8 + python-version: 3.9 - uses: actions/cache@v2 with: @@ -264,10 +264,10 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Setup Python 3.8 + - name: Setup Python 3.9 uses: actions/setup-python@v2 with: - python-version: 3.8 + python-version: 3.9 - uses: actions/cache@v2 with: @@ -289,10 +289,10 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Setup Python 3.8 + - name: Setup Python 3.9 uses: actions/setup-python@v2 with: - python-version: 3.8 + python-version: 3.9 - uses: actions/cache@v2 with: @@ -314,10 +314,10 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Setup Python 3.8 + - name: Setup Python 3.9 uses: actions/setup-python@v2 with: - python-version: 3.8 + python-version: 3.9 - uses: actions/cache@v2 with: @@ -339,10 +339,10 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Setup Python 3.8 + - name: Setup Python 3.9 uses: actions/setup-python@v2 with: - python-version: 3.8 + python-version: 3.9 - uses: actions/cache@v2 with: @@ -364,10 +364,10 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Setpu Python 3.8 + - name: Setpu Python 3.9 uses: actions/setup-python@v2 with: - python-version: 3.8 + python-version: 3.9 - uses: actions/cache@v2 with: @@ -389,10 +389,10 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Setup Python 3.8 + - name: Setup Python 3.9 uses: actions/setup-python@v2 with: - python-version: 3.8 + python-version: 3.9 - uses: actions/cache@v2 with: @@ -414,10 +414,10 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Setup Python 3.8 + - name: Setup Python 3.9 uses: actions/setup-python@v2 with: - python-version: 3.8 + python-version: 3.9 - uses: actions/cache@v2 with: diff --git a/Makefile b/Makefile index 02c4cbc87..d9c359659 100644 --- a/Makefile +++ b/Makefile @@ -12,7 +12,7 @@ DOCKER_BUILD?=1 VERSION=$(shell sh -c "git describe --exact --dirty 2> /dev/null") # if you update this, you will need to update the version pin for the "Install Napari & Test napari (pinned)" test in .travis.yml -PIP_VERSION=24.0 +PIP_VERSION=24.2 define print_help @printf " %-28s $(2)\n" $(1) @@ -102,7 +102,7 @@ pin-all-requirements: starfish/REQUIREMENTS-STRICT.txt : REQUIREMENTS.txt [ ! -e .$<-env ] || exit 1 $(call create_venv, .$<-env) - .$<-env/bin/pip install --upgrade pip==$(PIP_VERSION) + .$<-env/bin/pip install --upgrade --no-cache-dir pip==$(PIP_VERSION) setuptools .$<-env/bin/pip install -r $< echo "# You should not edit this file directly. Instead, you should edit one of the following files ($^) and run make $@" >| $@ .$<-env/bin/pip freeze --all | grep -v "pip==$(PIP_VERSION)" >> $@ @@ -111,7 +111,7 @@ starfish/REQUIREMENTS-STRICT.txt : REQUIREMENTS.txt requirements/REQUIREMENTS-%.txt : requirements/REQUIREMENTS-%.txt.in REQUIREMENTS.txt [ ! -e .$<-env ] || exit 1 $(call create_venv, .$<-env) - .$<-env/bin/pip install --upgrade pip==$(PIP_VERSION) + .$<-env/bin/pip install --upgrade --no-cache-dir pip==$(PIP_VERSION) setuptools for src in $^; do \ .$<-env/bin/pip install -r $$src; \ done diff --git a/README.rst b/README.rst index e77682757..07ff1d07f 100644 --- a/README.rst +++ b/README.rst @@ -47,7 +47,7 @@ See `spacetx-starfish.readthedocs.io ` -* seaborn_ is installed: :code:`pip install seaborn` .. _Python: https://docs.scipy.org/doc/numpy/user/quickstart.html -.. _seaborn: https://seaborn.pydata.org/ Starfish Pipeline ----------------- diff --git a/examples/tutorials/transforms_list.json b/examples/tutorials/transforms_list.json index f3091fb21..107dc7145 100644 --- a/examples/tutorials/transforms_list.json +++ b/examples/tutorials/transforms_list.json @@ -1 +1 @@ -{"transforms_list": [[{"r": 0}, "similarity", [[1.0, -0.0, -22.926], [0.0, 1.0, 5.673], [0.0, 0.0, 1.0]]], [{"r": 1}, "similarity", [[1.0, -0.0, -22.301], [0.0, 1.0, 1.6440000000000001], [0.0, 0.0, 1.0]]], [{"r": 2}, "similarity", [[1.0, -0.0, -22.124], [0.0, 1.0, -3.278], [0.0, 0.0, 1.0]]], [{"r": 3}, "similarity", [[1.0, -0.0, -14.998], [0.0, 1.0, -4.397], [0.0, 0.0, 1.0]]]], "version": "0.0.0"} \ No newline at end of file +{"transforms_list": [[{"r": 0}, "similarity", [[1.0, -0.0, -22.868999481201172], [0.0, 1.0, 5.85699987411499], [0.0, 0.0, 1.0]]], [{"r": 1}, "similarity", [[1.0, -0.0, -22.13599967956543], [0.0, 1.0, 1.871999979019165], [0.0, 0.0, 1.0]]], [{"r": 2}, "similarity", [[1.0, -0.0, -21.957000732421875], [0.0, 1.0, -3.5799999237060547], [0.0, 0.0, 1.0]]], [{"r": 3}, "similarity", [[1.0, -0.0, -14.98799991607666], [0.0, 1.0, -4.414999961853027], [0.0, 0.0, 1.0]]]], "version": "0.0.0"} \ No newline at end of file diff --git a/requirements/REQUIREMENTS-CI.txt b/requirements/REQUIREMENTS-CI.txt index c7b48e931..2c5905e59 100644 --- a/requirements/REQUIREMENTS-CI.txt +++ b/requirements/REQUIREMENTS-CI.txt @@ -1,22 +1,21 @@ # You should not edit this file directly. Instead, you should edit one of the following files (requirements/REQUIREMENTS-CI.txt.in) and run make requirements/REQUIREMENTS-CI.txt -alabaster==0.7.13 +alabaster==0.7.16 asttokens==2.4.1 attrs==24.2.0 -Babel==2.15.0 -backcall==0.2.0 +babel==2.16.0 backports.tarfile==1.2.0 beautifulsoup4==4.12.3 bleach==6.1.0 -boto3==1.34.156 -botocore==1.34.156 -certifi==2024.7.4 -cffi==1.17.0 +boto3==1.35.13 +botocore==1.35.13 +certifi==2024.8.30 +cffi==1.17.1 charset-normalizer==3.3.2 click==8.1.7 commonmark==0.9.1 -contourpy==1.1.1 +contourpy==1.3.0 coverage==7.6.1 -cryptography==43.0.0 +cryptography==43.0.1 cycler==0.12.1 decorator==5.1.1 defusedxml==0.7.1 @@ -25,21 +24,21 @@ docutils==0.20.1 entrypoints==0.4 exceptiongroup==1.2.2 execnet==2.1.1 -executing==2.0.1 +executing==2.1.0 fastjsonschema==2.20.0 flake8==7.1.1 flake8-import-order==0.18.2 fonttools==4.53.1 h5py==3.11.0 -idna==3.7 -imageio==2.34.2 +idna==3.8 +imageio==2.35.1 imagesize==1.4.1 -importlib_metadata==8.2.0 -importlib_resources==6.4.0 +importlib_metadata==8.4.0 +importlib_resources==6.4.4 iniconfig==2.0.0 -ipython==8.12.3 +ipython==8.18.1 jaraco.classes==3.4.0 -jaraco.context==5.3.0 +jaraco.context==6.0.1 jaraco.functools==4.0.2 jedi==0.19.1 jeepney==0.8.0 @@ -51,11 +50,11 @@ jupyter_client==8.6.2 jupyter_core==5.7.2 jupyterlab_pygments==0.3.0 keyring==25.3.0 -kiwisolver==1.4.5 +kiwisolver==1.4.7 lazy_loader==0.4 looseversion==1.3.0 -lxml==5.2.2 -lxml_html_clean==0.2.0 +lxml==5.3.0 +lxml_html_clean==0.2.2 m2r2==0.3.3.post2 markdown-it-py==3.0.0 MarkupSafe==2.1.5 @@ -64,7 +63,7 @@ matplotlib-inline==0.1.7 mccabe==0.7.0 mdurl==0.1.2 mistune==0.8.4 -more-itertools==10.4.0 +more-itertools==10.5.0 mpmath==1.3.0 mypy==1.10.1 mypy-extensions==1.0.0 @@ -72,19 +71,17 @@ nbclient==0.10.0 nbconvert==6.5.4 nbencdec==0.0.10 nbformat==5.10.4 -networkx==3.1 +networkx==3.2.1 nh3==0.2.18 numpy==1.24.4 -numpydoc==1.7.0 +numpydoc==1.8.0 packaging==24.1 -pandas==2.0.3 +pandas==2.2.2 pandocfilters==1.5.1 parso==0.8.4 pexpect==4.9.0 -pickleshare==0.7.5 pillow==10.4.0 pkginfo==1.10.0 -pkgutil_resolve_name==1.3.10 platformdirs==4.2.2 pluggy==1.5.0 prompt_toolkit==3.0.47 @@ -94,16 +91,16 @@ pycodestyle==2.12.1 pycparser==2.22 pyflakes==3.2.0 Pygments==2.18.0 -pyparsing==3.1.2 +pyparsing==3.1.4 pyrsistent==0.20.0 pytest==8.3.2 pytest-cov==5.0.0 pytest-xdist==3.6.1 python-dateutil==2.9.0.post0 pytz==2024.1 -PyWavelets==1.4.1 +PyWavelets==1.6.0 PyYAML==6.0.2 -pyzmq==26.1.0 +pyzmq==26.2.0 read-roi==1.6.0 readme_renderer==43.0 recommonmark==0.7.1 @@ -111,38 +108,38 @@ regional==1.1.2 requests==2.32.3 requests-toolbelt==1.0.0 rfc3986==2.0.0 -rich==13.7.1 +rich==13.8.0 s3transfer==0.10.2 scikit-image==0.21.0 -scikit-learn==1.3.2 -scipy==1.10.1 +scikit-learn==1.5.1 +scipy==1.13.1 seaborn==0.13.2 SecretStorage==3.3.3 semantic-version==2.10.0 -setuptools==56.0.0 +setuptools==74.1.2 showit==1.1.4 six==1.16.0 slicedimage==4.1.1 snowballstemmer==2.2.0 -soupsieve==2.5 -Sphinx==7.1.2 -sphinx-autodoc-typehints==2.0.1 +soupsieve==2.6 +Sphinx==7.4.7 +sphinx-autodoc-typehints==2.3.0 sphinx-bootstrap-theme==0.8.1 sphinx-gallery==0.17.1 sphinx-rtd-theme==2.0.0 -sphinxcontrib-applehelp==1.0.4 -sphinxcontrib-devhelp==1.0.2 -sphinxcontrib-htmlhelp==2.0.1 +sphinxcontrib-applehelp==2.0.0 +sphinxcontrib-devhelp==2.0.0 +sphinxcontrib-htmlhelp==2.1.0 sphinxcontrib-jquery==4.1 sphinxcontrib-jsmath==1.0.1 sphinxcontrib-programoutput==0.17 -sphinxcontrib-qthelp==1.0.3 -sphinxcontrib-serializinghtml==1.1.5 +sphinxcontrib-qthelp==2.0.0 +sphinxcontrib-serializinghtml==2.0.0 stack-data==0.6.3 -sympy==1.13.1 +sympy==1.13.2 tabulate==0.9.0 threadpoolctl==3.5.0 -tifffile==2023.7.10 +tifffile==2024.8.30 tinycss2==1.3.0 tomli==2.0.1 tornado==6.4.1 @@ -152,13 +149,13 @@ traitlets==5.14.3 twine==5.1.1 types-PyYAML==6.0.12.20240808 types-requests==2.31.0.6 -types-setuptools==71.1.0.20240806 +types-setuptools==74.1.0.20240906 types-urllib3==1.26.25.14 typing_extensions==4.12.2 tzdata==2024.1 -urllib3==1.26.19 -validators==0.33.0 +urllib3==1.26.20 +validators==0.34.0 wcwidth==0.2.13 webencodings==0.5.1 -xarray==2023.1.0 -zipp==3.19.2 +xarray==2023.8.0 +zipp==3.20.1 diff --git a/requirements/REQUIREMENTS-CI.txt.in b/requirements/REQUIREMENTS-CI.txt.in index 59a5d6e77..1f8ca3fa9 100644 --- a/requirements/REQUIREMENTS-CI.txt.in +++ b/requirements/REQUIREMENTS-CI.txt.in @@ -6,9 +6,10 @@ flake8-import-order lxml_html_clean # pin m2r2: https://github.com/CrossNox/m2r2/issues/52 m2r2>=0.3.3 -mypy != 0.740 +# temporarily limiting mypy as 1.11 introduces errors +mypy<1.11 numpydoc -nbencdec >= 0.0.5 +nbencdec>=0.0.5 pycodestyle pytest>=4.4.0 pytest-cov>=2.5.1 diff --git a/requirements/REQUIREMENTS-JUPYTER.txt b/requirements/REQUIREMENTS-JUPYTER.txt index 712b34197..bfa50197f 100644 --- a/requirements/REQUIREMENTS-JUPYTER.txt +++ b/requirements/REQUIREMENTS-JUPYTER.txt @@ -6,18 +6,17 @@ arrow==1.3.0 asttokens==2.4.1 async-lru==2.0.4 attrs==24.2.0 -Babel==2.15.0 -backcall==0.2.0 +babel==2.16.0 beautifulsoup4==4.12.3 bleach==6.1.0 -boto3==1.34.156 -botocore==1.34.156 -certifi==2024.7.4 -cffi==1.17.0 +boto3==1.35.13 +botocore==1.35.13 +certifi==2024.8.30 +cffi==1.17.1 charset-normalizer==3.3.2 click==8.1.7 comm==0.2.2 -contourpy==1.1.1 +contourpy==1.3.0 cycler==0.12.1 debugpy==1.8.5 decorator==5.1.1 @@ -26,21 +25,21 @@ diskcache==5.6.3 docutils==0.20.1 entrypoints==0.4 exceptiongroup==1.2.2 -executing==2.0.1 +executing==2.1.0 fastjsonschema==2.20.0 fonttools==4.53.1 fqdn==1.5.1 h11==0.14.0 h5py==3.11.0 httpcore==1.0.5 -httpx==0.27.0 -idna==3.7 -imageio==2.34.2 -importlib_metadata==8.2.0 -importlib_resources==6.4.0 +httpx==0.27.2 +idna==3.8 +imageio==2.35.1 +importlib_metadata==8.4.0 +importlib_resources==6.4.4 ipykernel==6.29.5 -ipython==8.12.3 -ipywidgets==8.1.3 +ipython==8.18.1 +ipywidgets==8.1.5 isoduration==20.11.0 jedi==0.19.1 Jinja2==3.1.4 @@ -49,7 +48,7 @@ joblib==1.4.2 json5==0.9.25 jsonpointer==3.0.0 jsonschema==4.17.3 -jupyter==1.0.0 +jupyter==1.1.1 jupyter-console==6.6.3 jupyter-events==0.6.3 jupyter-lsp==2.2.5 @@ -60,11 +59,11 @@ jupyter_server_terminals==0.5.3 jupyterlab==4.1.6 jupyterlab_pygments==0.3.0 jupyterlab_server==2.24.0 -jupyterlab_widgets==3.0.11 -kiwisolver==1.4.5 +jupyterlab_widgets==3.0.13 +kiwisolver==1.4.7 lazy_loader==0.4 looseversion==1.3.0 -lxml==5.2.2 +lxml==5.3.0 MarkupSafe==2.1.5 matplotlib==3.7.5 matplotlib-inline==0.1.7 @@ -74,19 +73,17 @@ nbclient==0.10.0 nbconvert==6.5.4 nbformat==5.10.4 nest-asyncio==1.6.0 -networkx==3.1 +networkx==3.2.1 notebook==7.1.3 notebook_shim==0.2.4 numpy==1.24.4 overrides==7.7.0 packaging==24.1 -pandas==2.0.3 +pandas==2.2.2 pandocfilters==1.5.1 parso==0.8.4 pexpect==4.9.0 -pickleshare==0.7.5 pillow==10.4.0 -pkgutil_resolve_name==1.3.10 platformdirs==4.2.2 prometheus_client==0.20.0 prompt_toolkit==3.0.47 @@ -95,16 +92,14 @@ ptyprocess==0.7.0 pure_eval==0.2.3 pycparser==2.22 Pygments==2.18.0 -pyparsing==3.1.2 +pyparsing==3.1.4 pyrsistent==0.20.0 python-dateutil==2.9.0.post0 python-json-logger==2.0.7 pytz==2024.1 -PyWavelets==1.4.1 +PyWavelets==1.6.0 PyYAML==6.0.2 -pyzmq==26.1.0 -qtconsole==5.5.2 -QtPy==2.4.1 +pyzmq==26.2.0 read-roi==1.6.0 regional==1.1.2 requests==2.32.3 @@ -112,38 +107,38 @@ rfc3339-validator==0.1.4 rfc3986-validator==0.1.1 s3transfer==0.10.2 scikit-image==0.21.0 -scikit-learn==1.3.2 -scipy==1.10.1 +scikit-learn==1.5.1 +scipy==1.13.1 seaborn==0.13.2 semantic-version==2.10.0 Send2Trash==1.8.3 -setuptools==56.0.0 +setuptools==74.1.2 showit==1.1.4 six==1.16.0 slicedimage==4.1.1 sniffio==1.3.1 -soupsieve==2.5 +soupsieve==2.6 stack-data==0.6.3 -sympy==1.13.1 +sympy==1.13.2 terminado==0.18.1 threadpoolctl==3.5.0 -tifffile==2023.7.10 +tifffile==2024.8.30 tinycss2==1.3.0 tomli==2.0.1 tornado==6.4.1 tqdm==4.66.5 trackpy==0.6.4 traitlets==5.14.3 -types-python-dateutil==2.9.0.20240316 +types-python-dateutil==2.9.0.20240906 typing_extensions==4.12.2 tzdata==2024.1 uri-template==1.3.0 -urllib3==1.26.19 -validators==0.33.0 +urllib3==1.26.20 +validators==0.34.0 wcwidth==0.2.13 -webcolors==24.6.0 +webcolors==24.8.0 webencodings==0.5.1 websocket-client==1.8.0 -widgetsnbextension==4.0.11 -xarray==2023.1.0 -zipp==3.19.2 +widgetsnbextension==4.0.13 +xarray==2023.8.0 +zipp==3.20.1 diff --git a/requirements/REQUIREMENTS-JUPYTER.txt.in b/requirements/REQUIREMENTS-JUPYTER.txt.in index ca487d08a..10b6182a7 100644 --- a/requirements/REQUIREMENTS-JUPYTER.txt.in +++ b/requirements/REQUIREMENTS-JUPYTER.txt.in @@ -1,4 +1,4 @@ # requirements to run jupyter -# constrain the requirements to packages already in REQUIREMENTS-STRICT.txt --r ../starfish/REQUIREMENTS-STRICT.txt +# constrain the requirements to packages already in REQUIREMENTS.txt +-r ../REQUIREMENTS.txt jupyter diff --git a/requirements/REQUIREMENTS-NAPARI-CI.txt b/requirements/REQUIREMENTS-NAPARI-CI.txt index 91263fabb..901b3b016 100644 --- a/requirements/REQUIREMENTS-NAPARI-CI.txt +++ b/requirements/REQUIREMENTS-NAPARI-CI.txt @@ -1,46 +1,49 @@ # You should not edit this file directly. Instead, you should edit one of the following files (requirements/REQUIREMENTS-NAPARI-CI.txt.in) and run make requirements/REQUIREMENTS-NAPARI-CI.txt -alabaster==0.7.13 +alabaster==0.7.16 annotated-types==0.7.0 app-model==0.2.8 appdirs==1.4.4 +asciitree==0.3.3 asttokens==2.4.1 attrs==24.2.0 -Babel==2.15.0 -backcall==0.2.0 -boto3==1.34.156 -botocore==1.34.156 +babel==2.16.0 +boto3==1.35.13 +botocore==1.35.13 build==1.2.1 cachey==0.2.1 -certifi==2024.7.4 +certifi==2024.8.30 charset-normalizer==3.3.2 click==8.1.7 cloudpickle==3.0.0 comm==0.2.2 -contourpy==1.1.1 +contourpy==1.3.0 cycler==0.12.1 -dask==2023.5.0 +dask==2024.8.0 debugpy==1.8.5 decorator==5.1.1 diskcache==5.6.3 docstring_parser==0.16 docutils==0.20.1 exceptiongroup==1.2.2 -executing==2.0.1 +executing==2.1.0 +fasteners==0.19 +flexcache==0.3 +flexparser==0.3.1 fonttools==4.53.1 -freetype-py==2.4.0 -fsspec==2024.6.1 +freetype-py==2.5.1 +fsspec==2024.9.0 h5py==3.11.0 HeapDict==1.0.1 hsluv==5.0.4 -idna==3.7 -imageio==2.34.2 +idna==3.8 +imageio==2.35.1 imagesize==1.4.1 -importlib_metadata==8.2.0 -importlib_resources==6.4.0 +importlib_metadata==8.4.0 +importlib_resources==6.4.4 in-n-out==0.2.1 iniconfig==2.0.0 ipykernel==6.29.5 -ipython==8.12.3 +ipython==8.18.1 jedi==0.19.1 Jinja2==3.1.4 jmespath==1.0.1 @@ -48,9 +51,9 @@ joblib==1.4.2 jsonschema==4.17.3 jupyter_client==8.6.2 jupyter_core==5.7.2 -kiwisolver==1.4.5 +kiwisolver==1.4.7 lazy_loader==0.4 -llvmlite==0.41.1 +llvmlite==0.43.0 locket==1.0.0 looseversion==1.3.0 magicgui==0.9.1 @@ -61,26 +64,25 @@ matplotlib-inline==0.1.7 mdurl==0.1.2 mistune==0.8.4 mpmath==1.3.0 -napari==0.4.19.post1 +napari==0.5.3 napari-console==0.0.9 napari-plugin-engine==0.2.0 napari-plugin-manager==0.1.0 -napari-svg==0.1.10 +napari-svg==0.2.0 nest-asyncio==1.6.0 -networkx==3.1 +networkx==3.2.1 npe2==0.7.7 -numba==0.58.1 +numba==0.60.0 +numcodecs==0.12.1 numpy==1.24.4 -numpydoc==1.7.0 +numpydoc==1.8.0 packaging==24.1 -pandas==2.0.3 +pandas==2.2.2 parso==0.8.4 -partd==1.4.1 +partd==1.4.2 pexpect==4.9.0 -pickleshare==0.7.5 pillow==10.4.0 -Pint==0.21.1 -pkgutil_resolve_name==1.3.10 +Pint==0.24.3 platformdirs==4.2.2 pluggy==1.5.0 pooch==1.8.2 @@ -90,12 +92,12 @@ psygnal==0.11.1 ptyprocess==0.7.0 pure_eval==0.2.3 pyconify==0.1.6 -pydantic==2.8.2 +pydantic==2.9.0 pydantic-compat==0.1.2 -pydantic_core==2.20.1 +pydantic_core==2.23.2 Pygments==2.18.0 PyOpenGL==3.1.7 -pyparsing==3.1.2 +pyparsing==3.1.4 pyproject_hooks==1.1.0 PyQt5==5.15.11 PyQt5-Qt5==5.15.14 @@ -105,40 +107,40 @@ pytest==8.3.2 pytest-qt==4.4.0 python-dateutil==2.9.0.post0 pytz==2024.1 -PyWavelets==1.4.1 +PyWavelets==1.6.0 PyYAML==6.0.2 -pyzmq==26.1.0 -qtconsole==5.5.2 +pyzmq==26.2.0 +qtconsole==5.6.0 QtPy==2.4.1 read-roi==1.6.0 regional==1.1.2 requests==2.32.3 -rich==13.7.1 +rich==13.8.0 s3transfer==0.10.2 scikit-image==0.21.0 -scikit-learn==1.3.2 -scipy==1.10.1 +scikit-learn==1.5.1 +scipy==1.13.1 seaborn==0.13.2 semantic-version==2.10.0 -setuptools==56.0.0 +setuptools==74.1.2 shellingham==1.5.4 showit==1.1.4 six==1.16.0 slicedimage==4.1.1 snowballstemmer==2.2.0 -Sphinx==7.1.2 -sphinxcontrib-applehelp==1.0.4 -sphinxcontrib-devhelp==1.0.2 -sphinxcontrib-htmlhelp==2.0.1 +Sphinx==7.4.7 +sphinxcontrib-applehelp==2.0.0 +sphinxcontrib-devhelp==2.0.0 +sphinxcontrib-htmlhelp==2.1.0 sphinxcontrib-jsmath==1.0.1 -sphinxcontrib-qthelp==1.0.3 -sphinxcontrib-serializinghtml==1.1.5 +sphinxcontrib-qthelp==2.0.0 +sphinxcontrib-serializinghtml==2.0.0 stack-data==0.6.3 superqt==0.6.7 -sympy==1.13.1 +sympy==1.13.2 tabulate==0.9.0 threadpoolctl==3.5.0 -tifffile==2023.7.10 +tifffile==2024.8.30 tomli==2.0.1 tomli_w==1.0.0 toolz==0.12.1 @@ -147,13 +149,14 @@ tqdm==4.66.5 trackpy==0.6.4 traitlets==5.14.3 triangle==20230923 -typer==0.12.3 +typer==0.12.5 typing_extensions==4.12.2 tzdata==2024.1 -urllib3==1.26.19 -validators==0.33.0 -vispy==0.14.2 +urllib3==1.26.20 +validators==0.34.0 +vispy==0.14.3 wcwidth==0.2.13 wrapt==1.16.0 -xarray==2023.1.0 -zipp==3.19.2 +xarray==2023.8.0 +zarr==2.18.2 +zipp==3.20.1 diff --git a/requirements/REQUIREMENTS-NAPARI-CI.txt.in b/requirements/REQUIREMENTS-NAPARI-CI.txt.in index 8030df5c4..3221f2457 100644 --- a/requirements/REQUIREMENTS-NAPARI-CI.txt.in +++ b/requirements/REQUIREMENTS-NAPARI-CI.txt.in @@ -1,6 +1,6 @@ # requirements to run napari and CI for napari -# constrain the CI requirements to packages already in REQUIREMENTS-STRICT.txt --r ../starfish/REQUIREMENTS-STRICT.txt +# constrain the CI requirements to packages already in REQUIREMENTS.txt +-r ../REQUIREMENTS.txt # napari 0.4.18 made point sizes only isotropic: https://forum.image.sc/t/anisotropic-point-sizes/83388 napari[all]>0.4.17 pytest-qt diff --git a/setup.cfg b/setup.cfg index e35e6fe30..557e7c35c 100644 --- a/setup.cfg +++ b/setup.cfg @@ -28,7 +28,6 @@ classifier = Operating System :: Windows License :: OSI Approved :: MIT License Programming Language :: Python :: 3 - Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 Programming Language :: Python :: 3.10 Programming Language :: Python :: 3.11 diff --git a/setup.py b/setup.py index 2bf5eefbc..a6920aa50 100644 --- a/setup.py +++ b/setup.py @@ -30,5 +30,5 @@ include_package_data=True, version=versioneer.get_version(), cmdclass=versioneer.get_cmdclass(), - python_requires='>=3.8, <3.12' + python_requires='>=3.9, <3.12' ) diff --git a/starfish/REQUIREMENTS-STRICT.txt b/starfish/REQUIREMENTS-STRICT.txt index b8abce074..1044ae28a 100644 --- a/starfish/REQUIREMENTS-STRICT.txt +++ b/starfish/REQUIREMENTS-STRICT.txt @@ -1,60 +1,59 @@ # You should not edit this file directly. Instead, you should edit one of the following files (REQUIREMENTS.txt) and run make starfish/REQUIREMENTS-STRICT.txt attrs==24.2.0 -boto3==1.34.156 -botocore==1.34.156 -certifi==2024.7.4 +boto3==1.35.13 +botocore==1.35.13 +certifi==2024.8.30 charset-normalizer==3.3.2 click==8.1.7 -contourpy==1.1.1 +contourpy==1.3.0 cycler==0.12.1 diskcache==5.6.3 docutils==0.20.1 fonttools==4.53.1 h5py==3.11.0 -idna==3.7 -imageio==2.34.2 -importlib_resources==6.4.0 +idna==3.8 +imageio==2.35.1 +importlib_resources==6.4.4 jmespath==1.0.1 joblib==1.4.2 jsonschema==4.17.3 -kiwisolver==1.4.5 +kiwisolver==1.4.7 lazy_loader==0.4 looseversion==1.3.0 matplotlib==3.7.5 mistune==0.8.4 mpmath==1.3.0 -networkx==3.1 +networkx==3.2.1 numpy==1.24.4 packaging==24.1 -pandas==2.0.3 +pandas==2.2.2 pillow==10.4.0 -pkgutil_resolve_name==1.3.10 -pyparsing==3.1.2 +pyparsing==3.1.4 pyrsistent==0.20.0 python-dateutil==2.9.0.post0 pytz==2024.1 -PyWavelets==1.4.1 +PyWavelets==1.6.0 PyYAML==6.0.2 read-roi==1.6.0 regional==1.1.2 requests==2.32.3 s3transfer==0.10.2 scikit-image==0.21.0 -scikit-learn==1.3.2 -scipy==1.10.1 +scikit-learn==1.5.1 +scipy==1.13.1 seaborn==0.13.2 semantic-version==2.10.0 -setuptools==56.0.0 +setuptools==74.1.2 showit==1.1.4 six==1.16.0 slicedimage==4.1.1 -sympy==1.13.1 +sympy==1.13.2 threadpoolctl==3.5.0 -tifffile==2023.7.10 +tifffile==2024.8.30 tqdm==4.66.5 trackpy==0.6.4 tzdata==2024.1 -urllib3==1.26.19 -validators==0.33.0 -xarray==2023.1.0 -zipp==3.19.2 +urllib3==1.26.20 +validators==0.34.0 +xarray==2023.8.0 +zipp==3.20.1