From 2f0b69bcab243b88b45f56c3d6b42168ca2d93dc Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Wed, 19 Jun 2024 09:02:25 -0400 Subject: [PATCH 01/35] MAINT: Try updating to vtk 9.3 --- tests/test_outdated.py | 4 ---- 1 file changed, 4 deletions(-) diff --git a/tests/test_outdated.py b/tests/test_outdated.py index aa6a9210..189daa8a 100644 --- a/tests/test_outdated.py +++ b/tests/test_outdated.py @@ -39,12 +39,8 @@ class Package: # noqa: D101 allowed_outdated: set[str] = { - "python", # 3.12.3 needs libexpat >2.6 but VTK not happy about it "sphinx", # 7.3 compat in progress - "graphviz", # conflicts with VTK 9.2.6 via libexpat "mne-rsa", # 0.91 appeared on conda-forge and was yanked - "pyobjc-core", # 10.3 conflicted with pyobjc-framework-cocoa on 2024/05/28 - "vtk", # 9.3.0 is out but mayavi (at least) hasn't been migrated } packages: list[Package] = [] From d0477b6b3a4acb3ee02dcced78235c7e4a3e05de Mon Sep 17 00:00:00 2001 From: "autofix-ci[bot]" <114827586+autofix-ci[bot]@users.noreply.github.com> Date: Wed, 19 Jun 2024 13:33:48 +0000 Subject: [PATCH 02/35] [autofix.ci] apply automated fixes --- recipes/mne-python/construct.yaml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index 5295cdd3..e4db47b0 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -58,7 +58,7 @@ channels: specs: # Python - - python =3.12.2 + - python =3.12.4 - pip =24.0 - conda =24.5.0 - mamba =1.5.8 @@ -144,17 +144,17 @@ specs: - ipympl =0.9.4 - seaborn =0.13.2 - plotly =5.22.0 - - vtk =9.2.6 + - vtk =9.3.0 - git =2.45.2 # [win] - make =4.3 # [win] - ipywidgets =8.1.3 - pyvista =0.43.10 - - pyvistaqt =0.11.0 + - pyvistaqt =0.11.1 - trame =3.6.2 - trame-vtk =2.8.9 - trame-vuetify =2.6.0 - termcolor =2.4.0 - - pyobjc-core =10.2 # [osx] + - pyobjc-core =10.3.1 # [osx] - defusedxml =0.7.1 # Development - setuptools_scm =8.1.0 @@ -179,7 +179,7 @@ specs: # Doc building - numpydoc =1.7.0 - pydata-sphinx-theme =0.15.3 - - graphviz =9.0.0 + - graphviz =11.0.0 - python-graphviz =0.20.3 - selenium =4.21.0 - sphinx =7.2.6 From 1ceeff8a29a923aa70b631f971ac99b8ffc69575 Mon Sep 17 00:00:00 2001 From: "autofix-ci[bot]" <114827586+autofix-ci[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 14:48:51 +0000 Subject: [PATCH 03/35] [autofix.ci] apply automated fixes --- recipes/mne-python/construct.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index 09189b89..9557ccb8 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -105,7 +105,7 @@ specs: - spyder =5.5.5 - darkdetect =0.8.0 - qdarkstyle =3.2.3 - - numba =0.59.1 + - numba =0.60.0 - cython =3.0.10 # I/O - pyxdf =1.16.6 From e9f95fa67d6d5020758d21c1d0d3e3dcc51ae35c Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 29 Jun 2024 12:38:51 -0400 Subject: [PATCH 04/35] FIX: Versions --- recipes/mne-python/construct.yaml | 15 +++++++-------- tests/test_imports.py | 5 ++++- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index 5bbfffed..ced24f41 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -95,11 +95,11 @@ specs: - python-neo =0.13.1 - pandas =2.2.2 # BLAS - - scipy =1.13.1 + - scipy =1.14.0 - openblas =0.3.27 - libblas =3.9.0=*openblas - jupyter =1.0.0 - - jupyterlab =4.2.2 + - jupyterlab =4.2.3 - ipykernel =6.29.4 - spyder-kernels =2.5.2 - spyder =5.5.5 @@ -115,7 +115,7 @@ specs: # Statistics - pingouin =0.5.4 # MRI - - fsleyes =1.12.3 + - fsleyes =1.12.4 - dcm2niix =1.0.20240202 - dipy =1.9.0 # Time-frequency analysis @@ -132,7 +132,6 @@ specs: - openneuro-py =2024.2.0 # sleep staging - sleepecg =0.5.8 - - yasa =0.6.4 # various biological signals (ECG, EOG, EMG, …) - neurokit2 =0.2.9 # GitHub client, https://cli.github.com @@ -166,14 +165,14 @@ specs: - pytest-qt =4.4.0 - pytest-timeout =2.3.1 - pre-commit =3.7.1 - - ruff =0.4.10 + - ruff =0.5.0 - check-manifest =0.49.0 - codespell =2.3.0 - nitime =0.10.2 - py-spy =0.3.14 - line_profiler =4.1.1 - memory_profiler =0.61.0 - - twine =5.1.0 + - twine =5.1.1 - hatchling =1.25.0 - hatch-vcs =0.4.0 - mypy =1.10.1 @@ -181,11 +180,11 @@ specs: - vulture =2.7 # Doc building - numpydoc =1.7.0 - - pydata-sphinx-theme =0.15.3 + - pydata-sphinx-theme =0.15.4 - graphviz =11.0.0 - python-graphviz =0.20.3 - selenium =4.22.0 - - sphinx =7.2.6 + - sphinx =7.3.7 - sphinx-design =0.6.0 - sphinx-gallery =0.16.0 - sphinxcontrib-bibtex =2.6.2 diff --git a/tests/test_imports.py b/tests/test_imports.py index ace96181..3713f891 100644 --- a/tests/test_imports.py +++ b/tests/test_imports.py @@ -49,7 +49,10 @@ def check_min_version(package, min_version): import fooof import openneuro import sleepecg -import yasa + +# Doesn't work with SciPy 1.14 and PR to fix it has not been merged: +# https://github.com/raphaelvallat/yasa/pull/171 +# import yasa import neurokit2 import questionary import matplotlib.pyplot From 1a790db25218c4c4c2fdf7f96f33601992f9260e Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 29 Jun 2024 14:40:37 -0400 Subject: [PATCH 05/35] FIX: Reqs --- .github/workflows/build.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 34079511..39726f16 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -23,7 +23,7 @@ jobs: strategy: fail-fast: false matrix: - os: [macos-11, macos-14] # Intel and Apple Silicon, respectively + os: [macos-12, macos-14] # Intel and Apple Silicon, respectively runs-on: ${{ matrix.os }} env: GITHUB_EVENT_NAME: ${{ github.event_name }} @@ -128,7 +128,7 @@ jobs: strategy: fail-fast: false matrix: - os: [macos-11, macos-12, macos-13, macos-14] # macos-14 is Apple Silicon; older versions are Intel + os: [macos-12, macos-13, macos-14] # macos-14 is Apple Silicon; older versions are Intel runs-on: ${{ matrix.os }} defaults: run: From 49ffe9685857b1f1c4300b5cac8b549e77212288 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 29 Jun 2024 14:42:27 -0400 Subject: [PATCH 06/35] FIX: Another --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 39726f16..851aec90 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -166,7 +166,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-20.04, ubuntu-22.04] + os: [ubuntu-20.04, ubuntu-22.04, ubuntu-24.04] runs-on: ${{ matrix.os }} defaults: run: From d216d79f8c7fb7d85e1ef02693ef2c2399db65e5 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 29 Jun 2024 14:47:43 -0400 Subject: [PATCH 07/35] FIX: Refactor --- .github/dependabot.yml | 10 ++++++++++ .github/release.yaml | 6 ++++++ .github/workflows/build.yml | 28 ++++------------------------ 3 files changed, 20 insertions(+), 24 deletions(-) create mode 100644 .github/dependabot.yml create mode 100644 .github/release.yaml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 00000000..d15c975e --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,10 @@ +version: 2 +updates: + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "weekly" + groups: + actions: + patterns: + - "*" diff --git a/.github/release.yaml b/.github/release.yaml new file mode 100644 index 00000000..386ce981 --- /dev/null +++ b/.github/release.yaml @@ -0,0 +1,6 @@ +changelog: + exclude: + authors: + - dependabot + - pre-commit-ci + - github-actions diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 851aec90..16659428 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -225,37 +225,16 @@ jobs: release: name: Release needs: [build_macos, build_linux, build_windows, test_macos, test_linux, test_windows] - if: github.ref_type == 'tag' runs-on: ubuntu-latest defaults: run: shell: bash -el {0} steps: # These names should correspond to MNE_INSTALLER_ARTIFACT_ID in tools/extract_version.sh - - uses: actions/download-artifact@v3 - with: - name: MNE-Python-Linux-x86_64 - - uses: actions/download-artifact@v3 - with: - name: MNE-Python-Linux-x86_64-json - - uses: actions/download-artifact@v3 - with: - name: MNE-Python-Windows-x86_64 - - uses: actions/download-artifact@v3 - with: - name: MNE-Python-Windows-x86_64-json - - uses: actions/download-artifact@v3 - with: - name: MNE-Python-macOS-x86_64 - - uses: actions/download-artifact@v3 - with: - name: MNE-Python-macOS-x86_64-json - - uses: actions/download-artifact@v3 - with: - name: MNE-Python-macOS-arm64 - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: - name: MNE-Python-macOS-arm64-json + name: MNE-Python-* + merge-multiple: true - run: ls -al ./ - uses: ncipollo/release-action@v1 with: @@ -265,3 +244,4 @@ jobs: prerelease: true allowUpdates: true generateReleaseNotes: true + if: github.ref_type == 'tag' From be7aaaf6384d53c23da61c277e56a33f71edcb18 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 29 Jun 2024 14:49:54 -0400 Subject: [PATCH 08/35] FIX: Generic --- .github/workflows/build.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 16659428..49cc53e2 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -72,7 +72,7 @@ jobs: path: MNE-Python-*.* build_linux: - name: Build (Linux) + name: Build (${{ matrix.os }}) runs-on: ubuntu-20.04 defaults: run: @@ -96,7 +96,7 @@ jobs: path: MNE-Python-*.* build_windows: - name: Build (Windows) + name: Build (${{ matrix.os }}) strategy: fail-fast: false runs-on: windows-2019 From 17c8bef5f6af2d7446bf4e565cce9e76407f0fef Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 29 Jun 2024 14:56:19 -0400 Subject: [PATCH 09/35] FIX: Simplify --- .github/workflows/build.yml | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 49cc53e2..b51eeffe 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -34,10 +34,6 @@ jobs: - uses: actions/checkout@v3 - uses: mamba-org/setup-micromamba@v1 with: - condarc: | - channels: - - conda-forge - channel_priority: strict environment-file: environment.yml - run: ./tools/extract_version.sh - run: ./tools/macos_install_certificates.sh @@ -81,10 +77,6 @@ jobs: - uses: actions/checkout@v3 - uses: mamba-org/setup-micromamba@v1 with: - condarc: | - channels: - - conda-forge - channel_priority: strict environment-file: environment.yml - run: ./tools/extract_version.sh - run: ./tools/run_constructor.sh @@ -107,10 +99,6 @@ jobs: - uses: actions/checkout@v3 - uses: mamba-org/setup-micromamba@v1 with: - condarc: | - channels: - - conda-forge - channel_priority: strict environment-file: environment.yml - run: ./tools/extract_version.sh - run: ./tools/run_constructor.sh From c04ac56c59ebd0d211c1b1437f2e4e47f437b615 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 29 Jun 2024 15:07:40 -0400 Subject: [PATCH 10/35] FIX: Name --- .github/workflows/build.yml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b51eeffe..6c1f7c5c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -69,7 +69,11 @@ jobs: build_linux: name: Build (${{ matrix.os }}) - runs-on: ubuntu-20.04 + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [ubuntu-20.04] # Intel and Apple Silicon, respectively defaults: run: shell: bash -el {0} @@ -91,7 +95,9 @@ jobs: name: Build (${{ matrix.os }}) strategy: fail-fast: false - runs-on: windows-2019 + matrix: + os: [windows-2019] + runs-on: ${{ matrix.os}} defaults: run: shell: bash -el {0} From 161ac9e630d8eea9bb19d5168e4f98f760c94cb0 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 29 Jun 2024 16:42:57 -0400 Subject: [PATCH 11/35] WIP: Still need to get rid of PyQt5 --- .github/workflows/build.yml | 4 ++-- recipes/mne-python/construct.yaml | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6c1f7c5c..066cafd1 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -23,7 +23,7 @@ jobs: strategy: fail-fast: false matrix: - os: [macos-12, macos-14] # Intel and Apple Silicon, respectively + os: [macos-12, macos-14] runs-on: ${{ matrix.os }} env: GITHUB_EVENT_NAME: ${{ github.event_name }} @@ -73,7 +73,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-20.04] # Intel and Apple Silicon, respectively + os: [ubuntu-20.04] defaults: run: shell: bash -el {0} diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index ced24f41..c9df811e 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -142,6 +142,9 @@ specs: # Viz - matplotlib =3.8.4 - ipympl =0.9.4 + - pyside6 =6.7.2 + - qt6-main =6.7.2 + - qtpy =2.4.1 - seaborn =0.13.2 - plotly =5.22.0 - vtk =9.3.0 From 7a9edadf3bee490c8b942e223cb17f64f7f269d1 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 6 Jul 2024 12:53:11 -0400 Subject: [PATCH 12/35] WIP --- .github/workflows/build.yml | 58 ++++++++++++++++++++++++------------- 1 file changed, 38 insertions(+), 20 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 066cafd1..4ea9ecd5 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -23,7 +23,7 @@ jobs: strategy: fail-fast: false matrix: - os: [macos-12, macos-14] + os: [macos-12, macos-14] # Intel and Apple Silicon, respectively runs-on: ${{ matrix.os }} env: GITHUB_EVENT_NAME: ${{ github.event_name }} @@ -31,9 +31,13 @@ jobs: run: shell: bash -el {0} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: mamba-org/setup-micromamba@v1 with: + condarc: | + channels: + - conda-forge + channel_priority: strict environment-file: environment.yml - run: ./tools/extract_version.sh - run: ./tools/macos_install_certificates.sh @@ -62,7 +66,7 @@ jobs: installer -verbose -pkginfo -pkg ./${MNE_INSTALLER_NAME} installer -verbose -dominfo -pkg ./${MNE_INSTALLER_NAME} installer -verbose -volinfo -pkg ./${MNE_INSTALLER_NAME} - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: ${{ env.MNE_INSTALLER_ARTIFACT_ID }} path: MNE-Python-*.* @@ -78,39 +82,47 @@ jobs: run: shell: bash -el {0} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: mamba-org/setup-micromamba@v1 with: + condarc: | + channels: + - conda-forge + channel_priority: strict environment-file: environment.yml - run: ./tools/extract_version.sh - run: ./tools/run_constructor.sh timeout-minutes: 20 - run: ./tools/calculate_installer_hash.sh - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: ${{ env.MNE_INSTALLER_ARTIFACT_ID }} path: MNE-Python-*.* build_windows: name: Build (${{ matrix.os }}) + runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: os: [windows-2019] - runs-on: ${{ matrix.os}} defaults: run: shell: bash -el {0} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: mamba-org/setup-micromamba@v1 with: + condarc: | + channels: + - conda-forge + channel_priority: strict environment-file: environment.yml - run: ./tools/extract_version.sh - run: ./tools/run_constructor.sh timeout-minutes: 20 - run: ./tools/calculate_installer_hash.sh - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: ${{ env.MNE_INSTALLER_ARTIFACT_ID }} path: MNE-Python-*.* @@ -122,21 +134,21 @@ jobs: strategy: fail-fast: false matrix: - os: [macos-12, macos-13, macos-14] # macos-14 is Apple Silicon; older versions are Intel + os: [macos-12, macos-13, macos-14] runs-on: ${{ matrix.os }} defaults: run: shell: bash -el {0} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 # The macos-14 runner doesn't come equipped with Python, so we need to install it # there. - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: python-version: "3.12" if: ${{ matrix.os == 'macos-14' }} - run: ./tools/extract_version.sh - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: name: ${{ env.MNE_INSTALLER_ARTIFACT_ID }} - name: Run installer @@ -144,10 +156,12 @@ jobs: sudo installer -verbose -pkg ${MNE_INSTALLER_NAME} -target / \ || ( tail -n 30 /var/log/install.log && exit 1 ) # display last log messages on error - run: ./tools/export_frozen_env_def.sh - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: ${{ env.MNE_INSTALLER_ARTIFACT_ID }}-json path: MNE-Python-*.env.json + # upload just one for each installer version + if: matrix.os == 'macos-13' || matrix.os == 'macos-14' - uses: pyvista/setup-headless-display-action@main with: qt: true @@ -166,17 +180,19 @@ jobs: run: shell: bash -el {0} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - run: ./tools/extract_version.sh - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: name: ${{ env.MNE_INSTALLER_ARTIFACT_ID }} - run: sh ./${MNE_INSTALLER_NAME} -b - run: ./tools/export_frozen_env_def.sh - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: ${{ env.MNE_INSTALLER_ARTIFACT_ID }}-json path: MNE-Python-*.env.json + # upload just one for each installer version + if: matrix.os == 'ubuntu-24.04' - uses: pyvista/setup-headless-display-action@main with: qt: true @@ -195,9 +211,9 @@ jobs: run: shell: bash -el {0} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - run: ./tools/extract_version.sh - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: name: ${{ env.MNE_INSTALLER_ARTIFACT_ID }} # https://docs.anaconda.com/anaconda/install/silent-mode.html#windows @@ -205,10 +221,12 @@ jobs: timeout-minutes: 30 shell: cmd - run: ./tools/export_frozen_env_def.sh - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: ${{ env.MNE_INSTALLER_ARTIFACT_ID }}-json path: MNE-Python-*.env.json + # upload just one for each installer version + if: matrix.os == 'windows-2022' - uses: pyvista/setup-headless-display-action@main with: qt: true @@ -227,7 +245,7 @@ jobs: # These names should correspond to MNE_INSTALLER_ARTIFACT_ID in tools/extract_version.sh - uses: actions/download-artifact@v4 with: - name: MNE-Python-* + pattern: MNE-Python-* merge-multiple: true - run: ls -al ./ - uses: ncipollo/release-action@v1 From 11521917b3dbbf00114dfde99fde3152952b9986 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 6 Jul 2024 12:58:49 -0400 Subject: [PATCH 13/35] FIX: Try --- .github/workflows/build.yml | 12 ------------ recipes/mne-python/construct.yaml | 4 ++-- tests/test_imports.py | 6 ++++++ 3 files changed, 8 insertions(+), 14 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4ea9ecd5..749595c8 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -34,10 +34,6 @@ jobs: - uses: actions/checkout@v4 - uses: mamba-org/setup-micromamba@v1 with: - condarc: | - channels: - - conda-forge - channel_priority: strict environment-file: environment.yml - run: ./tools/extract_version.sh - run: ./tools/macos_install_certificates.sh @@ -85,10 +81,6 @@ jobs: - uses: actions/checkout@v4 - uses: mamba-org/setup-micromamba@v1 with: - condarc: | - channels: - - conda-forge - channel_priority: strict environment-file: environment.yml - run: ./tools/extract_version.sh - run: ./tools/run_constructor.sh @@ -113,10 +105,6 @@ jobs: - uses: actions/checkout@v4 - uses: mamba-org/setup-micromamba@v1 with: - condarc: | - channels: - - conda-forge - channel_priority: strict environment-file: environment.yml - run: ./tools/extract_version.sh - run: ./tools/run_constructor.sh diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index 2c997ad1..d8248b0e 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -155,7 +155,7 @@ specs: - pyvistaqt =0.11.1 - trame =3.6.3 - trame-vtk =2.8.9 - - trame-vuetify =2.6.0 + - trame-vuetify =2.6.1 - termcolor =2.4.0 - pyobjc-core =10.3.1 # [osx] - pyobjc-framework-Cocoa =10.3.1 # [osx] @@ -169,7 +169,7 @@ specs: - pytest-timeout =2.3.1 - pre-commit =3.7.1 - ruff =0.5.0 - - uv =0.2.18 + - uv =0.2.21 - check-manifest =0.49.0 - codespell =2.3.0 - nitime =0.10.2 diff --git a/tests/test_imports.py b/tests/test_imports.py index 3713f891..3efd08bc 100644 --- a/tests/test_imports.py +++ b/tests/test_imports.py @@ -61,6 +61,12 @@ def check_min_version(package, min_version): import pqdm import pyvistaqt import vtk +import pyside6 + +import matplotlib.pyplot as plt + +backend = plt.get_backend() +assert backend == "QtAgg", backend check_min_version(pyvistaqt, "0.11.0") From 015732a6f6f80a867d87d61684bbfcb28dc7233f Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 6 Jul 2024 13:03:48 -0400 Subject: [PATCH 14/35] FIX: Ver --- recipes/mne-python/construct.yaml | 1 + tests/test_imports.py | 5 +---- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index d8248b0e..7791395a 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -132,6 +132,7 @@ specs: - openneuro-py =2024.2.0 # sleep staging - sleepecg =0.5.8 + - yasa =0.6.5 # various biological signals (ECG, EOG, EMG, …) - neurokit2 =0.2.9 # GitHub client, https://cli.github.com diff --git a/tests/test_imports.py b/tests/test_imports.py index 3efd08bc..71821357 100644 --- a/tests/test_imports.py +++ b/tests/test_imports.py @@ -49,10 +49,7 @@ def check_min_version(package, min_version): import fooof import openneuro import sleepecg - -# Doesn't work with SciPy 1.14 and PR to fix it has not been merged: -# https://github.com/raphaelvallat/yasa/pull/171 -# import yasa +import yasa import neurokit2 import questionary import matplotlib.pyplot From 39df5ad753b1baf8a636ac02d46a8cdf7f690ed8 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 6 Jul 2024 13:10:30 -0400 Subject: [PATCH 15/35] FIX: Mpl --- recipes/mne-python/construct.yaml | 3 ++- tests/test_outdated.py | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index 7791395a..f301c2ad 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -141,7 +141,8 @@ specs: - questionary =2.0.1 - pqdm =0.2.0 # Viz - - matplotlib =3.9.0 + # TODO: unknown why 3.9.0 isn't working as of 2024/07/06 + - matplotlib =3.8.4 - ipympl =0.9.4 - pyside6 =6.7.2 - qt6-main =6.7.2 diff --git a/tests/test_outdated.py b/tests/test_outdated.py index d06cc48f..1062b44c 100644 --- a/tests/test_outdated.py +++ b/tests/test_outdated.py @@ -38,7 +38,9 @@ class Package: # noqa: D101 version_conda_forge: str | None = None -allowed_outdated: set[str] = set() +allowed_outdated: set[str] = { + "matplotlib", # 3.9.0 won't download for some reason +} packages: list[Package] = [] for spec in specs: From 33a0bbfff753bb6d01bcf243cd76d84291231b57 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 6 Jul 2024 13:12:40 -0400 Subject: [PATCH 16/35] FIX: More --- recipes/mne-python/construct.yaml | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index f301c2ad..f0f08402 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -65,11 +65,11 @@ specs: - fmt =10.2.1 # MNE ecosystem # TODO: ⛔️ ⛔️ ⛔️ DEV BUILDS START: CHANGE BEFORE RELEASE! ⛔️ ⛔️ ⛔️ - # - mne =1.4dev0=*_20230503 + # - mne-base =1.4dev0=*_20230503 # - mne-installer-menus =1.4dev0=*_20230503 # - mne-bids =0.11dev0=*_20221007 # TODO: ⛔️ ⛔️ ⛔️ DEV BUILDS STOP: CHANGE BEFORE RELEASE! ⛔️ ⛔️ ⛔️ - - mne =1.7.1=*_0 + - mne-base =1.7.1=*_0 - mne-installer-menus =1.7.1=*_0 # For testing purposes with build_local.sh, you can comment out all deps # below for speed, and change mne to mne-base above @@ -142,10 +142,13 @@ specs: - pqdm =0.2.0 # Viz # TODO: unknown why 3.9.0 isn't working as of 2024/07/06 - - matplotlib =3.8.4 - - ipympl =0.9.4 + # matplotilb is just matplotlib-base, tornado, and pyqt + # https://github.com/conda-forge/matplotlib-feedstock/blob/main/recipe/meta.yaml + - matplotlib-base =3.8.4 + - tornado =6.4.1 - pyside6 =6.7.2 - qt6-main =6.7.2 + - ipympl =0.9.4 - qtpy =2.4.1 - seaborn =0.13.2 - plotly =5.22.0 From 48253f45c7938be001b30a11c2eacc2de04e1fe4 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 6 Jul 2024 13:20:32 -0400 Subject: [PATCH 17/35] FIX: Ubuntu --- tests/test_imports.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_imports.py b/tests/test_imports.py index 71821357..fe90d431 100644 --- a/tests/test_imports.py +++ b/tests/test_imports.py @@ -58,7 +58,7 @@ def check_min_version(package, min_version): import pqdm import pyvistaqt import vtk -import pyside6 +import PySide6.QtCore import matplotlib.pyplot as plt From a6a720d7ba4d8b029fcab38c07f8fa5fd551e086 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 6 Jul 2024 13:29:44 -0400 Subject: [PATCH 18/35] FIX: Test --- tests/test_gui.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_gui.py b/tests/test_gui.py index b0d42735..a209d3ba 100644 --- a/tests/test_gui.py +++ b/tests/test_gui.py @@ -40,8 +40,8 @@ plotter.screenshot(fname) assert fname.is_file() os.remove(fname) - mne.viz.close_3d_figure(fig) assert "BackgroundPlotter" in repr(plotter), repr(plotter) + mne.viz.close_3d_figure(fig) # mne-qt-browser print("Running mne-qt-browser tests") From d197a91fca1c6667fbc1cc20aa53b35374752150 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 6 Jul 2024 13:41:42 -0400 Subject: [PATCH 19/35] FIX: Ver --- tests/test_json_versions.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_json_versions.py b/tests/test_json_versions.py index 1aaacf7e..98f4a46f 100644 --- a/tests/test_json_versions.py +++ b/tests/test_json_versions.py @@ -34,7 +34,7 @@ del params # Extract versions from construct.yaml -mne_package_names = ("mne", "mne-installer-menus") # the most important ones! +mne_package_names = ("mne-base", "mne-installer-menus") # the most important ones! want_versions = {} for spec in specs: From a0a782315d6e5c543e5d6ea24532feff150a2679 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 6 Jul 2024 13:50:08 -0400 Subject: [PATCH 20/35] ENH: mnelab --- recipes/mne-python/construct.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index f0f08402..c89a3399 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -135,6 +135,7 @@ specs: - yasa =0.6.5 # various biological signals (ECG, EOG, EMG, …) - neurokit2 =0.2.9 + - mnelab =0.9.1 # GitHub client, https://cli.github.com - gh =2.52.0 # NeuroSpin needs the following @@ -146,7 +147,7 @@ specs: # https://github.com/conda-forge/matplotlib-feedstock/blob/main/recipe/meta.yaml - matplotlib-base =3.8.4 - tornado =6.4.1 - - pyside6 =6.7.2 + - pyside6 =6.7.2=*_1 - qt6-main =6.7.2 - ipympl =0.9.4 - qtpy =2.4.1 From 97b0f240a8a679f81ec0d10b08441301034634c4 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 6 Jul 2024 13:52:57 -0400 Subject: [PATCH 21/35] FIX: Another --- recipes/mne-python/construct.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index c89a3399..53e23a97 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -94,6 +94,7 @@ specs: - openmeeg =2.5.11 - python-neo =0.13.1 - pandas =2.2.2 + - polars =1.0.0 # BLAS - scipy =1.14.0 - openblas =0.3.27 From e540ed9c204113a0e7a9d7b9405bcddbcf90a467 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 6 Jul 2024 16:45:25 -0400 Subject: [PATCH 22/35] FIX: State --- recipes/mne-python/construct.yaml | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index 53e23a97..0dee6194 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -76,26 +76,29 @@ specs: - mne-bids =0.15.0 - mne-bids-pipeline =1.9.0 - mne-qt-browser =0.6.3 - - mne-connectivity =0.7.0 + - mne-connectivity =0.7.0=*_1 - mne-faster =1.2 - mne-nirs =0.6.0 - mne-features =0.3 - mne-rsa =0.9.1 - mne-ari =0.1.2 - - mne-kit-gui =1.2.0 - - mayavi =4.8.2 - mne-icalabel =0.6.0 - - mne-gui-addons =0.1.0 + # TODO: Needs to not require pyqt + - mne-gui-addons =0.1.0=*_1 - mne-lsl =1.4.0 - - traitsui =8.0.0 - autoreject =0.4.3 + # TODO: Needs mayavi not to require qt-main + # mne-kit-gui =1.2.0 + # mayavi =4.8.2=*_3 + # traitsui =8.0.0=*_1 + # pyface =8.0.0=*_1 - pyriemann =0.6 - - pyprep =0.4.3 + # TODO: Needs to not require pyqt + - pyprep =0.4.3=*_1 - openmeeg =2.5.11 - python-neo =0.13.1 - pandas =2.2.2 - polars =1.0.0 - # BLAS - scipy =1.14.0 - openblas =0.3.27 - libblas =3.9.0=*openblas @@ -103,7 +106,9 @@ specs: - jupyterlab =4.2.3 - ipykernel =6.29.5 - spyder-kernels =2.5.2 - - spyder =5.5.5 + # TODO: Needs to not require pyqt + # https://github.com/conda-forge/spyder-feedstock/issues/178 + # spyder =5.5.5 - darkdetect =0.8.0 - qdarkstyle =3.2.3 - numba =0.60.0 @@ -202,7 +207,6 @@ specs: - sphinx-copybutton =0.5.2 - sphinxcontrib-youtube =1.4.1 - intersphinx-registry =0.2406.4 - condarc: channels: - conda-forge From 3f57e72080558bed98ad783d0cfd1ee44a489c02 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 6 Jul 2024 16:45:54 -0400 Subject: [PATCH 23/35] FIX: Todo --- recipes/mne-python/construct.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index 0dee6194..91323dcb 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -83,7 +83,6 @@ specs: - mne-rsa =0.9.1 - mne-ari =0.1.2 - mne-icalabel =0.6.0 - # TODO: Needs to not require pyqt - mne-gui-addons =0.1.0=*_1 - mne-lsl =1.4.0 - autoreject =0.4.3 From aaaa8fe7276406091606a801a91dd58289bf55c5 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 6 Jul 2024 16:46:27 -0400 Subject: [PATCH 24/35] FIX: Comment --- recipes/mne-python/construct.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index 91323dcb..bb36aedd 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -92,7 +92,6 @@ specs: # traitsui =8.0.0=*_1 # pyface =8.0.0=*_1 - pyriemann =0.6 - # TODO: Needs to not require pyqt - pyprep =0.4.3=*_1 - openmeeg =2.5.11 - python-neo =0.13.1 From f3a5fac90b18f6c9de4db29331363d6a756e2aa3 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 6 Jul 2024 17:22:58 -0400 Subject: [PATCH 25/35] FIX: Try no spyder --- recipes/mne-python/construct.yaml | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index bb36aedd..c294e989 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -86,11 +86,10 @@ specs: - mne-gui-addons =0.1.0=*_1 - mne-lsl =1.4.0 - autoreject =0.4.3 - # TODO: Needs mayavi not to require qt-main - # mne-kit-gui =1.2.0 - # mayavi =4.8.2=*_3 - # traitsui =8.0.0=*_1 - # pyface =8.0.0=*_1 + - mne-kit-gui =1.2.0 + - mayavi =4.8.2=*_3 + - traitsui =8.0.0 + - pyface =8.0.0=*_1 - pyriemann =0.6 - pyprep =0.4.3=*_1 - openmeeg =2.5.11 @@ -105,7 +104,7 @@ specs: - ipykernel =6.29.5 - spyder-kernels =2.5.2 # TODO: Needs to not require pyqt - # https://github.com/conda-forge/spyder-feedstock/issues/178 + # https://github.com/spyder-ide/spyder/issues/20201 # spyder =5.5.5 - darkdetect =0.8.0 - qdarkstyle =3.2.3 From ed5ac8250e9ca1e0d93903c06b46fe9425d05b6c Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Sat, 6 Jul 2024 18:45:53 -0400 Subject: [PATCH 26/35] FIX: Missing --- recipes/mne-python/construct.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index c294e989..1dac0d14 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -92,6 +92,10 @@ specs: - pyface =8.0.0=*_1 - pyriemann =0.6 - pyprep =0.4.3=*_1 + - pybv =0.7.5 + - eeglabio =0.0.2.post4 + - imageio-ffmpeg =0.5.1 + - mffpy =0.9.0 - openmeeg =2.5.11 - python-neo =0.13.1 - pandas =2.2.2 From f384936653e02aa33d9d848b086c0f49f683f595 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Tue, 9 Jul 2024 11:04:32 -0400 Subject: [PATCH 27/35] FIX: Try another --- .github/workflows/build.yml | 1 + recipes/mne-python/construct.yaml | 16 ++++++++-------- tests/test_json_versions.py | 2 +- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 749595c8..df14d785 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -154,6 +154,7 @@ jobs: with: qt: true pyvista: false + - run: conda list && conda remove -y qt-main - run: ./tools/check_installation.sh test_linux: diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index 1dac0d14..656658c7 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -62,14 +62,14 @@ specs: - pip =24.0 - conda =24.5.0 - mamba =1.5.8 - - fmt =10.2.1 + - fmt =11.0.1 # MNE ecosystem # TODO: ⛔️ ⛔️ ⛔️ DEV BUILDS START: CHANGE BEFORE RELEASE! ⛔️ ⛔️ ⛔️ # - mne-base =1.4dev0=*_20230503 # - mne-installer-menus =1.4dev0=*_20230503 # - mne-bids =0.11dev0=*_20221007 # TODO: ⛔️ ⛔️ ⛔️ DEV BUILDS STOP: CHANGE BEFORE RELEASE! ⛔️ ⛔️ ⛔️ - - mne-base =1.7.1=*_0 + - mne =1.7.1=pyside6_*_102 - mne-installer-menus =1.7.1=*_0 # For testing purposes with build_local.sh, you can comment out all deps # below for speed, and change mne to mne-base above @@ -99,7 +99,7 @@ specs: - openmeeg =2.5.11 - python-neo =0.13.1 - pandas =2.2.2 - - polars =1.0.0 + - polars =1.1.0 - scipy =1.14.0 - openblas =0.3.27 - libblas =3.9.0=*openblas @@ -152,7 +152,7 @@ specs: # TODO: unknown why 3.9.0 isn't working as of 2024/07/06 # matplotilb is just matplotlib-base, tornado, and pyqt # https://github.com/conda-forge/matplotlib-feedstock/blob/main/recipe/meta.yaml - - matplotlib-base =3.8.4 + - matplotlib-base =3.9.1 - tornado =6.4.1 - pyside6 =6.7.2=*_1 - qt6-main =6.7.2 @@ -160,11 +160,11 @@ specs: - qtpy =2.4.1 - seaborn =0.13.2 - plotly =5.22.0 - - vtk =9.3.0 + - vtk =9.3.1 - git =2.45.2 # [win] - make =4.3 # [win] - ipywidgets =8.1.3 - - pyvista =0.43.10 + - pyvista =0.44.0 - pyvistaqt =0.11.1 - trame =3.6.3 - trame-vtk =2.8.9 @@ -181,8 +181,8 @@ specs: - pytest-qt =4.4.0 - pytest-timeout =2.3.1 - pre-commit =3.7.1 - - ruff =0.5.0 - - uv =0.2.21 + - ruff =0.5.1 + - uv =0.2.23 - check-manifest =0.49.0 - codespell =2.3.0 - nitime =0.10.2 diff --git a/tests/test_json_versions.py b/tests/test_json_versions.py index 98f4a46f..1aaacf7e 100644 --- a/tests/test_json_versions.py +++ b/tests/test_json_versions.py @@ -34,7 +34,7 @@ del params # Extract versions from construct.yaml -mne_package_names = ("mne-base", "mne-installer-menus") # the most important ones! +mne_package_names = ("mne", "mne-installer-menus") # the most important ones! want_versions = {} for spec in specs: From 8ba7f6d34abd02617f270677a199990b0f8739cb Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Tue, 9 Jul 2024 11:08:42 -0400 Subject: [PATCH 28/35] FIX: Try again --- recipes/mne-python/construct.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index 656658c7..1bd2f942 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -62,7 +62,6 @@ specs: - pip =24.0 - conda =24.5.0 - mamba =1.5.8 - - fmt =11.0.1 # MNE ecosystem # TODO: ⛔️ ⛔️ ⛔️ DEV BUILDS START: CHANGE BEFORE RELEASE! ⛔️ ⛔️ ⛔️ # - mne-base =1.4dev0=*_20230503 @@ -87,7 +86,7 @@ specs: - mne-lsl =1.4.0 - autoreject =0.4.3 - mne-kit-gui =1.2.0 - - mayavi =4.8.2=*_3 + - mayavi =4.8.2=pyside6_*_204 - traitsui =8.0.0 - pyface =8.0.0=*_1 - pyriemann =0.6 From 92711238f40b734376e9fc6f9cda09527aa4881d Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Tue, 9 Jul 2024 11:21:17 -0400 Subject: [PATCH 29/35] FIX: RC and not migrated --- recipes/mne-python/construct.yaml | 5 ++--- tests/test_outdated.py | 3 ++- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index 1bd2f942..b1c14bbd 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -148,10 +148,9 @@ specs: - questionary =2.0.1 - pqdm =0.2.0 # Viz - # TODO: unknown why 3.9.0 isn't working as of 2024/07/06 # matplotilb is just matplotlib-base, tornado, and pyqt # https://github.com/conda-forge/matplotlib-feedstock/blob/main/recipe/meta.yaml - - matplotlib-base =3.9.1 + - matplotlib-base =3.9.0 - tornado =6.4.1 - pyside6 =6.7.2=*_1 - qt6-main =6.7.2 @@ -159,7 +158,7 @@ specs: - qtpy =2.4.1 - seaborn =0.13.2 - plotly =5.22.0 - - vtk =9.3.1 + - vtk =9.3.0=qt* - git =2.45.2 # [win] - make =4.3 # [win] - ipywidgets =8.1.3 diff --git a/tests/test_outdated.py b/tests/test_outdated.py index 1062b44c..2a806557 100644 --- a/tests/test_outdated.py +++ b/tests/test_outdated.py @@ -39,7 +39,8 @@ class Package: # noqa: D101 allowed_outdated: set[str] = { - "matplotlib", # 3.9.0 won't download for some reason + "matplotlib", # 3.9.0 is just in RC + "vtk", # 9.3.1 is out but mayavi needs to be updated } packages: list[Package] = [] From baf9bde4fd99f9c5620ce61a4f302fedfd464725 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Tue, 9 Jul 2024 11:24:21 -0400 Subject: [PATCH 30/35] FIX: Good enough --- recipes/mne-python/construct.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index b1c14bbd..7bf827aa 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -86,7 +86,7 @@ specs: - mne-lsl =1.4.0 - autoreject =0.4.3 - mne-kit-gui =1.2.0 - - mayavi =4.8.2=pyside6_*_204 + - mayavi =4.8.2=pyside6_* - traitsui =8.0.0 - pyface =8.0.0=*_1 - pyriemann =0.6 From 3a2994e85a0fbc151571f763050ac8b5ee70691a Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Tue, 9 Jul 2024 11:25:43 -0400 Subject: [PATCH 31/35] FIX: Not RC --- recipes/mne-python/construct.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index 7bf827aa..63e5585c 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -150,7 +150,7 @@ specs: # Viz # matplotilb is just matplotlib-base, tornado, and pyqt # https://github.com/conda-forge/matplotlib-feedstock/blob/main/recipe/meta.yaml - - matplotlib-base =3.9.0 + - matplotlib-base =3.8.4 - tornado =6.4.1 - pyside6 =6.7.2=*_1 - qt6-main =6.7.2 From c33ff9949bc9e579071ae5cf61cb37371a82ce7d Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Tue, 9 Jul 2024 11:53:49 -0400 Subject: [PATCH 32/35] FIX: Maybe? --- .github/workflows/build.yml | 2 +- recipes/mne-python/construct.yaml | 16 ++++++------- tests/test_json_versions.py | 40 ++++++++++++++----------------- 3 files changed, 27 insertions(+), 31 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index df14d785..580b69c5 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -154,7 +154,7 @@ jobs: with: qt: true pyvista: false - - run: conda list && conda remove -y qt-main + - run: source "${MNE_ACTIVATE}" && conda list && conda remove -y qt-main - run: ./tools/check_installation.sh test_linux: diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index 63e5585c..fed39c70 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -82,7 +82,7 @@ specs: - mne-rsa =0.9.1 - mne-ari =0.1.2 - mne-icalabel =0.6.0 - - mne-gui-addons =0.1.0=*_1 + - mne-gui-addons =0.1=*_1 - mne-lsl =1.4.0 - autoreject =0.4.3 - mne-kit-gui =1.2.0 @@ -142,8 +142,6 @@ specs: # various biological signals (ECG, EOG, EMG, …) - neurokit2 =0.2.9 - mnelab =0.9.1 - # GitHub client, https://cli.github.com - - gh =2.52.0 # NeuroSpin needs the following - questionary =2.0.1 - pqdm =0.2.0 @@ -159,8 +157,6 @@ specs: - seaborn =0.13.2 - plotly =5.22.0 - vtk =9.3.0=qt* - - git =2.45.2 # [win] - - make =4.3 # [win] - ipywidgets =8.1.3 - pyvista =0.44.0 - pyvistaqt =0.11.1 @@ -168,11 +164,9 @@ specs: - trame-vtk =2.8.9 - trame-vuetify =2.6.1 - termcolor =2.4.0 - - pyobjc-core =10.3.1 # [osx] - - pyobjc-framework-Cocoa =10.3.1 # [osx] - - pyobjc-framework-FSEvents =10.3.1 # [osx] - defusedxml =0.7.1 # Development + - gh =2.52.0 - setuptools_scm =8.1.0 - pytest =8.2.2 - pytest-cov =5.0.0 @@ -206,6 +200,12 @@ specs: - sphinx-copybutton =0.5.2 - sphinxcontrib-youtube =1.4.1 - intersphinx-registry =0.2406.4 + # OS-specific + - git =2.45.2 # [win] + - make =4.3 # [win] + - pyobjc-core =10.3.1 # [osx] + - pyobjc-framework-Cocoa =10.3.1 # [osx] + - pyobjc-framework-FSEvents =10.3.1 # [osx] condarc: channels: - conda-forge diff --git a/tests/test_json_versions.py b/tests/test_json_versions.py index 1aaacf7e..d85f8ef8 100644 --- a/tests/test_json_versions.py +++ b/tests/test_json_versions.py @@ -1,5 +1,6 @@ # Read the JSON and YAML and make sure the version + build match +import fnmatch import json import os import pathlib @@ -34,22 +35,20 @@ del params # Extract versions from construct.yaml -mne_package_names = ("mne", "mne-installer-menus") # the most important ones! want_versions = {} - for spec in specs: - if " " not in spec: # only include those where we specify a version + if " =" not in spec or spec.count("=") < 2: continue package_name, package_version_and_build = spec.split(" ") - if package_name in mne_package_names: - package_version = package_version_and_build.split("=")[1] - package_build = ( - package_version_and_build.split("=")[-1].replace("*", "").replace("_", "") - ) - want_versions[package_name] = { - "version": package_version, - "build_number": package_build, - } + package_version = package_version_and_build.split("=")[1] + package_build = package_version_and_build.split("=")[-1] + want_versions[package_name] = { + "version": package_version, + "build_string": package_build, + } +for name in ("mne", "mne-installer-menus"): # the most important ones! + assert name in want_versions, f"{name} missing from want_versions (build str error)" +assert len(want_versions) > 2, len(want_versions) # more than just the two above # Extract versions from created environment fname = dir_ / f"MNE-Python-{installer_version}-{sys_name}{sys_ext}.env.json" @@ -57,17 +56,14 @@ env_json = json.loads(fname.read_text(encoding="utf-8")) got_versions = dict() for package in env_json: - if package["name"] in mne_package_names: - got_versions[package["name"]] = { - "version": str(package["version"]), - "build_number": str(package["build_number"]), - } -assert len(got_versions) == 2, got_versions + got_versions[package["name"]] = { + "version": str(package["version"]), + "build_string": str(package["build_string"]), + } # check versions -for package_name in mne_package_names: +for package_name, want in want_versions.items(): got = got_versions[package_name] - want = want_versions[package_name] - msg = f"{package_name}: got {repr(got)} != want {repr(want)}" - assert got == want, msg + assert got["version"] == want["version"], msg + assert fnmatch.fnmatch(got["build_string"], want["build_string"]), msg From 15fcc4722a54df41fd51815bff066e346d2773ce Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Tue, 9 Jul 2024 13:06:51 -0400 Subject: [PATCH 33/35] FIX: Fixes --- .github/workflows/build.yml | 2 +- recipes/mne-python/construct.yaml | 2 +- tests/test_gui.py | 13 +++++++------ 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 580b69c5..b0b18240 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -154,7 +154,6 @@ jobs: with: qt: true pyvista: false - - run: source "${MNE_ACTIVATE}" && conda list && conda remove -y qt-main - run: ./tools/check_installation.sh test_linux: @@ -221,6 +220,7 @@ jobs: qt: true pyvista: false - run: ./tools/check_installation.sh + timeout-minutes: 5 # < 2 min even on Windows # Release release: diff --git a/recipes/mne-python/construct.yaml b/recipes/mne-python/construct.yaml index fed39c70..726a421c 100644 --- a/recipes/mne-python/construct.yaml +++ b/recipes/mne-python/construct.yaml @@ -85,7 +85,7 @@ specs: - mne-gui-addons =0.1=*_1 - mne-lsl =1.4.0 - autoreject =0.4.3 - - mne-kit-gui =1.2.0 + - mne-kit-gui =1.2.0=*_2 - mayavi =4.8.2=pyside6_* - traitsui =8.0.0 - pyface =8.0.0=*_1 diff --git a/tests/test_gui.py b/tests/test_gui.py index a209d3ba..9329b277 100644 --- a/tests/test_gui.py +++ b/tests/test_gui.py @@ -56,9 +56,10 @@ from pyface.api import GUI # noqa import mne_kit_gui # noqa -os.environ["_MNE_GUI_TESTING_MODE"] = "true" -gui = GUI() -gui.process_events() -ui, frame = mne_kit_gui.kit2fiff() -assert not frame.model.can_save -ui.dispose() +if sys.platform != "darwin": # can be problematic on qt6 on macOS + os.environ["_MNE_GUI_TESTING_MODE"] = "true" + gui = GUI() + gui.process_events() + ui, frame = mne_kit_gui.kit2fiff() + assert not frame.model.can_save + ui.dispose() From f675e5b6963a61074c0108c780821e0c348beed4 Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Tue, 9 Jul 2024 13:41:39 -0400 Subject: [PATCH 34/35] TST: Ping From 9f6e1d149b6cdbf091534118b79ea2974b55364f Mon Sep 17 00:00:00 2001 From: Eric Larson Date: Tue, 9 Jul 2024 15:03:35 -0400 Subject: [PATCH 35/35] FIX: sip is from pyqt --- tests/test_dev_installed.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/test_dev_installed.py b/tests/test_dev_installed.py index b0806fe7..661ac7a1 100644 --- a/tests/test_dev_installed.py +++ b/tests/test_dev_installed.py @@ -27,6 +27,7 @@ if not re.match("mne-[0-9]+", dep) # conda still on PyQt5 and not dep.startswith("PyQt6") + and not dep.startswith("sip-") # and not on conda-forge yet and not dep.startswith("sphinxcontrib-towncrier") and not dep.startswith("pytest-8") # dev requires pytest >= 8.0 but stable uses < 8