braindecode 1.5.0.dev1000__tar.gz → 1.5.0.dev1003__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 (166) hide show
  1. {braindecode-1.5.0.dev1000/braindecode.egg-info → braindecode-1.5.0.dev1003}/PKG-INFO +2 -2
  2. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/sleep_physionet.py +15 -1
  3. braindecode-1.5.0.dev1003/braindecode/version.py +1 -0
  4. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003/braindecode.egg-info}/PKG-INFO +2 -2
  5. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode.egg-info/requires.txt +1 -1
  6. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/whats_new.rst +8 -0
  7. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/pyproject.toml +1 -1
  8. braindecode-1.5.0.dev1000/braindecode/version.py +0 -1
  9. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/LICENSE.txt +0 -0
  10. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/MANIFEST.in +0 -0
  11. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/NOTICE.txt +0 -0
  12. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/README.rst +0 -0
  13. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/__init__.py +0 -0
  14. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/augmentation/__init__.py +0 -0
  15. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/augmentation/base.py +0 -0
  16. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/augmentation/functional.py +0 -0
  17. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/augmentation/transforms.py +0 -0
  18. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/classifier.py +0 -0
  19. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/__init__.py +0 -0
  20. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/base.py +0 -0
  21. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/bbci.py +0 -0
  22. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/bcicomp.py +0 -0
  23. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/bids/__init__.py +0 -0
  24. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/bids/datasets.py +0 -0
  25. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/bids/format.py +0 -0
  26. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/bids/hub.py +0 -0
  27. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/bids/hub_format.py +0 -0
  28. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/bids/hub_io.py +0 -0
  29. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/bids/hub_validation.py +0 -0
  30. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/bids/iterable.py +0 -0
  31. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/chb_mit.py +0 -0
  32. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/mne.py +0 -0
  33. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/moabb.py +0 -0
  34. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/nmt.py +0 -0
  35. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/registry.py +0 -0
  36. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/siena.py +0 -0
  37. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/sleep_physio_challe_18.py +0 -0
  38. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/tuh.py +0 -0
  39. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/utils.py +0 -0
  40. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datasets/xy.py +0 -0
  41. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datautil/__init__.py +0 -0
  42. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datautil/channel_utils.py +0 -0
  43. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datautil/hub_formats.py +0 -0
  44. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datautil/serialization.py +0 -0
  45. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/datautil/util.py +0 -0
  46. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/eegneuralnet.py +0 -0
  47. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/functional/__init__.py +0 -0
  48. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/functional/functions.py +0 -0
  49. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/functional/initialization.py +0 -0
  50. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/__init__.py +0 -0
  51. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/atcnet.py +0 -0
  52. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/attentionbasenet.py +0 -0
  53. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/attn_sleep.py +0 -0
  54. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/base.py +0 -0
  55. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/bendr.py +0 -0
  56. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/biot.py +0 -0
  57. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/brainmodule.py +0 -0
  58. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/cbramod.py +0 -0
  59. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/codebrain.py +0 -0
  60. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/config.py +0 -0
  61. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/contrawr.py +0 -0
  62. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/ctnet.py +0 -0
  63. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/deep4.py +0 -0
  64. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/deepsleepnet.py +0 -0
  65. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/dgcnn.py +0 -0
  66. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/eegconformer.py +0 -0
  67. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/eeginception_erp.py +0 -0
  68. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/eeginception_mi.py +0 -0
  69. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/eegitnet.py +0 -0
  70. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/eegminer.py +0 -0
  71. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/eegnet.py +0 -0
  72. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/eegnex.py +0 -0
  73. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/eegpt.py +0 -0
  74. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/eegsimpleconv.py +0 -0
  75. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/eegsym.py +0 -0
  76. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/eegtcnet.py +0 -0
  77. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/fbcnet.py +0 -0
  78. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/fblightconvnet.py +0 -0
  79. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/fbmsnet.py +0 -0
  80. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/hybrid.py +0 -0
  81. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/ifnet.py +0 -0
  82. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/interpolated.py +0 -0
  83. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/labram.py +0 -0
  84. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/luna.py +0 -0
  85. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/medformer.py +0 -0
  86. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/meta_neuromotor.py +0 -0
  87. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/msvtnet.py +0 -0
  88. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/patchedtransformer.py +0 -0
  89. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/reve.py +0 -0
  90. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/sccnet.py +0 -0
  91. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/shallow_fbcsp.py +0 -0
  92. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/signal_jepa.py +0 -0
  93. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/sinc_shallow.py +0 -0
  94. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/sleep_stager_blanco_2020.py +0 -0
  95. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/sleep_stager_chambon_2018.py +0 -0
  96. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/sparcnet.py +0 -0
  97. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/sstdpn.py +0 -0
  98. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/summary.csv +0 -0
  99. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/syncnet.py +0 -0
  100. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/tcn.py +0 -0
  101. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/tidnet.py +0 -0
  102. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/tsinception.py +0 -0
  103. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/usleep.py +0 -0
  104. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/models/util.py +0 -0
  105. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/modules/__init__.py +0 -0
  106. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/modules/activation.py +0 -0
  107. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/modules/attention.py +0 -0
  108. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/modules/blocks.py +0 -0
  109. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/modules/convolution.py +0 -0
  110. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/modules/filter.py +0 -0
  111. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/modules/interpolation.py +0 -0
  112. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/modules/layers.py +0 -0
  113. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/modules/linear.py +0 -0
  114. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/modules/parametrization.py +0 -0
  115. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/modules/stats.py +0 -0
  116. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/modules/util.py +0 -0
  117. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/modules/wrapper.py +0 -0
  118. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/preprocessing/__init__.py +0 -0
  119. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/preprocessing/eegprep_preprocess.py +0 -0
  120. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/preprocessing/mne_preprocess.py +0 -0
  121. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/preprocessing/preprocess.py +0 -0
  122. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/preprocessing/util.py +0 -0
  123. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/preprocessing/windowers.py +0 -0
  124. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/regressor.py +0 -0
  125. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/samplers/__init__.py +0 -0
  126. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/samplers/base.py +0 -0
  127. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/samplers/ssl.py +0 -0
  128. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/training/__init__.py +0 -0
  129. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/training/callbacks.py +0 -0
  130. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/training/losses.py +0 -0
  131. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/training/scoring.py +0 -0
  132. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/util.py +0 -0
  133. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/visualization/__init__.py +0 -0
  134. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/visualization/confusion_matrices.py +0 -0
  135. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode/visualization/gradients.py +0 -0
  136. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode.egg-info/SOURCES.txt +0 -0
  137. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode.egg-info/dependency_links.txt +0 -0
  138. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/braindecode.egg-info/top_level.txt +0 -0
  139. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/Makefile +0 -0
  140. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/_templates/autosummary/class.rst +0 -0
  141. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/_templates/autosummary/class_in_subdir.rst +0 -0
  142. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/_templates/autosummary/function.rst +0 -0
  143. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/_templates/autosummary/function_in_subdir.rst +0 -0
  144. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/api.rst +0 -0
  145. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/cite.rst +0 -0
  146. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/conf.py +0 -0
  147. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/help.rst +0 -0
  148. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/index.rst +0 -0
  149. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/install/install.rst +0 -0
  150. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/install/install_pip.rst +0 -0
  151. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/install/install_source.rst +0 -0
  152. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/models/categorization/attention.rst +0 -0
  153. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/models/categorization/channel.rst +0 -0
  154. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/models/categorization/convolution.rst +0 -0
  155. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/models/categorization/filterbank.rst +0 -0
  156. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/models/categorization/gnn.rst +0 -0
  157. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/models/categorization/interpretable.rst +0 -0
  158. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/models/categorization/lbm.rst +0 -0
  159. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/models/categorization/recurrent.rst +0 -0
  160. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/models/categorization/spd.rst +0 -0
  161. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/models/models.rst +0 -0
  162. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/models/models_categorization.rst +0 -0
  163. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/models/models_table.rst +0 -0
  164. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/models/models_visualization.rst +0 -0
  165. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/docs/sg_execution_times.rst +0 -0
  166. {braindecode-1.5.0.dev1000 → braindecode-1.5.0.dev1003}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: braindecode
3
- Version: 1.5.0.dev1000
3
+ Version: 1.5.0.dev1003
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,7 +70,7 @@ Requires-Dist: sphinx_design; extra == "docs"
70
70
  Requires-Dist: lightning; extra == "docs"
71
71
  Requires-Dist: seaborn; extra == "docs"
72
72
  Requires-Dist: pre-commit; extra == "docs"
73
- Requires-Dist: openneuro-py<2026.4; extra == "docs"
73
+ Requires-Dist: openneuro-py>=2026.4.0; extra == "docs"
74
74
  Requires-Dist: plotly; extra == "docs"
75
75
  Requires-Dist: shap; extra == "docs"
76
76
  Requires-Dist: nbformat; extra == "docs"
@@ -6,10 +6,12 @@
6
6
  from __future__ import annotations
7
7
 
8
8
  import os
9
+ import time
9
10
 
10
11
  import mne
11
12
  import numpy as np
12
13
  import pandas as pd
14
+ import requests
13
15
  from mne.datasets.sleep_physionet.age import fetch_data
14
16
 
15
17
  from .base import BaseConcatDataset, RawDataset
@@ -59,7 +61,19 @@ class SleepPhysionet(BaseConcatDataset):
59
61
  if recording_ids is None:
60
62
  recording_ids = [1, 2]
61
63
 
62
- paths = fetch_data(subject_ids, recording=recording_ids, on_missing="warn")
64
+ max_attempts = 5
65
+ retry_delay_s = 10
66
+
67
+ for attempt in range(max_attempts):
68
+ try:
69
+ paths = fetch_data(
70
+ subject_ids, recording=recording_ids, on_missing="warn"
71
+ )
72
+ break
73
+ except requests.exceptions.RequestException:
74
+ if attempt == max_attempts - 1:
75
+ raise
76
+ time.sleep(retry_delay_s)
63
77
 
64
78
  all_base_ds = list()
65
79
  for p in paths:
@@ -0,0 +1 @@
1
+ __version__ = "1.5.0.dev1003"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: braindecode
3
- Version: 1.5.0.dev1000
3
+ Version: 1.5.0.dev1003
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,7 +70,7 @@ Requires-Dist: sphinx_design; extra == "docs"
70
70
  Requires-Dist: lightning; extra == "docs"
71
71
  Requires-Dist: seaborn; extra == "docs"
72
72
  Requires-Dist: pre-commit; extra == "docs"
73
- Requires-Dist: openneuro-py<2026.4; extra == "docs"
73
+ Requires-Dist: openneuro-py>=2026.4.0; extra == "docs"
74
74
  Requires-Dist: plotly; extra == "docs"
75
75
  Requires-Dist: shap; extra == "docs"
76
76
  Requires-Dist: nbformat; extra == "docs"
@@ -37,7 +37,7 @@ sphinx_design
37
37
  lightning
38
38
  seaborn
39
39
  pre-commit
40
- openneuro-py<2026.4
40
+ openneuro-py>=2026.4.0
41
41
  plotly
42
42
  shap
43
43
  nbformat
@@ -141,6 +141,14 @@ Bug fixes
141
141
  embedding weights when fine-tuning on a subset of the pre-training channels.
142
142
  Two new HuggingFace checkpoints are published: ``braindecode/signal-jepa`` and
143
143
  ``braindecode/signal-jepa_without-chans`` (:gh:`991` by `Pierre Guetschel`_)
144
+ - Bump ``openneuro-py`` to ``>=2026.4.0`` so the docs build picks up upstream
145
+ PR ``#308`` (``DatasetFile.key`` → ``id``). The previous ``<2026.4`` pin
146
+ (:gh:`1000`) avoided a libc double-free seen with newer releases but broke
147
+ ``examples/datasets_io/plot_bids_dataset_example.py`` against the live
148
+ OpenNeuro 5.0.0 GraphQL schema (``Cannot query field "key" on type
149
+ "DatasetFile"``) (:gh:`1002` by `Bruno Aristimunha`_)
150
+ - Retry transient TLS failures from ``physionet.org`` when fetching
151
+ :class:`braindecode.datasets.SleepPhysionet` (by `Bruno Aristimunha`_)
144
152
 
145
153
  Code health
146
154
  ============
@@ -108,7 +108,7 @@ docs = [
108
108
  'lightning',
109
109
  'seaborn',
110
110
  'pre-commit',
111
- 'openneuro-py<2026.4', # 2026.4.x crashes (libc double-free) during concurrent HEAD requests in docs CI
111
+ 'openneuro-py>=2026.4.0', # 2026.4.0 fixes DatasetFile.key->id after the OpenNeuro 5.0.0 schema change; older versions break against the live GraphQL server
112
112
  'plotly',
113
113
  'shap',
114
114
  'nbformat',
@@ -1 +0,0 @@
1
- __version__ = "1.5.0.dev1000"