Skip to content

ENH: Add overrides= parameter to read_raw_brainvision for BIDS header repair - #13884

Merged
drammock merged 10 commits into
mne-tools:mainfrom
bruAristimunha:feat/brainvision-units-fallback
May 5, 2026
Merged

drammock merged 10 commits into
mne-tools:mainfrom
bruAristimunha:feat/brainvision-units-fallback

Conversation

@bruAristimunha

@bruAristimunha bruAristimunha commented May 3, 2026 •

Copy link
Copy Markdown
Contributor

Adds opt-in overrides=dict | None to read_raw_brainvision for non-spec .vhdr files. Closes mne-tools/mne-bids#1598. Mirrors read_raw_edf(units=...) (#11099).

Nine keys cover failure modes with no escape hatch on main:

main error Override
FileNotFoundError (renamed .eeg) data_fname
NoOptionError / FileNotFoundError (missing MarkerFile= or .vmrk) marker_fname (path or False)
NoOptionError on NumberOfChannels= / SamplingInterval= / DataOrientation= / DataFormat= / BinaryFormat= n_channels, sfreq, data_orientation, data_format, binary_format
RuntimeError("Missing channel units") (truncated [Channel Infos]) units_fallback
Wrong channel labels ch_names

Each applied override is logged at INFO; None / {} preserves current behavior.

Spec note

The nine keys cover every spec-required header field per the BrainVision Core Data Format 1.0 spec (Brain Products GmbH, Document Version 2.5, 2019-12-12).

One default-behavior change is intentional and brings the reader closer to the spec it claims to read: a header without MarkerFile= (or with an empty value) now reads with no annotations instead of raising NoOptionError. From §1 General Statements:

  1. An EEG recording consists of three files: the header file, the marker file and the EEG data file.
    a. Header file and EEG data file are mandatory.
    b. Marker file is optional.

i.e., on main the reader rejects spec-compliant headers. The override-supplied path is unaffected; marker_fname=False still works.

Tests

53 brainvision tests pass: pre-existing coverage + table-driven override validation, a 7-case parametrized missing-header-key recovery (one per spec-required key), default-unchanged guard, file-path / units-fallback / empty-MarkerFile= cases.

Affected dataset list in mne-tools/mne-bids#1519; open design questions in mne-tools/mne-bids#1598.

cc @cbrnr @sappelhoff @hoechenberger @drammock @larsoner

… repair

Adds an opt-in dict parameter for reading non-spec-compliant .vhdr files
where the header contradicts the actual layout (e.g. renamed BIDS
siblings, missing MarkerFile=, truncated [Channel Infos]). Six keys:
data_fname, marker_fname, n_channels, sfreq, ch_names, units_fallback.
Each applied override emits a RuntimeWarning; unknown keys raise
ValueError. None / {} keep stock behavior. Mirrors the
read_raw_edf(units=...) precedent.

Closes mne-tools/mne-bids#1598.
Reduce 7 test functions / 18 scenarios down to 5 functions / 10
scenarios by collapsing the marker_fname split, dropping the
absolute-path parametrize on data_fname, dropping the truncation-warn
edge case, and trimming the validation parametrize. Add an explicit
test_overrides_default_unchanged that asserts overrides=None and
overrides={} produce identical (nchan, sfreq, ch_names, meas_date,
annotation count) to the no-overrides call.

Verified manually with warnings.simplefilter('error') that the default
read path emits zero warnings.
Comment thread mne/io/brainvision/brainvision.py Outdated
Comment thread mne/io/brainvision/brainvision.py Outdated
Comment thread mne/utils/docs.py Outdated
…logger.info

Fixes test_docdict_order CI failure (key was alphabetically misplaced
between brain_kwargs and brain_update). Also addresses review feedback:
override warnings become logger.info messages that show original vs.
override values, and the docstring uses a definition list.
@bruAristimunha

Copy link
Copy Markdown
Contributor Author

@scott-huberty, @larsoner, @drammock, if we merge this, this will unlock many fixes on the mne-bids, and will not even need a PR in mne-bids :)

btw, @larsoner, thank you for point me extra_parameter of the read at mne :)

…all spec-required keys

The override branches called cfg.get(..., key) purely to log the original
header value before announcing the override; that lookup raised
NoOptionError exactly in the case the override was meant to recover from.
Wrap the log-only lookups (DataFile, MarkerFile, NumberOfChannels) and the
required SamplingInterval lookup in _aux_hdr_info so the override actually
takes effect when the header lacks the key.

Extend overrides to every spec-required header key with three new options:
data_orientation ([Common Infos] DataOrientation), data_format ([Common
Infos] DataFormat), and binary_format ([Binary Infos] BinaryFormat).
Treat a missing or empty MarkerFile= entry as "no markers" (per the BV
Core Data Format spec, MarkerFile= is optional).

Collapse the six per-key override+log+fallback blocks behind one _hdr_get
helper, and refactor _validate_overrides into three dispatch tables
(type / range / enum) plus the two genuinely irregular cases
(marker_fname=False sentinel, ch_names per-element + uniqueness).

Tests: parametrize test_overrides_recover_missing_header_keys across all
seven file-/header-key keys; add validation cases for the three new enum
keys; add test_empty_marker_file_means_no_markers for the spec-compliant
empty-MarkerFile= path.
The previous fix tolerated a missing SamplingInterval= header by parsing
NaN inside _aux_hdr_info and re-raising NoOptionError from _get_hdr_info
when no sfreq override was supplied. Replace that sentinel dance with an
explicit sfreq_override parameter on _aux_hdr_info: when set, skip the
cfg lookup entirely; when not set, the natural NoOptionError surfaces.
The second _aux_hdr_info call (impedance parsing in __init__) reuses the
resolved info['sfreq'] so it never re-parses the missing key.

@larsoner larsoner left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Okay for me and failures are unrelated. @scott-huberty do you want to look?

@scott-huberty scott-huberty left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Kind of a big diff so I did not review everything. and I am not very familiar with this module, but I have left a few comments!

Comment thread mne/io/brainvision/tests/test_brainvision.py Outdated
Comment thread mne/io/brainvision/brainvision.py
Comment thread mne/io/brainvision/brainvision.py Outdated
- Defensive sfreq extraction: catch NoSectionError/NoOptionError in
  _aux_hdr_info; raise an informative RuntimeError when neither cfg nor
  overrides['sfreq'] supply a value.
- Richer override log: report original cfg sfreq alongside override
  value (or note that the header was unparseable).
- Flatten _OVERRIDES_VALID_KEYS into a single set.
- Replace overrides=None round-trip test with an inspect.signature
  default check; keep the empty-dict equivalence test as its own case.
Comment on lines +733 to +735
"""``overrides={}`` matches the no-overrides read exactly."""
baseline = read_raw_brainvision(vhdr_path)
raw = read_raw_brainvision(vhdr_path, overrides={})

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is fine as-is, but just want to call attention to mne.utils.object_diff which should be able to diff Raw files. Might be overkill here (vs. 5 assert statements) but can be nice if you want to compare more attrs

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ah, nice!

@drammock
drammock enabled auto-merge (squash) May 5, 2026 21:35
When the MarkerFile= path declared in a .vhdr does not exist, fall back
to the co-located <stem>.vmrk and warn; if no sibling exists, warn and
read without annotations instead of raising FileNotFoundError.
auto-merge was automatically disabled May 5, 2026 21:44

Head branch was pushed to by a user without write access

@bruAristimunha

Copy link
Copy Markdown
Contributor Author

hey @drammock, @scott-huberty and @larsoner!

I am so sorry for my last commit. I was just planning to do another PR, but then by accident here, but as was just 5 line, if you can forgive, and review this very small detail, i think i am done with PR at mne-python about the brainvsion.

@drammock
drammock enabled auto-merge (squash) May 5, 2026 21:59
@drammock
drammock merged commit b5cfff0 into mne-tools:main May 5, 2026
31 checks passed
larsoner added a commit to larsoner/mne-python that referenced this pull request May 6, 2026
* upstream/main:
  ENH: Add overrides= parameter to read_raw_brainvision for BIDS header repair (mne-tools#13884)
harrisonritz added a commit to harrisonritz/mne-python that referenced this pull request May 27, 2026
* [pre-commit.ci] pre-commit autoupdate (mne-tools#13646)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>

* Fix and extend anonymize_info (mne-tools#13647)

* Fix epochs.plot() scrollbar issue (mne-tools#13654)

* ENH: Add optional channel name overlay to plot_alignment (mne-tools#13570)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Daniel McCloy <[email protected]>

* Fix docstrings for get_data() (mne-tools#13652)

* DOC: Add detail to make_watershed_bem volume parameter (mne-tools#13658)

* [pre-commit.ci] pre-commit autoupdate (mne-tools#13663)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>

* update maintainers lists (mne-tools#13631)

* Fixes make_scalp_surfaces (mne-tools#13024)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Marijn van Vliet <[email protected]>
Co-authored-by: Eric Larson <[email protected]>

* DOC: Add pybvrf [skip azp] [skip actions] (mne-tools#13665)

* Expose bem submodule (mne-tools#13669)

* Rename `Epochs.reset_drop_log_selection()` to `Epochs.reset_index()` (mne-tools#13675)

* MAINT: Work around NumPy deprecation (mne-tools#13677)

* [pre-commit.ci] pre-commit autoupdate (mne-tools#13678)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>

* Allow reading alternative nasion label (Nz) from snirf file (mne-tools#13672)

Co-authored-by: Daniel McCloy <[email protected]>

* use a lockfile for "old" CI job (mne-tools#13490)

Co-authored-by: Carina Forster <[email protected]>
Co-authored-by: Thomas S. Binns <[email protected]>
Co-authored-by: Scott Huberty <[email protected]>
Co-authored-by: Erica Peterson <[email protected]>
Co-authored-by: Eric Larson <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Fix bad cross-ref syntax (mne-tools#13690)

* Doc- clarify return types as instance of original type (mne-tools#13674)

Co-authored-by: Marijn van Vliet <[email protected]>

* update partner institution list (mne-tools#13668)

* MAINT: Update code credit (mne-tools#13709)

Co-authored-by: Eric Larson <[email protected]>

* [pre-commit.ci] pre-commit autoupdate (mne-tools#13716)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>

* DOC: clarify index mismatch in Epochs.drop when epochs are auto-dropped (mne-tools#13688)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Thomas S. Binns <[email protected]>
Co-authored-by: Daniel McCloy <[email protected]>

* ENH: support per-vertex opacity in 3D overlays (mne-tools#13706)

Co-authored-by: Eric Larson <[email protected]>

* FIX: Spelling [ci skip]

* Fix generation of lockfile for old job (mne-tools#13724)

* eyetrack should not count as picks=data (mne-tools#13723)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Scott Huberty <[email protected]>

* BUG: prevent NaNs in layered overlay compositing when resulting alpha is zero (mne-tools#13714)

Co-authored-by: Marijn van Vliet <[email protected]>

* Added HEDAnnotations (mne-tools#13059)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Daniel McCloy <[email protected]>
Co-authored-by: Bru <[email protected]>
Co-authored-by: Stefan Appelhoff <[email protected]>

* [dependabot]: Bump the actions group with 2 updates (mne-tools#13728)

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>
Co-authored-by: Eric Larson <[email protected]>

* [pre-commit.ci] pre-commit autoupdate (mne-tools#13734)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>
Co-authored-by: Eric Larson <[email protected]>

* Raising meaningful warnings/errors for interpolate_bads, when supplie… (mne-tools#13518)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* BUG: Fix bug with default (mne-tools#13744)

* DOC: document first_samp behavior after crop and RawArray workaround (mne-tools#13685)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* FIX: do not print dev_head_t if not available (mne-tools#13741)

Co-authored-by: Eric Larson <[email protected]>

* FIX: Link [ci skip]

* Update name [ci skip]

* MAINT: cleanup Python 3.9 compat from __future__ import annotations (mne-tools#13749)

Co-authored-by: Marijn van Vliet <[email protected]>

* FIX: Handle hidden annotations during deletion in mpl plot (mne-tools#13703)

* ENH: Log scaling better (mne-tools#13758)

* [pre-commit.ci] pre-commit autoupdate (mne-tools#13762)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>
Co-authored-by: Eric Larson <[email protected]>

* FORWARD: assert invariant for unreachable rref branch in _lead_dots (mne-tools#13764)

* Improve handling of dropped epochs in ica.plot_properties (mne-tools#13746)

* Support mixed hed annotations, concat and solve version registration (mne-tools#13736)

* ENH: compute CSD directly for upper-triangle channel pairs in Fourier/multitaper (mne-tools#13719)

* Extend plot_csd support to SEEG, ECoG, and DBS channel types (mne-tools#13713)

Co-authored-by: Thomas S. Binns <[email protected]>
Co-authored-by: Marijn van Vliet <[email protected]>

* Add example for Python/R interoperability using mass univariate t-test (mne-tools#13729)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Eric Larson <[email protected]>
Co-authored-by: Daniel McCloy <[email protected]>

* [BUG] `IndexError` in `set_montage()` for MEG+EEG recordings when digitization is skipped (mne-tools#13700)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* FIX: remap lowpass <= 0 to Nyquist in GDF/EDF reader (mne-tools#13769)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* FIX: correct spacing attribute in SourceMorph when src_to is provided (mne-tools#13687)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* [pre-commit.ci] pre-commit autoupdate (mne-tools#13779)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>
Co-authored-by: Eric Larson <[email protected]>

* fix bad xrefs in changelog (mne-tools#13783)

* DOC: fix invalid cross-reference in 13700 changelog entry (mne-tools#13785)

* FIX: raise clear ValueError when no ECG events found in create_ecg_ep… (mne-tools#13771)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Daniel McCloy <[email protected]>

* ENH: Add native save and read support for SSD (mne-tools#13718)

Co-authored-by: Thomas S. Binns <[email protected]>

* ENH: Add variance regularization to F-statistic in f_oneway (mne-tools#13698)

Co-authored-by: Daniel McCloy <[email protected]>

* [pre-commit.ci] pre-commit autoupdate (mne-tools#13802)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>

* ENH: allow per-channel colors in raw.plot via channel name dict keys (mne-tools#13765)

* Fix top and bottom clipping in raw.plot() (mne-tools#13787)

* MAINT: Update code credit (mne-tools#13805)

* FIX: short-circuit n_jobs=None to n_jobs=1 without Parallel setup (mne-tools#13777)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Daniel McCloy <[email protected]>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* Replacing abstractclassmethod with abstractmethod (mne-tools#13806)

* ENH: expose font_file in Brain.add_text (mne-tools#13778)

Co-authored-by: Daniel McCloy <[email protected]>
Co-authored-by: Marijn van Vliet <[email protected]>

* ENH: add cmap parameter to Evoked.animate_topomap (mne-tools#13756)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* MAINT: Install SciPy pre (mne-tools#13807)

* ENH: Replace custom _whosmat_hdf5 with pymatreader.whosmat (mne-tools#13753)

* MAINT: Make sys_info more robust (mne-tools#13810)

* MAINT: Remove tomli, tomlsort, and ruff from `test` group (mne-tools#13809)

* BUG: Fix bug with fwd.info["dev_head_t"] setting (mne-tools#13619)

* ENH: Add initial BCI2000 .dat reader (preload-only) (mne-tools#13699)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Eric Larson <[email protected]>

* Add pybispectra as related software (mne-tools#13812)

* DOC: Fix type annotation for order parameter in Epochs.plot() (mne-tools#13639)

Co-authored-by: Daniel McCloy <[email protected]>
Co-authored-by: Scott Huberty <[email protected]>

* [dependabot]: Bump the actions group with 2 updates (mne-tools#13817)

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>

* fixed some info fields in MEG interpolation across sensor types using… (mne-tools#13759)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* ENH: Add support for plotting ICA source timecourses in Report.add_ica (mne-tools#13697)

* FIX: correct sensor name ordering in plot_topomap when using Info object (mne-tools#13686)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* MAINT: Update dependency specifiers (mne-tools#13814)

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Thomas S. Binns <[email protected]>

* [pre-commit.ci] pre-commit autoupdate (mne-tools#13818)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>

* MAINT: Update code credit [ci skip] (mne-tools#13823)

Co-authored-by: Eric Larson <[email protected]>

* Update values to int64 (mne-tools#13548)

Co-authored-by: Eric Larson <[email protected]>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Daniel McCloy <[email protected]>

* FIX: Installer links etc [ci skip]

* TST: Doc

* FIX: correct mode parameter in get_point_spread and get_cross_talk (mne-tools#13754)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* DOC: Add epoch quality example (mne-tools#13710)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Thomas S. Binns <[email protected]>

* Change syncing of dependencies with `README` (mne-tools#13832)

* DOC: Fix changelog [circle deploy] (mne-tools#13833)

Co-authored-by: Thomas S. Binns <[email protected]>

* Exclude private submodules (e.g., _edf) from Credits page (mne-tools#13673)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* BUG: Fix bug with backward compat [circle deploy] (mne-tools#13835)

* Fix bug with credit [circle deploy] (mne-tools#13841)

* ENH: broaden OPM coil handling for colocated topomaps (mne-tools#13825)

* DOC: Add artifact-cleaning note to epoch quality example. (mne-tools#13827)

* [pre-commit.ci] pre-commit autoupdate (mne-tools#13839)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>
Co-authored-by: Eric Larson <[email protected]>

* FIX: Ref [skip azp] [skip actions]

* BUG: Fix bug with logging level (mne-tools#13843)

* fix env var in actions (mne-tools#13844)

Co-authored-by: Scott Huberty <[email protected]>

* TST: Add regression coverage for OPM topomap grouping via `plot_joint()` and `ICA` (mne-tools#13842)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* Customize annotation colors (mne-tools#13838)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* DOC: Remove invalid ndarray option from colormap docstrings (mne-tools#13797)

* Fix versionadded for annotation_colors (mne-tools#13853)

* [dependabot]: Bump the actions group with 2 updates (mne-tools#13852)

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>

* [pre-commit.ci] pre-commit autoupdate (mne-tools#13854)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>

* MAINT: Links [circle deploy] [skip azp] [skip actions]

* MAINT: add OPM overlap grouping helper (mne-tools#13847)

* FIX: Correct fNIRS interpolation with reordered picks (mne-tools#13856)

* MAINT: Modernize numpydoc checks (mne-tools#13865)

* Allow concatenating `BaseRaw` objects (mne-tools#13263)

Co-authored-by: Copilot <[email protected]>
Co-authored-by: Eric Larson <[email protected]>

* Add dark theme to Matplotlib-based raw.plot (mne-tools#13861)

Co-authored-by: Copilot <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* FIX: Check [ci skip]

* FIX: Sets [ci skip]

* Update towncrier change type descriptions (mne-tools#13829)

* fix numpydoc (missed YD01 ignore) (mne-tools#13868)

* FIX: correct label orientation for 0-90 deg nodes in plot_connectivity_circle (mne-tools#13855)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Daniel McCloy <[email protected]>

* [dependabot]: Bump the actions group with 3 updates (mne-tools#13871)

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>

* [pre-commit.ci] pre-commit autoupdate (mne-tools#13873)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>

* Add preload keyward argument to Inst.load_data() method call (mne-tools#13858)

* MAINT: Make test dir read-only (mne-tools#13872)

* BUG: improve FreeSurfer error message when executable not found (mne-tools#13874)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Eric Larson <[email protected]>

* add CI description to contributing guide (mne-tools#13837)

Co-authored-by: Daniel McCloy <[email protected]>

* Fix grammar [ci skip] (mne-tools#13881)

* FIX: handle missing __version__ in check_version (mne-tools#13870)

Co-authored-by: Claude Sonnet 4.6 <[email protected]>

* apply diataxis to tutorials/inverse/80_brainstorm_phantom_elekta.py (mne-tools#13584)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* add AI policy (mne-tools#13883)

* MAINT: Switch to pip for macOS and minimal jobs (mne-tools#13882)

* MAINT: Update code credit (mne-tools#13878)

* ENH:  Allow passing source detector distances to beer lambert law (mne-tools#13875)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* MAINT: Update for vtk deprecation (mne-tools#13886)

* ENH: Add overrides= parameter to read_raw_brainvision for BIDS header repair (mne-tools#13884)

* Fix bug with ica.plot_properties (mne-tools#13885)

* Fix `picks` being ignored in `Epochs.apply_function()` (mne-tools#13894)

* Update describing changes in contributing guide (mne-tools#13895)

* Add Zuna to related software list (mne-tools#13849)

Co-authored-by: Daniel McCloy <[email protected]>

* [dependabot]: Bump github/codeql-action from 4.35.2 to 4.35.3 in the actions group (mne-tools#13897)

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>
Co-authored-by: Eric Larson <[email protected]>

* DOC: Fix apply_function shape description for Epochs (mne-tools#13891)

Co-authored-by: Eric Larson <[email protected]>

* Raise warning and errors when np.nan provided to mne.stats.permutation_t_test(). (mne-tools#13813)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Erica R Peterson <[email protected]>

* MAINT: Update dependency specifiers (mne-tools#13899)

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Eric Larson <[email protected]>

* [dependabot]: Bump github/codeql-action from 4.35.3 to 4.35.4 in the actions group (mne-tools#13901)

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>

* [pre-commit.ci] pre-commit autoupdate (mne-tools#13902)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>

* MAINT: Remove workaround for old PySide6 (mne-tools#13900)

* Add spherical montages (mne-tools#13903)

* [dependabot]: Bump the actions group with 2 updates (mne-tools#13918)

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>

* [pre-commit.ci] pre-commit autoupdate (mne-tools#13919)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>

* MAINT: Update dependency specifiers (mne-tools#13916)

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Eric Larson <[email protected]>

* BUG: set_eeg_reference list ch_type now applies per-type CAR by default (mne-tools#13920)

* FIX: Avoid iteration errors caused by None when reading Nihon Kohden .LOG files (mne-tools#13915)

* Fix drop_log dtype (mne-tools#13923)

* Doc: add guidance on taking over a stale pull request (mne-tools#13877)

Co-authored-by: Thomas S. Binns <[email protected]>
Co-authored-by: Daniel McCloy <[email protected]>

* FIX: Make set_eeg_reference working with a string for a channel name (mne-tools#13917)

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: mne[bot] <[email protected]>
Co-authored-by: Clemens Brunner <[email protected]>
Co-authored-by: Aman Srivastava <[email protected]>
Co-authored-by: Daniel McCloy <[email protected]>
Co-authored-by: Himanshu Mahor <[email protected]>
Co-authored-by: Scott Huberty <[email protected]>
Co-authored-by: Victor Férat <[email protected]>
Co-authored-by: Marijn van Vliet <[email protected]>
Co-authored-by: Eric Larson <[email protected]>
Co-authored-by: Aniket <[email protected]>
Co-authored-by: Carina Forster <[email protected]>
Co-authored-by: Thomas S. Binns <[email protected]>
Co-authored-by: Erica Peterson <[email protected]>
Co-authored-by: Horizon_Architect_07 <[email protected]>
Co-authored-by: Pragnya <[email protected]>
Co-authored-by: Benedikt Ehinger <[email protected]>
Co-authored-by: Kay Robbins <[email protected]>
Co-authored-by: Bru <[email protected]>
Co-authored-by: Stefan Appelhoff <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Johannes Herforth <[email protected]>
Co-authored-by: Hansuja <[email protected]>
Co-authored-by: Simon Kern <[email protected]>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Akhilesh <[email protected]>
Co-authored-by: CHH <[email protected]>
Co-authored-by: Teon L Brooks <[email protected]>
Co-authored-by: Lifeng <[email protected]>
Co-authored-by: Kalle Mäkelä <[email protected]>
Co-authored-by: Copilot <[email protected]>
Co-authored-by: Pavel Popov <[email protected]>
Co-authored-by: Ayushi Satodiya <[email protected]>
Co-authored-by: Seth Bashford <[email protected]>
Co-authored-by: Baris <[email protected]>
Co-authored-by: Claude Sonnet 4.6 <[email protected]>
Co-authored-by: Jonas Mago <[email protected]>
Co-authored-by: Bhargav Kowshik <[email protected]>
Co-authored-by: Erica R Peterson <[email protected]>
Co-authored-by: Ben Tang <[email protected]>
Co-authored-by: myd7349 <[email protected]>
Co-authored-by: Michael Straube <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

About the BrainVision file format, being more permissive

4 participants