jonescompneurolab / hnn-core

Simulation and optimization of neural circuits for MEG/EEG source estimates
https://jonescompneurolab.github.io/hnn-core/
BSD 3-Clause "New" or "Revised" License
54 stars 52 forks source link

[MAINT] Remove conda from CI Linux Workflows #794

Closed kmilo9999 closed 3 months ago

kmilo9999 commented 3 months ago

The Linux build in the CI is failing because conda is installing a version of neuron without MPI support. Removing conda solves this issue for the linux CI workflow.

Solves #780

codecov-commenter commented 3 months ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 92.49%. Comparing base (819f4f4) to head (9a94859). Report is 63 commits behind head on master.

:exclamation: Current head 9a94859 differs from pull request most recent head 1b454ea

Please upload reports for the commit 1b454ea to get more accurate results.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #794 +/- ## ========================================== + Coverage 92.33% 92.49% +0.16% ========================================== Files 27 27 Lines 5059 5343 +284 ========================================== + Hits 4671 4942 +271 - Misses 388 401 +13 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

ntolley commented 3 months ago

Looks like 3.11 is failing with the same error as 3.12 mentioned in #796 :face_with_diagonal_mouth:

kmilo9999 commented 3 months ago

Looks like 3.11 is failing with the same error as 3.12 mentioned in #796 🫤

I believe the test hnn_core/tests/test_parallel_backends.py:test_mpi_failure fails on Python versions 3.9, 3.10, and 3.11 across all runners

kmilo9999 commented 3 months ago

@gtdang @ntolley @jasmainak The reason build-python 3.9-3.11 fails it's because It appears that NumPy 2.0.0 was released last week, and they have removed the deprecated function np.in1d. This function is used in multiple parts of our project image What should be the next steps? It doesnt fail inpython 3.8 because it uses Numpy 1.94 Numpy 2.0.0 supports python versions 3.9-3.12.

kmilo9999 commented 3 months ago

@gtdang @ntolley @jasmainak It seems 3.11 and 3.12 fail at the same point, but I can take care of it on another PR. This one works on 3.8, 3.9 and 3.10. Please review it.

jasmainak commented 3 months ago

Btw, in mne-python etc., we make our CIs fail if there are deprecation warnings ... it catches these issues early.

jasmainak commented 3 months ago

Looks good. What is your thought on two separate runner scripts vs a single one? A common code path (with if-else in appropriate places) would reduce likelihood of bugs ...

kmilo9999 commented 3 months ago

@gtdang @ntolley @jasmainak I removed the linux_unit_tests.yml, and I put linux and mac workflows in the same file with conditionals around the required steps for each OS. Please review.

jasmainak commented 3 months ago

Beautiful, thanks @kmilo9999 !!