Skip to content

v1.10.x

v1.10.1 (2026-04-20)

🆕 New features & enhancements

  • Improved performance by caching BIDSPath matches for Maxwell Filter calibration and cross-talk files (#1215 by @larsoner).
  • Improved performance and logging when skipping cached steps (#1216 by @larsoner).

🐛 Bug fixes

  • Fixed a bug where the group average step would errantly write its sensor averaged Evoked plots to the last subject's report. To fix this after-the-fact, delete the derivatives/mne-bids-pipeline/sub-average/ and derivatives/mne-bids-pipeline/sub-<LAST> folders and rerun the pipeline. (#1220 by @larsoner)

v1.10.0 (2026-04-06)

🆕 New features & enhancements

⚠ Behavior changes

  • The pipeline will now raise an error if a loaded SourceSpaces object has a ._subject attribute different from what the pipeline expects / would have used if creating the SourceSpaces anew. (#1056 by @drammock)
  • Maxwell filtering steps now use the union of bad channels across all tasks and runs to help ensure more consistent rank and behavior (#1158 by @larsoner)
  • The path passed to noise_cov callables is no longer the evoked dataset but instead epochs. Note that the epochs have processing="clean" in the BIDSPath. (#1159 by @larsoner)
  • Values within dicts passed to contrasts may now be any sequence (not just lists). (#1197 by @drammock)

🐛 Bug fixes

  • Empty room matching is now done for all sessions (previously only for the first session) for each subject. (#976 by @drammock)
  • noise_cov_method is now properly used for noise covariance estimation from raw data (#1010 by @larsoner)
  • When running the pipeline with mf_filter_chpi enabled (#977 by @drammock and @larsoner):

    1. Emptyroom files that lack cHPI channels will now be processed (for line noise only) instead of raising an error.
    2. cHPI filtering is now performed before movement compensation.
  • Fix bug where the config.proc parameter was not used properly during forward model creation (#1014 by @larsoner)

  • Fix bug where emptyroom recordings containing EEG channels would crash the pipeline during maxwell filtering (#1040 by @drammock)
  • Fix bug where only having mag sensors would crash compute_rank during maxwell filtering or epoching (#1061 and #1069 by @harrisonritz)
  • Improvements to template config file generation (#1074 by @drammock)
  • Fix bug where mf_int_order wasn't passed to maxwell_filter. Added config option for mf_ext_order. (#1092 by @harrisonritz)
  • Sanitize report tags that contain " or ', e.g., for certain metadata contrasts (#1097 by @harrisonritz)
  • sub-average is no longer run when --subject is passed to the pipeline command line interface, allowing easier and more correct single-subject iteration (#1133 by @larsoner)
  • Fix bug where time-weighted head position was not cached properly (#1135 by @larsoner)
  • Fix bug where some config options were unnecessarily passed to steps, possibly leading to unnecessary cache misses (#1152 by @larsoner)
  • Fix bug where the config.data_type channels were not properly picked during ICA fitting, leading to potential errors during ICA application (#1156 by @larsoner)
  • Fix bug where a nonexistent evoked BIDSPath was passed to user-defined noise_cov callables, a path to epochs is now passed instead (#1159 by @larsoner)
  • Fix bug where ICA pre-filtering was only applied to run-1, now filters all runs (#1164 by @Okimoka)
  • Fix bug where runs were not handled properly when a single task was specified but multiple tasks existed in a dataset (#1141 by @larsoner)

📚 Documentation

  • Choose the theme (dark of light) automatically based on the user's operating system setting (#979 by @hoechenberger)
  • Bundle all previously-external JavaScript to better preserve users' privacy (#982 by @hoechenberger)
  • Document the need for offscreen rendering support when running on headless servers (#997 by @drammock)
  • Add more info on test suite installation and running (#1154 by @skjerns)

⚕ Code health and infrastructure