junifer 0.0.8.dev290__tar.gz → 0.0.8.dev298__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 (603) hide show
  1. {junifer-0.0.8.dev290/junifer.egg-info → junifer-0.0.8.dev298}/PKG-INFO +1 -1
  2. junifer-0.0.8.dev298/docs/changes/newsfragments/522.bugfix +1 -0
  3. junifer-0.0.8.dev298/docs/changes/newsfragments/522.enh +1 -0
  4. junifer-0.0.8.dev298/docs/changes/newsfragments/523.misc +1 -0
  5. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/understanding/storage.rst +8 -1
  6. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/using/running.rst +2 -2
  7. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/_version.py +3 -3
  8. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/tests/test_functions.py +15 -15
  9. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/cli/tests/data/gmd_mean.yaml +2 -2
  10. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/cli/tests/data/gmd_mean_htcondor.yaml +2 -2
  11. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/cli/tests/test_cli.py +2 -2
  12. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/base.py +14 -3
  13. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/complexity/tests/test_hurst_exponent.py +2 -2
  14. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/complexity/tests/test_multiscale_entropy_auc.py +3 -3
  15. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/complexity/tests/test_perm_entropy.py +2 -2
  16. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/complexity/tests/test_range_entropy.py +2 -2
  17. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/complexity/tests/test_range_entropy_auc.py +2 -4
  18. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/complexity/tests/test_sample_entropy.py +2 -2
  19. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/complexity/tests/test_weighted_perm_entropy.py +3 -3
  20. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/falff/tests/test_falff_parcels.py +2 -4
  21. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/falff/tests/test_falff_spheres.py +2 -4
  22. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/functional_connectivity/tests/test_crossparcellation_functional_connectivity.py +3 -4
  23. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_parcels.py +3 -3
  24. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_spheres.py +3 -3
  25. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_parcels.py +3 -3
  26. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_spheres.py +3 -3
  27. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/reho/tests/test_reho_parcels.py +2 -4
  28. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/reho/tests/test_reho_spheres.py +2 -4
  29. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/temporal_snr/temporal_snr_base.py +6 -4
  30. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/temporal_snr/tests/test_temporal_snr_maps.py +3 -0
  31. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/temporal_snr/tests/test_temporal_snr_parcels.py +3 -0
  32. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/temporal_snr/tests/test_temporal_snr_spheres.py +3 -0
  33. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/tests/test_ets_rss.py +2 -2
  34. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/tests/test_maps_aggregation.py +1 -1
  35. junifer-0.0.8.dev298/junifer/markers/tests/test_markers_base.py +349 -0
  36. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/tests/test_parcel_aggregation.py +5 -7
  37. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/tests/test_sphere_aggregation.py +5 -7
  38. junifer-0.0.8.dev298/junifer/markers/utils.py +304 -0
  39. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/onthefly/read_transform.py +1 -1
  40. junifer-0.0.8.dev298/junifer/pipeline/tests/test_marker_collection.py +198 -0
  41. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/pipeline/tests/test_pipeline_component_registry.py +13 -8
  42. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/confounds/fmriprep_confound_remover.py +2 -2
  43. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298/junifer.egg-info}/PKG-INFO +1 -1
  44. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer.egg-info/SOURCES.txt +3 -0
  45. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer.egg-info/scm_file_list.json +3 -0
  46. junifer-0.0.8.dev298/junifer.egg-info/scm_version.json +8 -0
  47. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/pyproject.toml +1 -0
  48. junifer-0.0.8.dev290/junifer/markers/tests/test_markers_base.py +0 -107
  49. junifer-0.0.8.dev290/junifer/markers/utils.py +0 -141
  50. junifer-0.0.8.dev290/junifer/pipeline/tests/test_marker_collection.py +0 -224
  51. junifer-0.0.8.dev290/junifer.egg-info/scm_version.json +0 -8
  52. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.dockerignore +0 -0
  53. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
  54. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  55. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.github/ISSUE_TEMPLATE/dataset-request.yml +0 -0
  56. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.github/ISSUE_TEMPLATE/documention-request.yml +0 -0
  57. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.github/ISSUE_TEMPLATE/feature-request.yml +0 -0
  58. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.github/ISSUE_TEMPLATE/marker-request.yml +0 -0
  59. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.github/dependabot.yml +0 -0
  60. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.github/pull_request_template.md +0 -0
  61. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.github/workflows/check-stale.yml +0 -0
  62. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.github/workflows/ci.yml +0 -0
  63. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.github/workflows/docker-publish.yml +0 -0
  64. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.github/workflows/docs-preview.yml +0 -0
  65. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.github/workflows/docs.yml +0 -0
  66. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.github/workflows/lint.yml +0 -0
  67. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.github/workflows/publish.yml +0 -0
  68. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.gitignore +0 -0
  69. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.gitmodules +0 -0
  70. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.pre-commit-config.yaml +0 -0
  71. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/.python-version +0 -0
  72. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/AUTHORS.rst +0 -0
  73. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/Dockerfile +0 -0
  74. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/Dockerfile-ci +0 -0
  75. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/LICENSE.md +0 -0
  76. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/README.md +0 -0
  77. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/codecov.yml +0 -0
  78. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/conda-env.yml +0 -0
  79. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/Makefile +0 -0
  80. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/_static/css/custom.css +0 -0
  81. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/_static/css/version_selector.css +0 -0
  82. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/_static/js/custom.js +0 -0
  83. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/_templates/versions.html +0 -0
  84. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/api/api.rst +0 -0
  85. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/api/cli.rst +0 -0
  86. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/api/configs.rst +0 -0
  87. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/api/data.rst +0 -0
  88. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/api/datagrabbers.rst +0 -0
  89. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/api/datareaders.rst +0 -0
  90. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/api/index.rst +0 -0
  91. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/api/markers.rst +0 -0
  92. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/api/nilearn.rst +0 -0
  93. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/api/onthefly.rst +0 -0
  94. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/api/pipeline.rst +0 -0
  95. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/api/preprocessing.rst +0 -0
  96. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/api/stats.rst +0 -0
  97. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/api/storage.rst +0 -0
  98. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/api/testing.rst +0 -0
  99. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/api/utils.rst +0 -0
  100. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/builtin.rst +0 -0
  101. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/contributors.inc +0 -0
  102. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/.gitignore +0 -0
  103. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/239.enh +0 -0
  104. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/364.doc +0 -0
  105. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/364.enh +0 -0
  106. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/364.feature +0 -0
  107. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/474.misc +0 -0
  108. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/482.bugfix +0 -0
  109. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/492.bugfix +0 -0
  110. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/499.enh +0 -0
  111. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/502.bugfix +0 -0
  112. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/503.enh +0 -0
  113. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/510.bugfix +0 -0
  114. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/511.bugfix +0 -0
  115. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/511.bugfix.1 +0 -0
  116. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/511.change +0 -0
  117. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/511.enh +0 -0
  118. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/511.enh.1 +0 -0
  119. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/511.feature +0 -0
  120. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/511.misc +0 -0
  121. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/511.misc.1 +0 -0
  122. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/513.doc +0 -0
  123. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/513.misc +0 -0
  124. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/514.bugfix +0 -0
  125. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/514.bugfix.1 +0 -0
  126. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/514.enh +0 -0
  127. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/515.doc +0 -0
  128. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/515.enh +0 -0
  129. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/515.enh.1 +0 -0
  130. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/515.misc +0 -0
  131. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/515.misc.1 +0 -0
  132. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/516.bugfix +0 -0
  133. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/516.bugfix.1 +0 -0
  134. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/516.bugfix.2 +0 -0
  135. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/516.change +0 -0
  136. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/516.change.1 +0 -0
  137. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/516.misc +0 -0
  138. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/520.bugfix +0 -0
  139. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/520.bugfix.1 +0 -0
  140. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/520.bugfix.2 +0 -0
  141. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/520.bugfix.3 +0 -0
  142. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/520.bugfix.4 +0 -0
  143. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/520.bugfix.5 +0 -0
  144. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/520.bugfix.6 +0 -0
  145. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/520.change +0 -0
  146. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/520.doc +0 -0
  147. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/520.misc +0 -0
  148. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/520.misc.1 +0 -0
  149. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/520.misc.2 +0 -0
  150. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/520.misc.3 +0 -0
  151. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/520.removal +0 -0
  152. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/changes/newsfragments/521.bugfix +0 -0
  153. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/conf.py +0 -0
  154. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/contribution.rst +0 -0
  155. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/extending/confounds_format.rst +0 -0
  156. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/extending/coordinates.rst +0 -0
  157. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/extending/data_dump_asset.rst +0 -0
  158. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/extending/data_registries.rst +0 -0
  159. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/extending/data_types.rst +0 -0
  160. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/extending/datagrabber.rst +0 -0
  161. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/extending/dependencies.rst +0 -0
  162. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/extending/extension.rst +0 -0
  163. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/extending/index.rst +0 -0
  164. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/extending/logging.rst +0 -0
  165. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/extending/maps.rst +0 -0
  166. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/extending/marker.rst +0 -0
  167. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/extending/masks.rst +0 -0
  168. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/extending/parcellations.rst +0 -0
  169. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/extending/plugins.rst +0 -0
  170. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/extending/preprocessor.rst +0 -0
  171. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/faq.rst +0 -0
  172. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/help.rst +0 -0
  173. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/images/junifer_logo.png +0 -0
  174. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/index.rst +0 -0
  175. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/installation.rst +0 -0
  176. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/links.inc +0 -0
  177. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/maintaining.rst +0 -0
  178. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/poly.py +0 -0
  179. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/poly_files/patches/version_banner.html +0 -0
  180. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/poly_files/patches/versions.html +0 -0
  181. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/poly_files/templates/index.html +0 -0
  182. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/starting.rst +0 -0
  183. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/understanding/data.rst +0 -0
  184. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/understanding/datagrabber.rst +0 -0
  185. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/understanding/datareader.rst +0 -0
  186. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/understanding/index.rst +0 -0
  187. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/understanding/marker.rst +0 -0
  188. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/understanding/pipeline.rst +0 -0
  189. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/understanding/preprocess.rst +0 -0
  190. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/using/codeless.rst +0 -0
  191. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/using/configuring.rst +0 -0
  192. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/using/dumping.rst +0 -0
  193. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/using/index.rst +0 -0
  194. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/using/masks.rst +0 -0
  195. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/using/queueing.rst +0 -0
  196. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/docs/whats_new.rst +0 -0
  197. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/examples/README.rst +0 -0
  198. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/examples/norun_hcpfc_pearson.py +0 -0
  199. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/examples/norun_ukbvm_gmd.py +0 -0
  200. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/examples/run_compute_parcel_mean.py +0 -0
  201. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/examples/run_datagrabber_bids_datalad.py +0 -0
  202. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/examples/run_ets_rss_marker.py +0 -0
  203. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/examples/run_junifer_julearn.py +0 -0
  204. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/examples/run_run_gmd_mean.py +0 -0
  205. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/examples/yamls/gmd_mean.yaml +0 -0
  206. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/examples/yamls/gmd_mean_htcondor.yaml +0 -0
  207. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/examples/yamls/partly_cloudy_agg_mean_tian.yml +0 -0
  208. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/examples/yamls/ukb_gmd_mean.yaml +0 -0
  209. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/ignore_words.txt +0 -0
  210. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/__init__.py +0 -0
  211. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/__init__.pyi +0 -0
  212. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/__init__.py +0 -0
  213. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/__init__.pyi +0 -0
  214. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/decorators.py +0 -0
  215. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/functions.py +0 -0
  216. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/py.typed +0 -0
  217. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/queue_context/__init__.py +0 -0
  218. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/queue_context/__init__.pyi +0 -0
  219. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/queue_context/gnu_parallel_local_adapter.py +0 -0
  220. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/queue_context/htcondor_adapter.py +0 -0
  221. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/queue_context/py.typed +0 -0
  222. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/queue_context/queue_context_adapter.py +0 -0
  223. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/queue_context/tests/test_gnu_parallel_local_adapter.py +0 -0
  224. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/queue_context/tests/test_htcondor_adapter.py +0 -0
  225. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/afni/3dAFNItoNIFTI +0 -0
  226. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/afni/3dRSFC +0 -0
  227. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/afni/3dReHo +0 -0
  228. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/afni/afni +0 -0
  229. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/afni/run_afni_docker.sh +0 -0
  230. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/ants/ResampleImage +0 -0
  231. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/ants/antsApplyTransforms +0 -0
  232. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/ants/antsApplyTransformsToPoints +0 -0
  233. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/ants/run_ants_docker.sh +0 -0
  234. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/freesurfer/mri_binarize +0 -0
  235. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/freesurfer/mri_mc +0 -0
  236. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/freesurfer/mri_pretess +0 -0
  237. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/freesurfer/mris_convert +0 -0
  238. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/freesurfer/run_freesurfer_docker.sh +0 -0
  239. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/fsl/applywarp +0 -0
  240. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/fsl/flirt +0 -0
  241. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/fsl/img2imgcoord +0 -0
  242. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/fsl/run_fsl_docker.sh +0 -0
  243. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/fsl/std2imgcoord +0 -0
  244. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/run_conda.bash +0 -0
  245. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/run_conda.zsh +0 -0
  246. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/run_venv.bash +0 -0
  247. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/res/run_venv.zsh +0 -0
  248. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/api/tests/test_decorators.py +0 -0
  249. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/cli/__init__.py +0 -0
  250. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/cli/__init__.pyi +0 -0
  251. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/cli/cli.py +0 -0
  252. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/cli/parser.py +0 -0
  253. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/cli/py.typed +0 -0
  254. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/cli/tests/data/partly_cloudy_agg_mean_tian.yml +0 -0
  255. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/cli/tests/test_cli_utils.py +0 -0
  256. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/cli/utils.py +0 -0
  257. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/configs/__init__.py +0 -0
  258. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/configs/__init__.pyi +0 -0
  259. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/configs/juseless/__init__.py +0 -0
  260. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/configs/juseless/__init__.pyi +0 -0
  261. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/configs/juseless/datagrabbers/__init__.py +0 -0
  262. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/configs/juseless/datagrabbers/__init__.pyi +0 -0
  263. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/configs/juseless/datagrabbers/aomic_id1000_vbm.py +0 -0
  264. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/configs/juseless/datagrabbers/camcan_vbm.py +0 -0
  265. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/configs/juseless/datagrabbers/ixi_vbm.py +0 -0
  266. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/configs/juseless/datagrabbers/py.typed +0 -0
  267. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/configs/juseless/datagrabbers/tests/test_aomic_id1000_vbm.py +0 -0
  268. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/configs/juseless/datagrabbers/tests/test_camcan_vbm.py +0 -0
  269. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/configs/juseless/datagrabbers/tests/test_ixi_vbm.py +0 -0
  270. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/configs/juseless/datagrabbers/tests/test_ucla.py +0 -0
  271. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/configs/juseless/datagrabbers/tests/test_ukb_vbm.py +0 -0
  272. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/configs/juseless/datagrabbers/ucla.py +0 -0
  273. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/configs/juseless/datagrabbers/ukb_vbm.py +0 -0
  274. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/configs/juseless/py.typed +0 -0
  275. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/configs/py.typed +0 -0
  276. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/conftest.py +0 -0
  277. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/__init__.py +0 -0
  278. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/__init__.pyi +0 -0
  279. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/_dispatch.py +0 -0
  280. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/coordinates/__init__.py +0 -0
  281. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/coordinates/__init__.pyi +0 -0
  282. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/coordinates/_ants_coordinates_warper.py +0 -0
  283. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/coordinates/_coordinates.py +0 -0
  284. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/coordinates/_fsl_coordinates_warper.py +0 -0
  285. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/coordinates/tests/test_coordinates.py +0 -0
  286. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/coordinates/tests/test_coordinates_names.py +0 -0
  287. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/maps/__init__.py +0 -0
  288. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/maps/__init__.pyi +0 -0
  289. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/maps/_ants_maps_warper.py +0 -0
  290. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/maps/_fsl_maps_warper.py +0 -0
  291. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/maps/_maps.py +0 -0
  292. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/maps/tests/test_maps.py +0 -0
  293. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/masks/__init__.py +0 -0
  294. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/masks/__init__.pyi +0 -0
  295. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/masks/_ants_mask_warper.py +0 -0
  296. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/masks/_fsl_mask_warper.py +0 -0
  297. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/masks/_masks.py +0 -0
  298. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/masks/tests/test_masks.py +0 -0
  299. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/parcellations/__init__.py +0 -0
  300. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/parcellations/__init__.pyi +0 -0
  301. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/parcellations/_ants_parcellation_warper.py +0 -0
  302. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/parcellations/_fsl_parcellation_warper.py +0 -0
  303. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/parcellations/_parcellations.py +0 -0
  304. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/parcellations/tests/test_parcellations.py +0 -0
  305. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/pipeline_data_registry_base.py +0 -0
  306. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/py.typed +0 -0
  307. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/template_spaces.py +0 -0
  308. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/tests/test_data_utils.py +0 -0
  309. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/tests/test_dispatch.py +0 -0
  310. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/tests/test_template_spaces.py +0 -0
  311. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/data/utils.py +0 -0
  312. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/__init__.py +0 -0
  313. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/__init__.pyi +0 -0
  314. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/aomic/__init__.py +0 -0
  315. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/aomic/__init__.pyi +0 -0
  316. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/aomic/_types.py +0 -0
  317. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/aomic/id1000.py +0 -0
  318. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/aomic/piop1.py +0 -0
  319. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/aomic/piop2.py +0 -0
  320. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/aomic/py.typed +0 -0
  321. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/aomic/tests/test_id1000.py +0 -0
  322. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/aomic/tests/test_piop1.py +0 -0
  323. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/aomic/tests/test_piop2.py +0 -0
  324. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/base.py +0 -0
  325. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/datalad_base.py +0 -0
  326. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/dmcc13_benchmark.py +0 -0
  327. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/hcp1200/__init__.py +0 -0
  328. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/hcp1200/__init__.pyi +0 -0
  329. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/hcp1200/datalad_hcp1200.py +0 -0
  330. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/hcp1200/hcp1200.py +0 -0
  331. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/hcp1200/py.typed +0 -0
  332. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/hcp1200/tests/test_hcp1200.py +0 -0
  333. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/multiple.py +0 -0
  334. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/pattern.py +0 -0
  335. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/pattern_datalad.py +0 -0
  336. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/pattern_validation_mixin.py +0 -0
  337. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/py.typed +0 -0
  338. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/tests/test_base.py +0 -0
  339. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/tests/test_datalad_base.py +0 -0
  340. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/tests/test_dmcc13_benchmark.py +0 -0
  341. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/tests/test_multiple.py +0 -0
  342. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/tests/test_pattern.py +0 -0
  343. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/tests/test_pattern_datalad.py +0 -0
  344. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datagrabber/tests/test_pattern_validation_mixin.py +0 -0
  345. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datareader/__init__.py +0 -0
  346. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datareader/__init__.pyi +0 -0
  347. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datareader/default.py +0 -0
  348. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datareader/py.typed +0 -0
  349. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/datareader/tests/test_default_reader.py +0 -0
  350. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/.codecov.yml +0 -0
  351. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/.codespellignore +0 -0
  352. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/.github/ISSUE_TEMPLATE/bug-report.md +0 -0
  353. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/.github/ISSUE_TEMPLATE/documentation.md +0 -0
  354. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/.github/ISSUE_TEMPLATE/feature-request.md +0 -0
  355. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/.github/ISSUE_TEMPLATE/questions-help-support.md +0 -0
  356. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/.github/dependabot.yml +0 -0
  357. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/.github/workflows/build.yml +0 -0
  358. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/.github/workflows/code-style.yml +0 -0
  359. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/.github/workflows/doc.yml +0 -0
  360. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/.github/workflows/publish.yml +0 -0
  361. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/.github/workflows/pytest.yml +0 -0
  362. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/.gitignore +0 -0
  363. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/LICENSE +0 -0
  364. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/README.md +0 -0
  365. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/brainprint/__init__.py +0 -0
  366. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/brainprint/_version.py +0 -0
  367. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/brainprint/asymmetry.py +0 -0
  368. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/brainprint/brainprint.py +0 -0
  369. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/brainprint/cli/__init__.py +0 -0
  370. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/brainprint/cli/help_text.py +0 -0
  371. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/brainprint/cli/parser.py +0 -0
  372. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/brainprint/cli/utils.py +0 -0
  373. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/brainprint/commands/__init__.py +0 -0
  374. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/brainprint/commands/sys_info.py +0 -0
  375. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/brainprint/surfaces.py +0 -0
  376. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/brainprint/utils/__init__.py +0 -0
  377. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/brainprint/utils/_config.py +0 -0
  378. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/brainprint/utils/tests/__init__.py +0 -0
  379. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/brainprint/utils/tests/test_config.py +0 -0
  380. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/brainprint/utils/utils.py +0 -0
  381. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/doc/Makefile +0 -0
  382. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/doc/_static/.gitkeep +0 -0
  383. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/doc/_templates/autosummary/class.rst +0 -0
  384. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/doc/_templates/autosummary/function.rst +0 -0
  385. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/doc/_templates/autosummary/module.rst +0 -0
  386. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/doc/api/index.rst +0 -0
  387. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/doc/conf.py +0 -0
  388. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/doc/index.rst +0 -0
  389. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/doc/links.inc +0 -0
  390. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/doc/make.bat +0 -0
  391. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/doc/references.bib +0 -0
  392. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/pyproject.toml +0 -0
  393. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/BrainPrint/setup.py +0 -0
  394. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/__init__.py +0 -0
  395. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/__init__.pyi +0 -0
  396. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/.coveragerc +0 -0
  397. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/.gitattributes +0 -0
  398. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/.gitignore +0 -0
  399. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/.travis.yml +0 -0
  400. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/.vscode/launch.json +0 -0
  401. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/.vscode/settings.json +0 -0
  402. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/LICENSE.txt +0 -0
  403. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/MANIFEST.in +0 -0
  404. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/Makefile +0 -0
  405. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/README.rst +0 -0
  406. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/azure-pipelines.yml +0 -0
  407. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/h5io/__init__.py +0 -0
  408. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/h5io/_h5io.py +0 -0
  409. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/h5io/_version.py +0 -0
  410. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/h5io/chunked_array.py +0 -0
  411. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/h5io/chunked_list.py +0 -0
  412. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/h5io/tests/__init__.py +0 -0
  413. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/h5io/tests/test_chunked_array.py +0 -0
  414. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/h5io/tests/test_chunked_list.py +0 -0
  415. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/h5io/tests/test_io.py +0 -0
  416. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/setup.cfg +0 -0
  417. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/setup.py +0 -0
  418. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/h5io/versioneer.py +0 -0
  419. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/nilearn/__init__.py +0 -0
  420. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/nilearn/__init__.pyi +0 -0
  421. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/nilearn/junifer_connectivity_measure.py +0 -0
  422. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/nilearn/junifer_nifti_spheres_masker.py +0 -0
  423. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/nilearn/py.typed +0 -0
  424. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/nilearn/tests/test_junifer_connectivity_measure.py +0 -0
  425. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/nilearn/tests/test_junifer_nifti_spheres_masker.py +0 -0
  426. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/external/py.typed +0 -0
  427. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/__init__.py +0 -0
  428. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/__init__.pyi +0 -0
  429. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/brainprint.py +0 -0
  430. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/complexity/__init__.py +0 -0
  431. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/complexity/__init__.pyi +0 -0
  432. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/complexity/complexity_base.py +0 -0
  433. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/complexity/hurst_exponent.py +0 -0
  434. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/complexity/multiscale_entropy_auc.py +0 -0
  435. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/complexity/perm_entropy.py +0 -0
  436. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/complexity/py.typed +0 -0
  437. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/complexity/range_entropy.py +0 -0
  438. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/complexity/range_entropy_auc.py +0 -0
  439. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/complexity/sample_entropy.py +0 -0
  440. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/complexity/tests/test_complexity_base.py +0 -0
  441. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/complexity/weighted_perm_entropy.py +0 -0
  442. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/ets_rss.py +0 -0
  443. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/falff/__init__.py +0 -0
  444. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/falff/__init__.pyi +0 -0
  445. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/falff/_afni_falff.py +0 -0
  446. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/falff/_junifer_falff.py +0 -0
  447. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/falff/falff_base.py +0 -0
  448. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/falff/falff_maps.py +0 -0
  449. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/falff/falff_parcels.py +0 -0
  450. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/falff/falff_spheres.py +0 -0
  451. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/falff/py.typed +0 -0
  452. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/falff/tests/test_falff_maps.py +0 -0
  453. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/functional_connectivity/__init__.py +0 -0
  454. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/functional_connectivity/__init__.pyi +0 -0
  455. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/functional_connectivity/crossparcellation_functional_connectivity.py +0 -0
  456. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/functional_connectivity/edge_functional_connectivity_maps.py +0 -0
  457. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/functional_connectivity/edge_functional_connectivity_parcels.py +0 -0
  458. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/functional_connectivity/edge_functional_connectivity_spheres.py +0 -0
  459. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/functional_connectivity/functional_connectivity_base.py +0 -0
  460. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/functional_connectivity/functional_connectivity_maps.py +0 -0
  461. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/functional_connectivity/functional_connectivity_parcels.py +0 -0
  462. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/functional_connectivity/functional_connectivity_spheres.py +0 -0
  463. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/functional_connectivity/py.typed +0 -0
  464. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_maps.py +0 -0
  465. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_base.py +0 -0
  466. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_maps.py +0 -0
  467. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/maps_aggregation.py +0 -0
  468. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/parcel_aggregation.py +0 -0
  469. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/py.typed +0 -0
  470. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/reho/__init__.py +0 -0
  471. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/reho/__init__.pyi +0 -0
  472. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/reho/_afni_reho.py +0 -0
  473. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/reho/_junifer_reho.py +0 -0
  474. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/reho/py.typed +0 -0
  475. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/reho/reho_base.py +0 -0
  476. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/reho/reho_maps.py +0 -0
  477. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/reho/reho_parcels.py +0 -0
  478. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/reho/reho_spheres.py +0 -0
  479. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/reho/tests/test_junifer_reho.py +0 -0
  480. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/reho/tests/test_reho_maps.py +0 -0
  481. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/sphere_aggregation.py +0 -0
  482. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/temporal_snr/__init__.py +0 -0
  483. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/temporal_snr/__init__.pyi +0 -0
  484. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/temporal_snr/py.typed +0 -0
  485. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/temporal_snr/temporal_snr_maps.py +0 -0
  486. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/temporal_snr/temporal_snr_parcels.py +0 -0
  487. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/temporal_snr/temporal_snr_spheres.py +0 -0
  488. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/temporal_snr/tests/test_temporal_snr_base.py +0 -0
  489. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/tests/test_brainprint.py +0 -0
  490. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/tests/test_lost_regions.py +0 -0
  491. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/markers/tests/test_marker_utils.py +0 -0
  492. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/onthefly/__init__.py +0 -0
  493. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/onthefly/__init__.pyi +0 -0
  494. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/onthefly/_brainprint.py +0 -0
  495. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/onthefly/py.typed +0 -0
  496. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/onthefly/tests/test_read_transform.py +0 -0
  497. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/pipeline/__init__.py +0 -0
  498. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/pipeline/__init__.pyi +0 -0
  499. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/pipeline/_data_object_dumper.py +0 -0
  500. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/pipeline/marker_collection.py +0 -0
  501. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/pipeline/pipeline_component_registry.py +0 -0
  502. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/pipeline/pipeline_step_mixin.py +0 -0
  503. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/pipeline/py.typed +0 -0
  504. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/pipeline/tests/test_data_object_dumper.py +0 -0
  505. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/pipeline/tests/test_pipeline_step_mixin.py +0 -0
  506. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/pipeline/tests/test_update_meta_mixin.py +0 -0
  507. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/pipeline/tests/test_workdir_manager.py +0 -0
  508. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/pipeline/update_meta_mixin.py +0 -0
  509. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/pipeline/utils.py +0 -0
  510. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/pipeline/workdir_manager.py +0 -0
  511. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/__init__.py +0 -0
  512. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/__init__.pyi +0 -0
  513. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/_temporal_filter.py +0 -0
  514. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/_temporal_slicer.py +0 -0
  515. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/base.py +0 -0
  516. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/confounds/__init__.py +0 -0
  517. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/confounds/__init__.pyi +0 -0
  518. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/confounds/py.typed +0 -0
  519. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/confounds/tests/test_fmriprep_confound_remover.py +0 -0
  520. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/py.typed +0 -0
  521. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/smoothing/__init__.py +0 -0
  522. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/smoothing/__init__.pyi +0 -0
  523. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/smoothing/_afni_smoothing.py +0 -0
  524. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/smoothing/_fsl_smoothing.py +0 -0
  525. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/smoothing/_nilearn_smoothing.py +0 -0
  526. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/smoothing/py.typed +0 -0
  527. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/smoothing/smoothing.py +0 -0
  528. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/smoothing/tests/test_smoothing.py +0 -0
  529. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/tests/test_preprocess_base.py +0 -0
  530. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/tests/test_temporal_filter.py +0 -0
  531. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/tests/test_temporal_slicer.py +0 -0
  532. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/warping/__init__.py +0 -0
  533. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/warping/__init__.pyi +0 -0
  534. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/warping/_ants_warper.py +0 -0
  535. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/warping/_fsl_warper.py +0 -0
  536. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/warping/py.typed +0 -0
  537. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/warping/space_warper.py +0 -0
  538. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/preprocess/warping/tests/test_space_warper.py +0 -0
  539. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/py.typed +0 -0
  540. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/stats.py +0 -0
  541. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/storage/__init__.py +0 -0
  542. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/storage/__init__.pyi +0 -0
  543. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/storage/base.py +0 -0
  544. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/storage/hdf5.py +0 -0
  545. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/storage/pandas_base.py +0 -0
  546. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/storage/py.typed +0 -0
  547. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/storage/sqlite.py +0 -0
  548. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/storage/tests/test_hdf5.py +0 -0
  549. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/storage/tests/test_pandas_base.py +0 -0
  550. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/storage/tests/test_sqlite.py +0 -0
  551. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/storage/tests/test_storage_base.py +0 -0
  552. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/storage/tests/test_utils.py +0 -0
  553. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/storage/utils.py +0 -0
  554. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/testing/__init__.py +0 -0
  555. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/testing/__init__.pyi +0 -0
  556. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/testing/data/sub-0001_task-anticipation_acq-seq_desc-confounds_regressors.tsv +0 -0
  557. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/testing/datagrabbers.py +0 -0
  558. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/testing/py.typed +0 -0
  559. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/testing/registry.py +0 -0
  560. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/testing/tests/test_adhdtesting_datagrabber.py +0 -0
  561. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/testing/tests/test_oasisvmbtesting_datagrabber.py +0 -0
  562. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/testing/tests/test_partlycloudytesting_datagrabber.py +0 -0
  563. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/testing/tests/test_spmauditory_datagrabber.py +0 -0
  564. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/testing/tests/test_testing_registry.py +0 -0
  565. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/testing/tests/test_testing_utils.py +0 -0
  566. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/testing/tests/test_uclacnpvbmtesting_datagrabber.py +0 -0
  567. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/testing/utils.py +0 -0
  568. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/tests/test_main.py +0 -0
  569. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/tests/test_stats.py +0 -0
  570. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/typing/__init__.py +0 -0
  571. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/typing/__init__.pyi +0 -0
  572. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/typing/_typing.py +0 -0
  573. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/typing/py.typed +0 -0
  574. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/utils/__init__.py +0 -0
  575. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/utils/__init__.pyi +0 -0
  576. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/utils/_config.py +0 -0
  577. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/utils/_yaml.py +0 -0
  578. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/utils/fs.py +0 -0
  579. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/utils/helpers.py +0 -0
  580. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/utils/logging.py +0 -0
  581. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/utils/py.typed +0 -0
  582. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/utils/singleton.py +0 -0
  583. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/utils/tests/test_config.py +0 -0
  584. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/utils/tests/test_fs.py +0 -0
  585. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/utils/tests/test_helpers.py +0 -0
  586. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer/utils/tests/test_logging.py +0 -0
  587. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer.egg-info/dependency_links.txt +0 -0
  588. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer.egg-info/entry_points.txt +0 -0
  589. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer.egg-info/requires.txt +0 -0
  590. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/junifer.egg-info/top_level.txt +0 -0
  591. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/justfile +0 -0
  592. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/scripts/start.sh +0 -0
  593. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/setup.cfg +0 -0
  594. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/setup.py +0 -0
  595. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/tools/create_aomic1000_example_dataset.py +0 -0
  596. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/tools/create_aomicpiop1_example_dataset.py +0 -0
  597. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/tools/create_aomicpiop2_example_dataset.py +0 -0
  598. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/tools/create_bids_example_dataset.py +0 -0
  599. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/tools/create_bids_example_dataset_sessions.py +0 -0
  600. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/tools/create_dmcc13_benchmark_example_dataset.py +0 -0
  601. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/tools/create_hcp1200_example_dataset.py +0 -0
  602. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/tox.ini +0 -0
  603. {junifer-0.0.8.dev290 → junifer-0.0.8.dev298}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: junifer
3
- Version: 0.0.8.dev290
3
+ Version: 0.0.8.dev298
4
4
  Summary: JUelich NeuroImaging FEature extractoR
5
5
  Author-email: Fede Raimondo <f.raimondo@fz-juelich.de>, Synchon Mandal <s.mandal@fz-juelich.de>
6
6
  Maintainer-email: Fede Raimondo <f.raimondo@fz-juelich.de>, Synchon Mandal <s.mandal@fz-juelich.de>
@@ -0,0 +1 @@
1
+ Fix :class:`.TemporalSNRParcels`, :class:`.TemporalSNRSpheres` and :class:`.TemporalSNRMaps` replacing the BOLD data with the tSNR map, so the markers computed after them in a pipeline used the tSNR map instead of the BOLD data by `Fede Raimondo`_
@@ -0,0 +1 @@
1
+ Raise an error if a marker changes its input data (which is shared with the other markers of a pipeline), checking the values and their contents (arrays, data frames and images) by `Fede Raimondo`_
@@ -0,0 +1 @@
1
+ Use :class:`.HDF5FeatureStorage` instead of :class:`.SQLiteFeatureStorage` in the tests and documentation, as the latter is only kept for compatibility, and fix the component registry test leaving components de-registered by `Fede Raimondo`_
@@ -21,7 +21,7 @@ The :ref:`Markers <marker>` are responsible for mapping the input
21
21
  :ref:`data type <data_types>` to its output :ref:`storage type <storage_types>`
22
22
  as shown :ref:`here <extending_markers_input_output>`.
23
23
  The storage object in turn declares and provides implementation for
24
- specific *storage type*. For example, :class:`.SQLiteFeatureStorage` supports
24
+ specific *storage type*. For example, :class:`.HDF5FeatureStorage` supports
25
25
  saving ``matrix``, ``vector`` and ``timeseries`` via ``store_matrix``,
26
26
  ``store_vector`` and ``store_timeseries`` methods respectively.
27
27
 
@@ -88,3 +88,10 @@ Storage Interfaces
88
88
  - ``.hdf5``
89
89
  - HDF5
90
90
  - ``matrix``, ``vector``, ``timeseries``, ``timeseries_2d``, ``scalar_table``
91
+
92
+ .. note::
93
+
94
+ :class:`.HDF5FeatureStorage` is the recommended storage.
95
+ :class:`.SQLiteFeatureStorage` is only kept for compatibility with features
96
+ stored in previous versions of ``junifer`` and should not be used for new
97
+ analyses.
@@ -130,8 +130,8 @@ First we load the storage like so:
130
130
 
131
131
  from junifer.storage import HDF5FeatureStorage
132
132
 
133
- # You need to import and use SQLiteFeatureStorage if you chose that
134
- # for storage while extracting features
133
+ # If the features were stored with the legacy SQLiteFeatureStorage,
134
+ # import and use that class instead
135
135
  storage = HDF5FeatureStorage("<path/to/your/collected/file>")
136
136
 
137
137
  The best way to start analysing would be to list all the extracted features
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
18
18
  commit_id: str | None
19
19
  __commit_id__: str | None
20
20
 
21
- __version__ = version = '0.0.8.dev290'
22
- __version_tuple__ = version_tuple = (0, 0, 8, 'dev290')
21
+ __version__ = version = '0.0.8.dev298'
22
+ __version_tuple__ = version_tuple = (0, 0, 8, 'dev298')
23
23
 
24
- __commit_id__ = commit_id = 'g64fd8e96c'
24
+ __commit_id__ = commit_id = 'g30ddf7410'
@@ -92,7 +92,7 @@ def markers() -> list[dict[str, list[str] | str]]:
92
92
  def storage() -> dict[str, str]:
93
93
  """Return a storage as a dictionary."""
94
94
  return {
95
- "kind": "SQLiteFeatureStorage",
95
+ "kind": "HDF5FeatureStorage",
96
96
  }
97
97
 
98
98
 
@@ -158,7 +158,7 @@ def test_run_single_element(
158
158
 
159
159
  """
160
160
  # Set storage
161
- storage["uri"] = str((tmp_path / "out.sqlite").resolve())
161
+ storage["uri"] = str((tmp_path / "out.hdf5").resolve())
162
162
  # Run operations
163
163
  with expect:
164
164
  run(
@@ -169,7 +169,7 @@ def test_run_single_element(
169
169
  elements=element,
170
170
  )
171
171
  # Check files
172
- files = list(tmp_path.glob("*.sqlite"))
172
+ files = list(tmp_path.glob("*.hdf5"))
173
173
  assert len(files) == 1
174
174
 
175
175
 
@@ -191,7 +191,7 @@ def test_run_single_element_with_preprocessing(
191
191
 
192
192
  """
193
193
  # Set storage
194
- storage["uri"] = str((tmp_path / "out.sqlite").resolve())
194
+ storage["uri"] = str((tmp_path / "out.hdf5").resolve())
195
195
  # Run operations
196
196
  run(
197
197
  workdir={"path": tmp_path, "cleanup": False},
@@ -209,7 +209,7 @@ def test_run_single_element_with_preprocessing(
209
209
  elements=["sub-01"],
210
210
  )
211
211
  # Check files
212
- files = list(tmp_path.glob("*.sqlite"))
212
+ files = list(tmp_path.glob("*.hdf5"))
213
213
  assert len(files) == 1
214
214
 
215
215
 
@@ -250,7 +250,7 @@ def test_run_multi_element_multi_output(
250
250
 
251
251
  """
252
252
  # Set storage
253
- storage["uri"] = str((tmp_path / "out.sqlite").resolve())
253
+ storage["uri"] = str((tmp_path / "out.hdf5").resolve())
254
254
  storage["single_output"] = False # type: ignore
255
255
  # Run operations
256
256
  with expect:
@@ -262,7 +262,7 @@ def test_run_multi_element_multi_output(
262
262
  elements=element,
263
263
  )
264
264
  # Check files
265
- files = list(tmp_path.glob("*.sqlite"))
265
+ files = list(tmp_path.glob("*.hdf5"))
266
266
  assert len(files) == 2
267
267
 
268
268
 
@@ -287,7 +287,7 @@ def test_run_multi_element_single_output(
287
287
 
288
288
  """
289
289
  # Set storage
290
- storage["uri"] = str((tmp_path / "out.sqlite").resolve())
290
+ storage["uri"] = str((tmp_path / "out.hdf5").resolve())
291
291
  storage["single_output"] = True # type: ignore
292
292
  # Run operations
293
293
  run(
@@ -298,9 +298,9 @@ def test_run_multi_element_single_output(
298
298
  elements=["sub-01", "sub-03"],
299
299
  )
300
300
  # Check files
301
- files = list(tmp_path.glob("*.sqlite"))
301
+ files = list(tmp_path.glob("*.hdf5"))
302
302
  assert len(files) == 1
303
- assert files[0].name == "out.sqlite"
303
+ assert files[0].name == "out.hdf5"
304
304
 
305
305
 
306
306
  def test_run_and_collect(
@@ -324,7 +324,7 @@ def test_run_and_collect(
324
324
 
325
325
  """
326
326
  # Set storage
327
- uri = tmp_path / "out.sqlite"
327
+ uri = tmp_path / "out.hdf5"
328
328
  storage["uri"] = str(uri.resolve())
329
329
  storage["single_output"] = False # type: ignore
330
330
  # Run operations
@@ -343,9 +343,9 @@ def test_run_and_collect(
343
343
  )
344
344
  elements = dg.get_elements() # type: ignore
345
345
  # This should create one file per element
346
- files = list(tmp_path.glob("*.sqlite"))
346
+ files = list(tmp_path.glob("*.hdf5"))
347
347
  assert len(files) == len(elements)
348
- # But the test.sqlite file should not exist
348
+ # But the test.hdf5 file should not exist
349
349
  assert not uri.exists()
350
350
  # Collect in storage
351
351
  collect(storage)
@@ -660,7 +660,7 @@ def test_reset_run(
660
660
 
661
661
  """
662
662
  # Create storage
663
- storage["uri"] = tmp_path / "test_reset_run.sqlite" # type: ignore
663
+ storage["uri"] = tmp_path / "test_reset_run.hdf5" # type: ignore
664
664
  # Run operation to generate files
665
665
  run(
666
666
  workdir=tmp_path,
@@ -711,7 +711,7 @@ def test_reset_queue(
711
711
  with monkeypatch.context() as m:
712
712
  m.chdir(tmp_path)
713
713
  # Create storage
714
- storage["uri"] = "test_reset_queue.sqlite"
714
+ storage["uri"] = "test_reset_queue.hdf5"
715
715
  # Set job name
716
716
  if job_name is None:
717
717
  job_name = "junifer_job"
@@ -10,5 +10,5 @@ markers:
10
10
  parcellation: TianxS2x3TxMNInonlinear2009cAsym
11
11
  method: mean
12
12
  storage:
13
- kind: SQLiteFeatureStorage
14
- uri: /Users/fraimondo/dev/tbox/junifer/scratch/db/test.sqlite
13
+ kind: HDF5FeatureStorage
14
+ uri: /Users/fraimondo/dev/tbox/junifer/scratch/db/test.hdf5
@@ -9,8 +9,8 @@ markers:
9
9
  parcellation: TianxS2x3TxMNInonlinear2009cAsym
10
10
  method: mean
11
11
  storage:
12
- kind: SQLiteFeatureStorage
13
- uri: /Users/fraimondo/dev/tbox/junifer/scratch/db/test.sqlite
12
+ kind: HDF5FeatureStorage
13
+ uri: /Users/fraimondo/dev/tbox/junifer/scratch/db/test.hdf5
14
14
  queue:
15
15
  jobname: TestHTCondorQueue
16
16
  kind: HTCondor
@@ -222,7 +222,7 @@ def test_queue(tmp_path: Path, monkeypatch: pytest.MonkeyPatch) -> None:
222
222
  # Working directory
223
223
  contents["workdir"] = str(tmp_path.resolve())
224
224
  # Storage
225
- contents["storage"]["uri"] = str((tmp_path / "out.sqlite").resolve())
225
+ contents["storage"]["uri"] = str((tmp_path / "out.hdf5").resolve())
226
226
  # Write new test config
227
227
  outfile = tmp_path / "in.yaml"
228
228
  yaml.dump(contents, stream=outfile)
@@ -274,7 +274,7 @@ def test_reset(
274
274
  # Working directory
275
275
  contents["workdir"] = str(tmp_path.resolve())
276
276
  # Storage
277
- contents["storage"]["uri"] = str((tmp_path / "out.sqlite").resolve())
277
+ contents["storage"]["uri"] = str((tmp_path / "out.hdf5").resolve())
278
278
  # Write new test config
279
279
  outfile = tmp_path / "in.yaml"
280
280
  yaml.dump(contents, stream=outfile)
@@ -16,10 +16,12 @@ from ..pipeline import PipelineStepMixin, UpdateMetaMixin
16
16
  from ..storage import StorageType
17
17
  from ..typing import MarkerInOutMappings, StorageLike
18
18
  from ..utils import ensure_list_or_none, raise_error
19
+ from .utils import _changed_paths, _fingerprint
19
20
 
20
21
 
21
22
  __all__ = ["BaseMarker"]
22
23
 
24
+
23
25
  _log = structlog.get_logger("junifer")
24
26
  logger = _log.bind(pkg="markers", step="marker")
25
27
 
@@ -212,7 +214,7 @@ class BaseMarker(BaseModel, ABC, PipelineStepMixin, UpdateMetaMixin):
212
214
  output : dict
213
215
  The computed result as a dictionary to store.
214
216
  storage : storage-like
215
- The storage class, for example, SQLiteFeatureStorage.
217
+ The storage class, for example, HDF5FeatureStorage.
216
218
 
217
219
  """
218
220
  s_type = self.storage_type(data_type, feature)
@@ -231,7 +233,7 @@ class BaseMarker(BaseModel, ABC, PipelineStepMixin, UpdateMetaMixin):
231
233
  input : dict
232
234
  The Junifer Data object.
233
235
  storage : storage-like, optional
234
- The storage class, for example, SQLiteFeatureStorage.
236
+ The storage class, for example, HDF5FeatureStorage.
235
237
 
236
238
  Returns
237
239
  -------
@@ -257,8 +259,17 @@ class BaseMarker(BaseModel, ABC, PipelineStepMixin, UpdateMetaMixin):
257
259
  # Copy metadata
258
260
  t_meta = t_input["meta"].copy()
259
261
  t_meta["type"] = t.value
260
- # Compute marker
262
+ # Compute marker, checking it does not change the data, as
263
+ # it is shared with the markers computed afterwards
264
+ fingerprint = _fingerprint(input)
261
265
  t_out = self.compute(input=t_input, extra_input=extra_input)
266
+ changed = _changed_paths(fingerprint, _fingerprint(input))
267
+ if changed:
268
+ raise_error(
269
+ f"Marker {self.name} changed its input data, which is "
270
+ f"shared with the other markers: {', '.join(changed)}",
271
+ klass=RuntimeError,
272
+ )
262
273
  # Initialize empty dictionary if no storage object is provided
263
274
  if storage is None:
264
275
  out[t] = {}
@@ -15,7 +15,7 @@ pytest.importorskip("neurokit2")
15
15
  from junifer.datagrabber import DataType
16
16
  from junifer.datareader import DefaultDataReader
17
17
  from junifer.markers.complexity import HurstExponent
18
- from junifer.storage import SQLiteFeatureStorage
18
+ from junifer.storage import HDF5FeatureStorage
19
19
  from junifer.testing.datagrabbers import (
20
20
  PartlyCloudyTestingDataGrabber,
21
21
  )
@@ -83,6 +83,6 @@ def test_store(element_data: dict, tmp_path: Path) -> None:
83
83
  # Initialize the marker
84
84
  marker = HurstExponent(parcellation=PARCELLATION)
85
85
  # Create storage
86
- storage = SQLiteFeatureStorage(uri=tmp_path / "test_hurst_exponent.sqlite")
86
+ storage = HDF5FeatureStorage(uri=tmp_path / "test_hurst_exponent.hdf5")
87
87
  # Compute the marker and store
88
88
  marker.fit_transform(input=element_data, storage=storage)
@@ -15,7 +15,7 @@ pytest.importorskip("neurokit2")
15
15
  from junifer.datagrabber import DataType
16
16
  from junifer.datareader import DefaultDataReader
17
17
  from junifer.markers.complexity import MultiscaleEntropyAUC
18
- from junifer.storage import SQLiteFeatureStorage
18
+ from junifer.storage import HDF5FeatureStorage
19
19
  from junifer.testing.datagrabbers import (
20
20
  PartlyCloudyTestingDataGrabber,
21
21
  )
@@ -83,8 +83,8 @@ def test_store(element_data: dict, tmp_path: Path) -> None:
83
83
  # Initialize the marker
84
84
  marker = MultiscaleEntropyAUC(parcellation=PARCELLATION)
85
85
  # Create storage
86
- storage = SQLiteFeatureStorage(
87
- uri=tmp_path / "test_multiscale_entropy_auc.sqlite"
86
+ storage = HDF5FeatureStorage(
87
+ uri=tmp_path / "test_multiscale_entropy_auc.hdf5"
88
88
  )
89
89
  # Compute the marker and store
90
90
  marker.fit_transform(input=element_data, storage=storage)
@@ -15,7 +15,7 @@ pytest.importorskip("neurokit2")
15
15
  from junifer.datagrabber import DataType
16
16
  from junifer.datareader import DefaultDataReader
17
17
  from junifer.markers.complexity import PermEntropy
18
- from junifer.storage import SQLiteFeatureStorage
18
+ from junifer.storage import HDF5FeatureStorage
19
19
  from junifer.testing.datagrabbers import (
20
20
  PartlyCloudyTestingDataGrabber,
21
21
  )
@@ -83,6 +83,6 @@ def test_store(element_data: dict, tmp_path: Path) -> None:
83
83
  # Initialize the marker
84
84
  marker = PermEntropy(parcellation=PARCELLATION)
85
85
  # Create storage
86
- storage = SQLiteFeatureStorage(uri=tmp_path / "test_perm_entropy.sqlite")
86
+ storage = HDF5FeatureStorage(uri=tmp_path / "test_perm_entropy.hdf5")
87
87
  # Compute the marker and store
88
88
  marker.fit_transform(input=element_data, storage=storage)
@@ -15,7 +15,7 @@ pytest.importorskip("neurokit2")
15
15
  from junifer.datagrabber import DataType
16
16
  from junifer.datareader import DefaultDataReader
17
17
  from junifer.markers.complexity import RangeEntropy
18
- from junifer.storage import SQLiteFeatureStorage
18
+ from junifer.storage import HDF5FeatureStorage
19
19
  from junifer.testing.datagrabbers import (
20
20
  PartlyCloudyTestingDataGrabber,
21
21
  )
@@ -83,6 +83,6 @@ def test_store(element_data: dict, tmp_path: Path) -> None:
83
83
  # Initialize the marker
84
84
  marker = RangeEntropy(parcellation=PARCELLATION)
85
85
  # Create storage
86
- storage = SQLiteFeatureStorage(uri=tmp_path / "test_range_entropy.sqlite")
86
+ storage = HDF5FeatureStorage(uri=tmp_path / "test_range_entropy.hdf5")
87
87
  # Compute the marker and store
88
88
  marker.fit_transform(input=element_data, storage=storage)
@@ -15,7 +15,7 @@ pytest.importorskip("neurokit2")
15
15
  from junifer.datagrabber import DataType
16
16
  from junifer.datareader import DefaultDataReader
17
17
  from junifer.markers.complexity import RangeEntropyAUC
18
- from junifer.storage import SQLiteFeatureStorage
18
+ from junifer.storage import HDF5FeatureStorage
19
19
  from junifer.testing.datagrabbers import (
20
20
  PartlyCloudyTestingDataGrabber,
21
21
  )
@@ -83,8 +83,6 @@ def test_store(element_data: dict, tmp_path: Path) -> None:
83
83
  # Initialize the marker
84
84
  marker = RangeEntropyAUC(parcellation=PARCELLATION)
85
85
  # Create storage
86
- storage = SQLiteFeatureStorage(
87
- uri=tmp_path / "test_range_entropy_auc.sqlite"
88
- )
86
+ storage = HDF5FeatureStorage(uri=tmp_path / "test_range_entropy_auc.hdf5")
89
87
  # Compute the marker and store
90
88
  marker.fit_transform(input=element_data, storage=storage)
@@ -15,7 +15,7 @@ pytest.importorskip("neurokit2")
15
15
  from junifer.datagrabber import DataType
16
16
  from junifer.datareader import DefaultDataReader
17
17
  from junifer.markers.complexity import SampleEntropy
18
- from junifer.storage import SQLiteFeatureStorage
18
+ from junifer.storage import HDF5FeatureStorage
19
19
  from junifer.testing.datagrabbers import (
20
20
  PartlyCloudyTestingDataGrabber,
21
21
  )
@@ -83,6 +83,6 @@ def test_store(element_data: dict, tmp_path: Path) -> None:
83
83
  # Initialize the marker
84
84
  marker = SampleEntropy(parcellation=PARCELLATION)
85
85
  # Create storage
86
- storage = SQLiteFeatureStorage(uri=tmp_path / "test_sample_entropy.sqlite")
86
+ storage = HDF5FeatureStorage(uri=tmp_path / "test_sample_entropy.hdf5")
87
87
  # Compute the marker and store
88
88
  marker.fit_transform(input=element_data, storage=storage)
@@ -15,7 +15,7 @@ pytest.importorskip("neurokit2")
15
15
  from junifer.datagrabber import DataType
16
16
  from junifer.datareader import DefaultDataReader
17
17
  from junifer.markers.complexity import WeightedPermEntropy
18
- from junifer.storage import SQLiteFeatureStorage
18
+ from junifer.storage import HDF5FeatureStorage
19
19
  from junifer.testing.datagrabbers import (
20
20
  PartlyCloudyTestingDataGrabber,
21
21
  )
@@ -83,8 +83,8 @@ def test_store(element_data: dict, tmp_path: Path) -> None:
83
83
  # Initialize the marker
84
84
  marker = WeightedPermEntropy(parcellation=PARCELLATION)
85
85
  # Create storage
86
- storage = SQLiteFeatureStorage(
87
- uri=tmp_path / "test_weighted_perm_entropy.sqlite"
86
+ storage = HDF5FeatureStorage(
87
+ uri=tmp_path / "test_weighted_perm_entropy.hdf5"
88
88
  )
89
89
  # Compute the marker and store
90
90
  marker.fit_transform(input=element_data, storage=storage)
@@ -15,7 +15,7 @@ from junifer.datareader import DefaultDataReader
15
15
  from junifer.markers import ALFFImpl, ALFFParcels
16
16
  from junifer.pipeline import WorkDirManager
17
17
  from junifer.pipeline.utils import _check_afni
18
- from junifer.storage import SQLiteFeatureStorage
18
+ from junifer.storage import HDF5FeatureStorage
19
19
  from junifer.testing.datagrabbers import PartlyCloudyTestingDataGrabber
20
20
 
21
21
 
@@ -90,9 +90,7 @@ def test_ALFFParcels(caplog: pytest.LogCaptureFixture, tmp_path: Path) -> None:
90
90
  # Reset log capture
91
91
  caplog.clear()
92
92
  # Initialize storage
93
- storage = SQLiteFeatureStorage(
94
- uri=tmp_path / "falff_parcels.sqlite"
95
- )
93
+ storage = HDF5FeatureStorage(uri=tmp_path / "falff_parcels.hdf5")
96
94
  # Fit transform marker on data with storage
97
95
  marker.fit_transform(
98
96
  input=element_data,
@@ -15,7 +15,7 @@ from junifer.datareader import DefaultDataReader
15
15
  from junifer.markers import ALFFImpl, ALFFSpheres
16
16
  from junifer.pipeline import WorkDirManager
17
17
  from junifer.pipeline.utils import _check_afni
18
- from junifer.storage import SQLiteFeatureStorage
18
+ from junifer.storage import HDF5FeatureStorage
19
19
  from junifer.testing.datagrabbers import PartlyCloudyTestingDataGrabber
20
20
 
21
21
 
@@ -93,9 +93,7 @@ def test_ALFFSpheres(caplog: pytest.LogCaptureFixture, tmp_path: Path) -> None:
93
93
  # Reset log capture
94
94
  caplog.clear()
95
95
  # Initialize storage
96
- storage = SQLiteFeatureStorage(
97
- uri=tmp_path / "falff_spheres.sqlite"
98
- )
96
+ storage = HDF5FeatureStorage(uri=tmp_path / "falff_spheres.hdf5")
99
97
  # Fit transform marker on data with storage
100
98
  marker.fit_transform(
101
99
  input=element_data,
@@ -13,7 +13,7 @@ from junifer.datagrabber import DataType
13
13
  from junifer.datareader import DefaultDataReader
14
14
  from junifer.markers import CrossParcellationFC
15
15
  from junifer.pipeline import WorkDirManager
16
- from junifer.storage import SQLiteFeatureStorage, Upsert
16
+ from junifer.storage import HDF5FeatureStorage
17
17
  from junifer.testing.datagrabbers import PartlyCloudyTestingDataGrabber
18
18
 
19
19
 
@@ -85,9 +85,8 @@ def test_store(tmp_path: Path) -> None:
85
85
  parcellation_two=parcellation_two,
86
86
  corr_method="spearman",
87
87
  )
88
- storage = SQLiteFeatureStorage(
89
- uri=tmp_path / "test_crossparcellation.sqlite",
90
- upsert=Upsert.Ignore,
88
+ storage = HDF5FeatureStorage(
89
+ uri=tmp_path / "test_crossparcellation.hdf5",
91
90
  )
92
91
  # Fit transform marker on data with storage
93
92
  crossparcellation.fit_transform(input=element_data, storage=storage)
@@ -11,7 +11,7 @@ import pytest
11
11
  from junifer.datagrabber import DataType
12
12
  from junifer.datareader import DefaultDataReader
13
13
  from junifer.markers.functional_connectivity import EdgeCentricFCParcels
14
- from junifer.storage import SQLiteFeatureStorage, Upsert
14
+ from junifer.storage import HDF5FeatureStorage
15
15
  from junifer.testing.datagrabbers import PartlyCloudyTestingDataGrabber
16
16
 
17
17
 
@@ -67,8 +67,8 @@ def test_EdgeCentricFCParcels(
67
67
  assert len(set(edge_fc_bold["col_names"])) == n_edges
68
68
 
69
69
  # Store
70
- storage = SQLiteFeatureStorage(
71
- uri=tmp_path / "test_edge_fc_parcels.sqlite", upsert=Upsert.Ignore
70
+ storage = HDF5FeatureStorage(
71
+ uri=tmp_path / "test_edge_fc_parcels.hdf5",
72
72
  )
73
73
  marker.fit_transform(input=element_data, storage=storage)
74
74
  features = storage.list_features()
@@ -11,7 +11,7 @@ import pytest
11
11
  from junifer.datagrabber import DataType
12
12
  from junifer.datareader import DefaultDataReader
13
13
  from junifer.markers.functional_connectivity import EdgeCentricFCSpheres
14
- from junifer.storage import SQLiteFeatureStorage, Upsert
14
+ from junifer.storage import HDF5FeatureStorage
15
15
  from junifer.testing.datagrabbers import SPMAuditoryTestingDataGrabber
16
16
 
17
17
 
@@ -69,8 +69,8 @@ def test_EdgeCentricFCSpheres(
69
69
  assert len(set(edge_fc_bold["col_names"])) == n_edges
70
70
 
71
71
  # Store
72
- storage = SQLiteFeatureStorage(
73
- uri=tmp_path / "test_edge_fc_spheres.sqlite", upsert=Upsert.Ignore
72
+ storage = HDF5FeatureStorage(
73
+ uri=tmp_path / "test_edge_fc_spheres.hdf5",
74
74
  )
75
75
  marker.fit_transform(input=element_data, storage=storage)
76
76
  features = storage.list_features()
@@ -20,7 +20,7 @@ from junifer.datareader import DefaultDataReader
20
20
  from junifer.markers import (
21
21
  FunctionalConnectivityParcels,
22
22
  )
23
- from junifer.storage import SQLiteFeatureStorage, Upsert
23
+ from junifer.storage import HDF5FeatureStorage
24
24
  from junifer.testing.datagrabbers import PartlyCloudyTestingDataGrabber
25
25
 
26
26
 
@@ -105,8 +105,8 @@ def test_FunctionalConnectivityParcels(
105
105
  )
106
106
 
107
107
  # Store
108
- storage = SQLiteFeatureStorage(
109
- uri=tmp_path / "test_fc_parcels.sqlite", upsert=Upsert.Ignore
108
+ storage = HDF5FeatureStorage(
109
+ uri=tmp_path / "test_fc_parcels.hdf5",
110
110
  )
111
111
  marker.fit_transform(input=element_data, storage=storage)
112
112
  features = storage.list_features()
@@ -21,7 +21,7 @@ from junifer.datareader import DefaultDataReader
21
21
  from junifer.markers.functional_connectivity import (
22
22
  FunctionalConnectivitySpheres,
23
23
  )
24
- from junifer.storage import SQLiteFeatureStorage, Upsert
24
+ from junifer.storage import HDF5FeatureStorage
25
25
  from junifer.testing.datagrabbers import SPMAuditoryTestingDataGrabber
26
26
 
27
27
 
@@ -106,8 +106,8 @@ def test_FunctionalConnectivitySpheres(
106
106
  )
107
107
 
108
108
  # Store
109
- storage = SQLiteFeatureStorage(
110
- uri=tmp_path / "test_fc_spheres.sqlite", upsert=Upsert.Ignore
109
+ storage = HDF5FeatureStorage(
110
+ uri=tmp_path / "test_fc_spheres.hdf5",
111
111
  )
112
112
  marker.fit_transform(input=element_data, storage=storage)
113
113
  features = storage.list_features()
@@ -14,7 +14,7 @@ from junifer.datareader import DefaultDataReader
14
14
  from junifer.markers import ReHoImpl, ReHoParcels
15
15
  from junifer.pipeline import WorkDirManager
16
16
  from junifer.pipeline.utils import _check_afni
17
- from junifer.storage import SQLiteFeatureStorage
17
+ from junifer.storage import HDF5FeatureStorage
18
18
  from junifer.testing.datagrabbers import (
19
19
  ADHDTestingDataGrabber,
20
20
  PartlyCloudyTestingDataGrabber,
@@ -74,9 +74,7 @@ def test_ReHoParcels(caplog: pytest.LogCaptureFixture, tmp_path: Path) -> None:
74
74
  # Reset log capture
75
75
  caplog.clear()
76
76
  # Initialize storage
77
- storage = SQLiteFeatureStorage(
78
- uri=tmp_path / "reho_parcels.sqlite"
79
- )
77
+ storage = HDF5FeatureStorage(uri=tmp_path / "reho_parcels.hdf5")
80
78
  # Fit transform marker on data with storage
81
79
  marker.fit_transform(
82
80
  input=element_data,
@@ -14,7 +14,7 @@ from junifer.datareader import DefaultDataReader
14
14
  from junifer.markers import ReHoImpl, ReHoSpheres
15
15
  from junifer.pipeline import WorkDirManager
16
16
  from junifer.pipeline.utils import _check_afni
17
- from junifer.storage import SQLiteFeatureStorage
17
+ from junifer.storage import HDF5FeatureStorage
18
18
  from junifer.testing.datagrabbers import SPMAuditoryTestingDataGrabber
19
19
 
20
20
 
@@ -72,9 +72,7 @@ def test_ReHoSpheres(caplog: pytest.LogCaptureFixture, tmp_path: Path) -> None:
72
72
  # Reset log capture
73
73
  caplog.clear()
74
74
  # Initialize storage
75
- storage = SQLiteFeatureStorage(
76
- uri=tmp_path / "reho_spheres.sqlite"
77
- )
75
+ storage = HDF5FeatureStorage(uri=tmp_path / "reho_spheres.hdf5")
78
76
  # Fit transform marker on data with storage
79
77
  marker.fit_transform(
80
78
  input=element_data,
@@ -104,7 +104,9 @@ class TemporalSNRBase(BaseMarker):
104
104
  "img.std(axis=-1).squeeze()", img=input["data"]
105
105
  )
106
106
  mask_img = nimg.math_img("(stdv_img != 0)", stdv_img=stdv_img)
107
- input["data"] = nimg.math_img(
107
+ # Aggregate the tSNR image, without changing the input
108
+ aggregation_input = dict(input.items())
109
+ aggregation_input["data"] = nimg.math_img(
108
110
  "np.divide(mean_img, stdv_img, where=mask_img.astype(bool))",
109
111
  mean_img=mean_img,
110
112
  stdv_img=stdv_img,
@@ -113,8 +115,8 @@ class TemporalSNRBase(BaseMarker):
113
115
  # Perform necessary aggregation and return
114
116
  return {
115
117
  "tsnr": {
116
- **self.aggregate(input=input, extra_input=extra_input)[
117
- "aggregation"
118
- ]
118
+ **self.aggregate(
119
+ input=aggregation_input, extra_input=extra_input
120
+ )["aggregation"]
119
121
  }
120
122
  }
@@ -28,7 +28,10 @@ def test_TemporalSNRMaps_computation() -> None:
28
28
  input_type=DataType.BOLD, output_feature="tsnr"
29
29
  )
30
30
  # Fit-transform the data
31
+ bold_img = element_data["BOLD"]["data"]
31
32
  tsnr_parcels = marker.fit_transform(element_data)
33
+ # The input is not changed
34
+ assert element_data["BOLD"]["data"] is bold_img
32
35
  tsnr_parcels_bold = tsnr_parcels["BOLD"]["tsnr"]
33
36
 
34
37
  assert "data" in tsnr_parcels_bold
@@ -30,7 +30,10 @@ def test_TemporalSNRParcels_computation() -> None:
30
30
  input_type=DataType.BOLD, output_feature="tsnr"
31
31
  )
32
32
  # Fit-transform the data
33
+ bold_img = element_data["BOLD"]["data"]
33
34
  tsnr_parcels = marker.fit_transform(element_data)
35
+ # The input is not changed
36
+ assert element_data["BOLD"]["data"] is bold_img
34
37
  tsnr_parcels_bold = tsnr_parcels["BOLD"]["tsnr"]
35
38
 
36
39
  assert "data" in tsnr_parcels_bold