mne-tools / mne-python

MNE: Magnetoencephalography (MEG) and Electroencephalography (EEG) in Python
https://mne.tools
BSD 3-Clause "New" or "Revised" License
2.73k stars 1.33k forks source link

RFC: splitting simulation code into separate package #12980

Open drammock opened 23 hours ago

drammock commented 23 hours ago

Hi @mne-tools/mne-python-steering-committee

@ctrltz and colleagues have been doing some work on simulating MNE objects (above and beyond what we currently support), in the new https://github.com/ctrltz/meegsim package. They have expressed interest in incorporating their work into MNE-Python, and after a few discussions with @larsoner @agramfort and @britta-wstnr we've settled on a tentative plan to "spin off" our existing simulation code into a new package (mne-simulation or so) similar to what was done for connectivity a few years ago, and then give @ctrltz and colleagues write-access to that repo so they can add their code and also have a much smaller/faster test/CI suite. Existing simulation code would be deprecated in MNE-Python release 1.9 and removed in 1.10.

This issue is your chance to weigh in on whether you think it best to:

  1. follow the above plan
  2. keep existing simulation code in MNE-Python, and add new code into the main repo
  3. keep existing simulation code in MNE-Python, and don't add the new MEEGsim functionality
  4. something else (?)
drammock commented 23 hours ago

one possible downside to the "spinoff" approach that I've just thought of, is the risk of losing git history (edit: and hence contributor credit) for the existing code. I think there's probably a way to preserve it, via something like:

mscheltienne commented 23 hours ago

+1, glad someone is working on simulation!

ctrltz commented 23 hours ago

Thank you, @drammock! Tagging @minajamshidi and @astudenova to keep them in the loop.

sappelhoff commented 22 hours ago

+1 to spin off under mne-tools/mne-simulation!

larsoner commented 22 hours ago

+1 for spin off with some git history magic suggested by @drammock . There is probably a way to do it that preserves committer and date and such but mangles the commit numbers (which is okay)

hoechenberger commented 22 hours ago

Go for it πŸ‘

cbrnr commented 21 hours ago

Also πŸ‘ for spin off!

britta-wstnr commented 21 hours ago

+1 from me, too. Really excited about the cool options that @ctrltz, @minajamshidi, and @astudenova support in MEEGsim! 😍

adam2392 commented 18 hours ago

+1 supporting simulation would help so much research in this space.