braindecode 1.6.1.dev1049__tar.gz → 1.6.1.dev1054__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (172) hide show
  1. {braindecode-1.6.1.dev1049/braindecode.egg-info → braindecode-1.6.1.dev1054}/PKG-INFO +1 -1
  2. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/preprocessing/mne_preprocess.py +28 -1
  3. braindecode-1.6.1.dev1054/braindecode/version.py +1 -0
  4. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054/braindecode.egg-info}/PKG-INFO +1 -1
  5. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/whats_new.rst +14 -0
  6. braindecode-1.6.1.dev1049/braindecode/version.py +0 -1
  7. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/LICENSE.txt +0 -0
  8. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/MANIFEST.in +0 -0
  9. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/NOTICE.txt +0 -0
  10. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/README.rst +0 -0
  11. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/__init__.py +0 -0
  12. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/augmentation/__init__.py +0 -0
  13. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/augmentation/base.py +0 -0
  14. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/augmentation/functional.py +0 -0
  15. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/augmentation/transforms.py +0 -0
  16. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/classifier.py +0 -0
  17. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/__init__.py +0 -0
  18. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/base.py +0 -0
  19. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/bbci.py +0 -0
  20. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/bcicomp.py +0 -0
  21. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/bids/__init__.py +0 -0
  22. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/bids/datasets.py +0 -0
  23. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/bids/format.py +0 -0
  24. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/bids/hub.py +0 -0
  25. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/bids/hub_format.py +0 -0
  26. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/bids/hub_io.py +0 -0
  27. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/bids/hub_validation.py +0 -0
  28. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/bids/iterable.py +0 -0
  29. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/chb_mit.py +0 -0
  30. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/mne.py +0 -0
  31. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/moabb.py +0 -0
  32. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/nmt.py +0 -0
  33. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/registry.py +0 -0
  34. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/siena.py +0 -0
  35. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/sleep_physio_challe_18.py +0 -0
  36. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/sleep_physionet.py +0 -0
  37. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/tuh.py +0 -0
  38. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/utils.py +0 -0
  39. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datasets/xy.py +0 -0
  40. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datautil/__init__.py +0 -0
  41. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datautil/channel_utils.py +0 -0
  42. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datautil/hub_formats.py +0 -0
  43. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datautil/serialization.py +0 -0
  44. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/datautil/util.py +0 -0
  45. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/eegneuralnet.py +0 -0
  46. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/functional/__init__.py +0 -0
  47. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/functional/functions.py +0 -0
  48. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/functional/initialization.py +0 -0
  49. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/__init__.py +0 -0
  50. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/atcnet.py +0 -0
  51. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/attentionbasenet.py +0 -0
  52. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/attn_sleep.py +0 -0
  53. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/base.py +0 -0
  54. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/bendr.py +0 -0
  55. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/biot.py +0 -0
  56. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/brainmodule.py +0 -0
  57. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/cbramod.py +0 -0
  58. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/codebrain.py +0 -0
  59. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/config.py +0 -0
  60. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/contrawr.py +0 -0
  61. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/ctnet.py +0 -0
  62. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/deep4.py +0 -0
  63. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/deepsleepnet.py +0 -0
  64. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/dgcnn.py +0 -0
  65. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/eegconformer.py +0 -0
  66. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/eegdino.py +0 -0
  67. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/eeginception_erp.py +0 -0
  68. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/eeginception_mi.py +0 -0
  69. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/eegitnet.py +0 -0
  70. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/eegminer.py +0 -0
  71. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/eegnet.py +0 -0
  72. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/eegnex.py +0 -0
  73. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/eegpt.py +0 -0
  74. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/eegsimpleconv.py +0 -0
  75. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/eegsym.py +0 -0
  76. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/eegtcnet.py +0 -0
  77. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/emg2qwerty.py +0 -0
  78. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/fbcnet.py +0 -0
  79. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/fblightconvnet.py +0 -0
  80. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/fbmsnet.py +0 -0
  81. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/hybrid.py +0 -0
  82. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/ifnet.py +0 -0
  83. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/interpolated.py +0 -0
  84. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/labram.py +0 -0
  85. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/luna.py +0 -0
  86. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/medformer.py +0 -0
  87. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/meta_neuromotor.py +0 -0
  88. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/msvtnet.py +0 -0
  89. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/patchedtransformer.py +0 -0
  90. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/reve.py +0 -0
  91. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/sccnet.py +0 -0
  92. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/shallow_fbcsp.py +0 -0
  93. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/signal_jepa.py +0 -0
  94. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/sinc_shallow.py +0 -0
  95. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/sleep_stager_blanco_2020.py +0 -0
  96. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/sleep_stager_chambon_2018.py +0 -0
  97. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/sparcnet.py +0 -0
  98. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/sstdpn.py +0 -0
  99. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/summary.csv +0 -0
  100. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/syncnet.py +0 -0
  101. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/tcn.py +0 -0
  102. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/tidnet.py +0 -0
  103. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/tsinception.py +0 -0
  104. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/usleep.py +0 -0
  105. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/models/util.py +0 -0
  106. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/modules/__init__.py +0 -0
  107. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/modules/activation.py +0 -0
  108. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/modules/attention.py +0 -0
  109. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/modules/blocks.py +0 -0
  110. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/modules/convolution.py +0 -0
  111. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/modules/filter.py +0 -0
  112. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/modules/interpolation.py +0 -0
  113. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/modules/layers.py +0 -0
  114. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/modules/linear.py +0 -0
  115. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/modules/parametrization.py +0 -0
  116. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/modules/stats.py +0 -0
  117. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/modules/util.py +0 -0
  118. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/modules/wrapper.py +0 -0
  119. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/preprocessing/__init__.py +0 -0
  120. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/preprocessing/eegprep_preprocess.py +0 -0
  121. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/preprocessing/preprocess.py +0 -0
  122. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/preprocessing/util.py +0 -0
  123. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/preprocessing/windowers.py +0 -0
  124. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/regressor.py +0 -0
  125. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/samplers/__init__.py +0 -0
  126. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/samplers/base.py +0 -0
  127. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/samplers/ssl.py +0 -0
  128. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/training/__init__.py +0 -0
  129. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/training/callbacks.py +0 -0
  130. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/training/losses.py +0 -0
  131. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/training/scoring.py +0 -0
  132. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/util.py +0 -0
  133. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/visualization/__init__.py +0 -0
  134. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/visualization/attribution.py +0 -0
  135. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/visualization/confusion_matrices.py +0 -0
  136. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/visualization/frequency.py +0 -0
  137. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/visualization/metrics.py +0 -0
  138. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/visualization/sanity.py +0 -0
  139. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode/visualization/topology.py +0 -0
  140. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode.egg-info/SOURCES.txt +0 -0
  141. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode.egg-info/dependency_links.txt +0 -0
  142. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode.egg-info/requires.txt +0 -0
  143. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/braindecode.egg-info/top_level.txt +0 -0
  144. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/Makefile +0 -0
  145. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/_templates/autosummary/class.rst +0 -0
  146. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/_templates/autosummary/class_in_subdir.rst +0 -0
  147. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/_templates/autosummary/function.rst +0 -0
  148. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/_templates/autosummary/function_in_subdir.rst +0 -0
  149. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/api.rst +0 -0
  150. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/cite.rst +0 -0
  151. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/conf.py +0 -0
  152. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/help.rst +0 -0
  153. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/index.rst +0 -0
  154. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/install/install.rst +0 -0
  155. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/install/install_pip.rst +0 -0
  156. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/install/install_source.rst +0 -0
  157. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/models/categorization/attention.rst +0 -0
  158. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/models/categorization/channel.rst +0 -0
  159. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/models/categorization/convolution.rst +0 -0
  160. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/models/categorization/filterbank.rst +0 -0
  161. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/models/categorization/gnn.rst +0 -0
  162. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/models/categorization/interpretable.rst +0 -0
  163. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/models/categorization/lbm.rst +0 -0
  164. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/models/categorization/recurrent.rst +0 -0
  165. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/models/categorization/spd.rst +0 -0
  166. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/models/models.rst +0 -0
  167. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/models/models_categorization.rst +0 -0
  168. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/models/models_table.rst +0 -0
  169. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/models/models_visualization.rst +0 -0
  170. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/docs/sg_execution_times.rst +0 -0
  171. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/pyproject.toml +0 -0
  172. {braindecode-1.6.1.dev1049 → braindecode-1.6.1.dev1054}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: braindecode
3
- Version: 1.6.1.dev1049
3
+ Version: 1.6.1.dev1054
4
4
  Summary: Deep learning software to decode EEG, ECG or MEG signals
5
5
  Author-email: Robin Tibor Schirrmeister <robintibor@gmail.com>, Bruno Aristimunha Pinto <b.aristimunha@gmail.com>, Alexandre Gramfort <agramfort@meta.com>
6
6
  Maintainer-email: Alexandre Gramfort <agramfort@meta.com>, Bruno Aristimunha Pinto <b.aristimunha@gmail.com>, Robin Tibor Schirrmeister <robintibor@gmail.com>
@@ -13,6 +13,28 @@ import mne.preprocessing
13
13
  from braindecode.preprocessing.preprocess import Preprocessor
14
14
  from braindecode.util import _clean_docstring_sections
15
15
 
16
+ # Standalone MNE functions that are safe to wrap as a *callable* preprocessor.
17
+ #
18
+ # When ``fn`` is a callable and ``apply_on_array=False``, ``Preprocessor`` calls
19
+ # ``fn(raw, **kwargs)`` and reassigns the dataset to whatever ``fn`` returns. That
20
+ # is only correct for functions that return the modified ``Raw``/``Epochs``
21
+ # instance. Many standalone MNE functions instead return auxiliary data
22
+ # (annotations, a list of bad channels, a ``(inst, ...)`` tuple, ...), so passing
23
+ # them as callables would silently replace the recording with that auxiliary
24
+ # object. We therefore restrict the callable path to functions verified to return
25
+ # the modified instance; every other standalone function keeps the existing
26
+ # (string-name) behaviour. See :gh:`885`.
27
+ _SAFE_STANDALONE_FUNCTIONS = frozenset(
28
+ {
29
+ # returns the Raw with the CSD-transformed data
30
+ mne.preprocessing.compute_current_source_density,
31
+ # returns the Raw with the new bipolar reference channel
32
+ mne.set_bipolar_reference,
33
+ # returns the Raw with the OTP-cleaned data
34
+ mne.preprocessing.oversampled_temporal_projection,
35
+ }
36
+ )
37
+
16
38
 
17
39
  def _is_standalone_function(func):
18
40
  """
@@ -79,7 +101,12 @@ def _generate_init_method(func, force_copy_false=False):
79
101
  raise TypeError(
80
102
  f"{func_name}() missing required arguments: {', '.join(mandatory)}"
81
103
  )
82
- Preprocessor.__init__(self, fn=func_name, apply_on_array=False, **init_kwargs)
104
+ # For standalone functions verified to return the modified instance,
105
+ # pass the callable itself so it is actually applied. Every other
106
+ # function keeps the legacy string-name behaviour (see #885 and
107
+ # ``_SAFE_STANDALONE_FUNCTIONS`` above).
108
+ fn = func if func in _SAFE_STANDALONE_FUNCTIONS else func_name
109
+ Preprocessor.__init__(self, fn=fn, apply_on_array=False, **init_kwargs)
83
110
 
84
111
  init_method.__signature__ = inspect.signature(func)
85
112
  return init_method
@@ -0,0 +1 @@
1
+ __version__ = "1.6.1.dev1054"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: braindecode
3
- Version: 1.6.1.dev1049
3
+ Version: 1.6.1.dev1054
4
4
  Summary: Deep learning software to decode EEG, ECG or MEG signals
5
5
  Author-email: Robin Tibor Schirrmeister <robintibor@gmail.com>, Bruno Aristimunha Pinto <b.aristimunha@gmail.com>, Alexandre Gramfort <agramfort@meta.com>
6
6
  Maintainer-email: Alexandre Gramfort <agramfort@meta.com>, Bruno Aristimunha Pinto <b.aristimunha@gmail.com>, Robin Tibor Schirrmeister <robintibor@gmail.com>
@@ -70,6 +70,15 @@ Bug fixes
70
70
  use running statistics when ``batch_size == 1`` in train mode.
71
71
  By `Bruno Aristimunha`_.
72
72
 
73
+ - Fix the auto-generated standalone-function preprocessors
74
+ (:class:`braindecode.preprocessing.ComputeCurrentSourceDensity`,
75
+ :class:`braindecode.preprocessing.SetBipolarReference`, and
76
+ :class:`braindecode.preprocessing.OversampledTemporalProjection`) passing the
77
+ function name as a string instead of the callable, so they failed to apply.
78
+ These functions return the modified instance and are now wrapped as callables.
79
+ Standalone functions that return auxiliary data (e.g. annotations or bad
80
+ channels) are intentionally left on the existing path for now. (:gh:`885` by
81
+ `Yiheng Li`_)
73
82
  - Fix incorrect import path in CONTRIBUTING.md by `Yiheng Li`_
74
83
 
75
84
  - Fix the broken EEGNeX quickstart snippet on the documentation landing page,
@@ -82,6 +91,11 @@ Bug fixes
82
91
  Code health
83
92
  ============
84
93
 
94
+ - Install CPU-only PyTorch wheels in the ``tests`` and ``docs`` CI
95
+ workflows via ``UV_TORCH_BACKEND=cpu``. GitHub runners have no GPU, so
96
+ the default CUDA build pulled ~1.8 GiB of unused ``nvidia-*`` wheels and
97
+ contributed to a disk-exhaustion crash. (:gh:`1054` by `Bhargav Kowshik`_)
98
+
85
99
  - Add a monthly scheduled workflow that cuts a stable PyPI release on
86
100
  the 1st of every month, complementing the existing per-push ``.devN``
87
101
  pipeline. (:gh:`1030` by `Bruno Aristimunha`_)
@@ -1 +0,0 @@
1
- __version__ = "1.6.1.dev1049"