diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a72c0e7e..9413ea9a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -159,6 +159,8 @@ jobs: qt: true pyvista: false wm: false + - run: HOMEBREW_NO_AUTO_UPDATE=1 brew install coreutils + name: Get timeout utility - run: ./tools/check_installation.sh test_linux: diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index 8fa696e3..247aa85f 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -58,10 +58,10 @@ channels: specs: # Python - python =3.12.7 # allow_outdated, vtk - - pip =25.0 + - pip =25.0.1 - wheel =0.45.1 - conda =25.1.1 - - mamba =2.0.6 + - mamba =2.0.5 # MNE ecosystem # TODO: ⛔️ ⛔️ ⛔️ DEV BUILDS START: CHANGE BEFORE RELEASE! ⛔️ ⛔️ ⛔️ # - mne-base =1.4dev0=*_20230503 @@ -79,7 +79,7 @@ specs: - mne-bids-pipeline =1.9.0 - mne-qt-browser =0.6.3 - mne-connectivity =0.7.0=*_1 - - mne-faster =1.2 + - mne-faster =1.2.1 - mne-nirs =0.7.1 - mne-features =0.3 - mne-rsa =0.9.1 @@ -130,13 +130,14 @@ specs: # <<< END RELATED SOFTWARE LIST >>> # ^^^ this line is special and used by MNE-Python, do not change it! + - spyder-base =6.0.4 - antropy =0.1.9 - mayavi =4.8.2=pyside6_* - traitsui =8.0.0 - pyface =8.0.0=*_1 - imageio-ffmpeg =0.6.0 - pandas =2.2.3 - - polars =1.21.0 + - polars =1.22.0 - scipy =1.15.1 - numpy =2.1.3 # allow_outdated, each new version has to wait for numba - openblas =0.3.28 @@ -144,7 +145,7 @@ specs: - jupyter =1.1.1 - jupyterlab =4.3.5 - ipykernel =6.29.5 - - spyder-kernels =3.0.2 + - spyder-kernels =3.0.3 # TODO: Needs to not require pyqt # https://github.com/spyder-ide/spyder/issues/20201 # spyder =6.1.0 @@ -161,7 +162,7 @@ specs: # NeuroSpin needs the following - questionary =2.1.0 - pqdm =0.2.0 - - astropy =7.0.0 + - astropy =7.0.1 # Viz # matplotilb is just matplotlib-base, tornado, and pyqt # https://github.com/conda-forge/matplotlib-feedstock/blob/main/recipe/meta.yaml @@ -178,7 +179,7 @@ specs: - pyvista =0.44.2 - pyvistaqt =0.11.1 - trame =3.8.0 - - trame-vtk =2.8.14 + - trame-vtk =2.8.15 - trame-vuetify =2.8.1 - termcolor =2.5.0 - defusedxml =0.7.1 @@ -190,8 +191,8 @@ specs: - pytest-qt =4.4.0 - pytest-timeout =2.3.1 - pre-commit =4.1.0 - - ruff =0.9.4 - - uv =0.5.28 + - ruff =0.9.6 + - uv =0.5.29 - check-manifest =0.50 - codespell =2.4.1 - py-spy =0.4.0 diff --git a/tests/test_imports.py b/tests/test_imports.py index 47c51fac..988f0bc5 100644 --- a/tests/test_imports.py +++ b/tests/test_imports.py @@ -54,6 +54,7 @@ def check_version_eq(package, ver): mods += """ darkdetect qdarkstyle numba openpyxl xlrd pingouin questionary seaborn plotly pqdm pyvistaqt vtk PySide6 PySide6.QtCore matplotlib matplotlib.pyplot +spyder spyder-kernels """.strip().split() if platform.system() == "Darwin": mods += ["Foundation"] # pyobjc @@ -64,6 +65,8 @@ def check_version_eq(package, ver): "mne-ari", # https://github.com/john-veillette/mne-ari/pull/7 "pactools", # https://github.com/pactools/pactools/pull/37 "Foundation", + "spyder", + "spyder-kernels", } mod_map = { # for import test, need map from conda-forge line/name to importable name "python-neo": "neo", diff --git a/tests/test_outdated.py b/tests/test_outdated.py index d66cb978..f5282a1f 100644 --- a/tests/test_outdated.py +++ b/tests/test_outdated.py @@ -122,6 +122,8 @@ def get_conda_json(package): continue elif "main" not in file["labels"]: continue + elif ".rc" in file["version"]: + continue else: version = file["version"] break diff --git a/tests/test_spyder.sh b/tests/test_spyder.sh new file mode 100644 index 00000000..11af3a74 --- /dev/null +++ b/tests/test_spyder.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +set -o pipefail + +TO=20s +echo "Running Spyder with a timeout of $TO:" +echo "which spyder: $(which spyder)" +timeout $TO spyder +RESULT=$? +if [[ $RESULT -eq 124 ]]; then + echo "Spyder succeeded with timeout" +else + echo "Spyder failed with error code $RESULT (should be 124 for timeout)" + exit 1 +fi diff --git a/tools/check_installation.sh b/tools/check_installation.sh index 3c607d9a..fdf6d2d0 100755 --- a/tools/check_installation.sh +++ b/tools/check_installation.sh @@ -113,3 +113,7 @@ echo "::endgroup::" echo "::group::Checking that all packages are installed that MNE-Python devs would need" python -u tests/test_dev_installed.py echo "::endgroup::" + +echo "::group::Checking Spyder" +bash tests/test_spyder.sh +echo "::endgroup::"