EEGPrep 0.3.0
·
134 commits
to develop
since this release
What's Changed
- Merge pull request #30 from sccn/setup-documentation
Creating documentation and update eegprep functions by @bruAristimunha in #31
- Updating the documentation by @bruAristimunha in #34
- Add Claude Code GitHub Workflow by @arnodelorme in #36
- Fix test cases and improve MATLAB parity by @arnodelorme in #37
- docs: fix quickstart mismatch, add logo, harden CI (closes #40, #41) by @bruAristimunha in #42
- Update Claude Code PR review prompt by @suraj-ranganath in #47
- Add agent workflows and pre-commit checks by @suraj-ranganath in #48
- Add pop_adjustevents GUI parity workflow by @suraj-ranganath in #49
- Use pytest as the test runner by @suraj-ranganath in #51
- Organize EEGPrep around EEGLAB-style layout by @suraj-ranganath in #50
- Add EEGLAB-style cart2topo, pop_reref, and pop_interp parity workflows by @suraj-ranganath in #52
- Add EEGLAB-style main window menu parity by @suraj-ranganath in #53
- Polish EEGPrep GUI startup and menus by @suraj-ranganath in #55
- [GUI] Add pop and File menu actions by @suraj-ranganath in #56
- Use CommonAverageReference consistently in bids_preproc reports by @AmanJaiswal1503 in #57
- Add shared EEGPrep console and GUI workflow fixes by @suraj-ranganath in #58
- Add Ruff and ty CI checks by @suraj-ranganath in #59
- [Phase 1a] Stabilize EEG session contracts by @suraj-ranganath in #68
- [Phase 2.1] Implement pop_rmbase baseline parity by @suraj-ranganath in #70
- [Phase 1b] Add dataset metadata dialogs by @suraj-ranganath in #71
- [Phase 3] Implement ICLabel component workflows by @suraj-ranganath in #69
- [Plot] Implement topography plot foundation by @suraj-ranganath in #72
- Complete Phase 1b File/Edit parity by @suraj-ranganath in #74
- [Phase 2] Complete FIR filtering parity by @suraj-ranganath in #73
- [Phase 3] Implement rejection and component workflows by @suraj-ranganath in #76
- [Phase 4] Add plotting core wrappers by @suraj-ranganath in #75
- Phase 4 PR 2: Add 3D headplot spline/coregistration parity by @suraj-ranganath in #77
- [DIPFIT] Implement source-localization menu surfaces by @suraj-ranganath in #84
- Add Phase 4 time-frequency and statistics workflows by @suraj-ranganath in #85
- Implement STUDY metadata and design workflow by @suraj-ranganath in #89
- [Study] Add packaged help and menu docs by @suraj-ranganath in #87
- Phase 6b: public API and plugin packaging by @suraj-ranganath in #88
- [STUDY] Implement measure precompute workflows by @suraj-ranganath in #91
- Phase 5c STUDY component clustering by @suraj-ranganath in #90
- [Epic] Integrate EEGLAB parity phases 1-4 by @suraj-ranganath in #86
- Phase 6c standalone STUDY integration hardening by @suraj-ranganath in #92
- [EEGBrowser] Implement eegplot browser foundation by @suraj-ranganath in #102
- Implement EEGBrowser Phase 2 UI shell by @suraj-ranganath in #104
- [EEGBrowser] Add marking and rejection callbacks by @suraj-ranganath in #103
- Implement pop_eegplot menu session workflows by @suraj-ranganath in #105
- [EEGBrowser] Integrate rejection workflows by @suraj-ranganath in #107
- Implement advanced EEGBrowser display modes by @suraj-ranganath in #106
- Phase 8: ICLabel extended properties dashboard by @suraj-ranganath in #109
- [EEGBrowser] Complete Phase 7 closeout by @suraj-ranganath in #110
- [STUDY] Complete standalone integration by @suraj-ranganath in #93
- Add extension SDK registry by @suraj-ranganath in #120
- [Extensions] Integrate runtime contributions by @suraj-ranganath in #125
- Add extension governance validation tooling by @suraj-ranganath in #122
- Document external extension workflow by @suraj-ranganath in #121
- [Extensions] Add authoring toolkit examples by @suraj-ranganath in #123
- Build extension manager catalog UX by @suraj-ranganath in #124
- Harden extension closeout coverage by @suraj-ranganath in #126
- [EEGBrowser] Complete eegplot parity by @suraj-ranganath in #111
- [Extensions] Add external extension ecosystem by @suraj-ranganath in #127
- [Session] Fix dataset commits and history progress by @suraj-ranganath in #128
- [Parity] Add core matrix contracts by @suraj-ranganath in #140
- [Parity] Implement statistics package by @suraj-ranganath in #141
- [Parity] Add Phase 2 file channel-location workflows by @suraj-ranganath in #142
- [Parity] Add time-frequency internals by @suraj-ranganath in #143
- [STUDY] Add group-level depth helpers by @suraj-ranganath in #144
- Phase 5: close user-facing option gaps by @suraj-ranganath in #145
- [Parity] Implement Phase 7 long-tail helpers by @suraj-ranganath in #150
- [Parity] Close Phase 8 core parity evidence by @suraj-ranganath in #151
- [PAC] Classify PAC time-frequency helpers by @suraj-ranganath in #153
- [Timefreq] Port correct_mc random-symbol fitting by @suraj-ranganath in #154
- [Timefreq] Add time-warped newtimef helpers by @suraj-ranganath in #155
- [STUDY] Implement long-tail selection helpers by @suraj-ranganath in #156
- [Parity] Add final standalone audit matrix by @suraj-ranganath in #166
- Complete clean_rawdata and FIRFilt parity by @suraj-ranganath in #171
- [ICLabel] Complete viewprops diagnostics parity by @suraj-ranganath in #167
- Add standalone DIPFIT source-localization parity by @suraj-ranganath in #169
- Implement STUDY PAC and LIMO design workflows by @suraj-ranganath in #170
- [Storage] Implement large-dataset storedisk semantics by @suraj-ranganath in #168
- Build standalone EEGPrep Sphinx manual and tutorials by @suraj-ranganath in #172
- [Parity] Close final standalone evidence by @suraj-ranganath in #173
- [Quality] Fix session sync and MNE conversion invariants by @suraj-ranganath in #189
- Fix EEGBrowser visual parity axes by @suraj-ranganath in #130
- [Parity] Complete remaining EEGLAB core gaps by @suraj-ranganath in #152
- [Epic] Complete standalone EEGLAB parity by @suraj-ranganath in #174
- Add agent-friendly EEGPrep CLI by @suraj-ranganath in #176
- [pkg] Move dev tooling out of the wheel and clean dead code (Fable 5 Phase 5) by @suraj-ranganath in #201
- [tests] Make the test suite able to fail (Fable 5 Phase 1) by @suraj-ranganath in #200
- [core] Stop mutating caller EEG and fix ICA sign-flip invariant (Fable 5 Phase 2) by @suraj-ranganath in #202
- [core] Fix correctness bugs, silent failures & misleading contracts (Fable 5 Phase 3) by @suraj-ranganath in #203
- [arch] Kill duplication, fix ownership & layering (Fable 5 Phase 4) by @suraj-ranganath in #204
- [Agents] Replace autoreview skill and fix quality findings by @suraj-ranganath in #177
- Keep GUI responsive during ICA runs by @suraj-ranganath in #190
- Bump torch lockfile resolution to 2.12.0 to clear GHSA-rrmf-rvhw-rf47 by @suraj-ranganath with @Copilot in #191
- [Epic] Fable 5 Findings — whole-codebase code-quality remediation by @suraj-ranganath in #206
- [Epic] Close out Fable 5 architecture findings by @suraj-ranganath in #220
- Revamp project README by @suraj-ranganath in #221
- [Console] Fix background ICA logging by @suraj-ranganath in #223
- Update docs deploy branch and landing copy by @suraj-ranganath in #224
- Match MATLAB column-major average reference (float32 parity) by @arnodelorme in #232
- Pin fetchable EEGLAB reference by @suraj-ranganath in #225
- Fix dark-mode dialog contrast by @suraj-ranganath in #226
- Enable event and channel dialog navigation by @claude[bot] in #230
- Fix pop_select dialog crash on numpy chanlocs by @claude[bot] in #231
- Port numdim, eeg_ms2f, and spher to Python by @innaamogolonova in #261
- Spectopo plot converison by @innaamogolonova in #282
- Change default colormap to turbo by @innaamogolonova in #283
- pop_topoplot conversion by @innaamogolonova in #286
- Fix spectopo epoched-data averaging to match MATLAB by @claude[bot] in #295
- Accept Python key=value options in pop_spectopo dialog by @claude[bot] in #293
- spectopo: match EEGLAB component spectra plot by @innaamogolonova in #296
- timtopo conversion by @innaamogolonova in #297
- Display figures from GUI/console and add a plot on/off flag by @innaamogolonova in #298
New Contributors
- @AmanJaiswal1503 made their first contribution in #57
- @claude[bot] made their first contribution in #230
- @innaamogolonova made their first contribution in #261
Full Changelog: v0.2.23...v0.3.0