junifer 0.0.6.dev154__tar.gz → 0.0.6.dev194__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 (482) hide show
  1. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.github/workflows/docs.yml +4 -5
  2. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/Dockerfile-ci +3 -3
  3. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/PKG-INFO +1 -1
  4. junifer-0.0.6.dev194/docs/api/data.rst +6 -0
  5. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/api/pipeline.rst +0 -6
  6. junifer-0.0.6.dev194/docs/changes/newsfragments/362.feature +1 -0
  7. junifer-0.0.6.dev194/docs/changes/newsfragments/387.change +1 -0
  8. junifer-0.0.6.dev194/docs/changes/newsfragments/387.feature +1 -0
  9. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/extending/coordinates.rst +23 -10
  10. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/extending/masks.rst +21 -7
  11. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/extending/parcellations.rst +18 -7
  12. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/using/masks.rst +2 -2
  13. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/whats_new.rst +12 -12
  14. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/__init__.pyi +2 -0
  15. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/_version.py +2 -2
  16. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/decorators.py +6 -11
  17. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/functions.py +74 -62
  18. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/tests/test_functions.py +2 -2
  19. junifer-0.0.6.dev194/junifer/data/__init__.pyi +29 -0
  20. junifer-0.0.6.dev194/junifer/data/_dispatch.py +251 -0
  21. junifer-0.0.6.dev194/junifer/data/coordinates/__init__.py +9 -0
  22. junifer-0.0.6.dev194/junifer/data/coordinates/__init__.pyi +5 -0
  23. junifer-0.0.6.dev194/junifer/data/coordinates/_ants_coordinates_warper.py +96 -0
  24. junifer-0.0.6.dev194/junifer/data/coordinates/_coordinates.py +356 -0
  25. junifer-0.0.6.dev194/junifer/data/coordinates/_fsl_coordinates_warper.py +83 -0
  26. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/tests/test_coordinates.py +25 -31
  27. junifer-0.0.6.dev194/junifer/data/masks/__init__.py +9 -0
  28. junifer-0.0.6.dev194/junifer/data/masks/__init__.pyi +6 -0
  29. junifer-0.0.6.dev194/junifer/data/masks/_ants_mask_warper.py +144 -0
  30. junifer-0.0.6.dev194/junifer/data/masks/_fsl_mask_warper.py +87 -0
  31. junifer-0.0.6.dev194/junifer/data/masks/_masks.py +624 -0
  32. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/masks}/tests/test_masks.py +63 -58
  33. junifer-0.0.6.dev194/junifer/data/parcellations/__init__.py +9 -0
  34. junifer-0.0.6.dev194/junifer/data/parcellations/__init__.pyi +6 -0
  35. junifer-0.0.6.dev194/junifer/data/parcellations/_ants_parcellation_warper.py +154 -0
  36. junifer-0.0.6.dev194/junifer/data/parcellations/_fsl_parcellation_warper.py +91 -0
  37. junifer-0.0.6.dev154/junifer/data/parcellations.py → junifer-0.0.6.dev194/junifer/data/parcellations/_parcellations.py +450 -473
  38. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/parcellations}/tests/test_parcellations.py +73 -81
  39. junifer-0.0.6.dev194/junifer/data/pipeline_data_registry_base.py +74 -0
  40. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/data/utils.py +4 -0
  41. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/aomic/piop2.py +1 -1
  42. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/complexity/hurst_exponent.py +2 -2
  43. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/complexity/multiscale_entropy_auc.py +2 -2
  44. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/complexity/perm_entropy.py +2 -2
  45. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/complexity/range_entropy.py +2 -2
  46. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/complexity/range_entropy_auc.py +2 -2
  47. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/complexity/sample_entropy.py +2 -2
  48. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/complexity/weighted_perm_entropy.py +2 -2
  49. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/ets_rss.py +2 -2
  50. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/falff/falff_parcels.py +2 -2
  51. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/falff/falff_spheres.py +2 -2
  52. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/functional_connectivity/edge_functional_connectivity_parcels.py +1 -1
  53. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/functional_connectivity/edge_functional_connectivity_spheres.py +1 -1
  54. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/functional_connectivity/functional_connectivity_parcels.py +1 -1
  55. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/functional_connectivity/functional_connectivity_spheres.py +1 -1
  56. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_parcels.py +3 -3
  57. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_spheres.py +2 -2
  58. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/parcel_aggregation.py +11 -7
  59. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/reho/reho_parcels.py +2 -2
  60. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/reho/reho_spheres.py +2 -2
  61. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/sphere_aggregation.py +11 -7
  62. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/temporal_snr/temporal_snr_parcels.py +2 -2
  63. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/temporal_snr/temporal_snr_spheres.py +2 -2
  64. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/tests/test_ets_rss.py +3 -3
  65. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/tests/test_parcel_aggregation.py +24 -24
  66. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/tests/test_sphere_aggregation.py +6 -6
  67. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/pipeline/__init__.pyi +2 -2
  68. junifer-0.0.6.dev194/junifer/pipeline/pipeline_component_registry.py +299 -0
  69. junifer-0.0.6.dev194/junifer/pipeline/tests/test_pipeline_component_registry.py +201 -0
  70. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/confounds/fmriprep_confound_remover.py +6 -3
  71. junifer-0.0.6.dev194/junifer/testing/__init__.pyi +4 -0
  72. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/testing/registry.py +4 -7
  73. junifer-0.0.6.dev194/junifer/testing/tests/test_testing_registry.py +16 -0
  74. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer.egg-info/PKG-INFO +1 -1
  75. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer.egg-info/SOURCES.txt +44 -27
  76. junifer-0.0.6.dev154/docs/api/data.rst +0 -26
  77. junifer-0.0.6.dev154/junifer/data/__init__.pyi +0 -43
  78. junifer-0.0.6.dev154/junifer/data/coordinates.py +0 -408
  79. junifer-0.0.6.dev154/junifer/data/masks.py +0 -670
  80. junifer-0.0.6.dev154/junifer/pipeline/registry.py +0 -245
  81. junifer-0.0.6.dev154/junifer/pipeline/tests/test_registry.py +0 -150
  82. junifer-0.0.6.dev154/junifer/testing/__init__.pyi +0 -4
  83. junifer-0.0.6.dev154/junifer/testing/tests/test_testing_registry.py +0 -24
  84. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.dockerignore +0 -0
  85. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
  86. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  87. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.github/ISSUE_TEMPLATE/dataset-request.yml +0 -0
  88. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.github/ISSUE_TEMPLATE/documention-request.yml +0 -0
  89. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.github/ISSUE_TEMPLATE/feature-request.yml +0 -0
  90. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.github/ISSUE_TEMPLATE/marker-request.yml +0 -0
  91. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.github/dependabot.yml +0 -0
  92. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.github/pull_request_template.md +0 -0
  93. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.github/workflows/ci-docs.yml +0 -0
  94. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.github/workflows/ci.yml +0 -0
  95. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.github/workflows/docker-ci-publish.yml +0 -0
  96. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.github/workflows/docker-docs-publish.yml +0 -0
  97. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.github/workflows/docs-preview.yml +0 -0
  98. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.github/workflows/lint.yml +0 -0
  99. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.github/workflows/pypi.yml +0 -0
  100. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.gitignore +0 -0
  101. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.gitmodules +0 -0
  102. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/.pre-commit-config.yaml +0 -0
  103. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/AUTHORS.rst +0 -0
  104. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/Dockerfile-docs +0 -0
  105. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/LICENSE.md +0 -0
  106. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/README.md +0 -0
  107. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/codecov.yml +0 -0
  108. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/conda-env.yml +0 -0
  109. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/Makefile +0 -0
  110. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/_static/css/custom.css +0 -0
  111. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/_static/js/custom.js +0 -0
  112. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/_templates/versions.html +0 -0
  113. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/api/api.rst +0 -0
  114. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/api/cli.rst +0 -0
  115. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/api/configs.rst +0 -0
  116. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/api/datagrabbers.rst +0 -0
  117. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/api/datareaders.rst +0 -0
  118. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/api/index.rst +0 -0
  119. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/api/markers.rst +0 -0
  120. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/api/nilearn.rst +0 -0
  121. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/api/onthefly.rst +0 -0
  122. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/api/preprocessing.rst +0 -0
  123. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/api/stats.rst +0 -0
  124. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/api/storage.rst +0 -0
  125. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/api/testing.rst +0 -0
  126. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/api/utils.rst +0 -0
  127. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/builtin.rst +0 -0
  128. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/contributors.inc +0 -0
  129. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/.gitignore +0 -0
  130. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/335.enh +0 -0
  131. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/354.feature +0 -0
  132. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/355.misc +0 -0
  133. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/356.bugfix +0 -0
  134. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/357.enh +0 -0
  135. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/358.doc +0 -0
  136. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/359.doc +0 -0
  137. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/360.bugfix +0 -0
  138. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/361.misc +0 -0
  139. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/367.enh +0 -0
  140. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/368.enh +0 -0
  141. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/369.bugfix +0 -0
  142. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/370.bugfix +0 -0
  143. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/372.misc +0 -0
  144. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/373.misc +0 -0
  145. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/374.misc +0 -0
  146. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/380.misc +0 -0
  147. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/382.misc +0 -0
  148. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/changes/newsfragments/384.misc +0 -0
  149. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/conf.py +0 -0
  150. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/contribution.rst +0 -0
  151. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/extending/datagrabber.rst +0 -0
  152. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/extending/dependencies.rst +0 -0
  153. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/extending/extension.rst +0 -0
  154. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/extending/index.rst +0 -0
  155. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/extending/marker.rst +0 -0
  156. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/extending/preprocessor.rst +0 -0
  157. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/faq.rst +0 -0
  158. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/help.rst +0 -0
  159. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/images/junifer_logo.png +0 -0
  160. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/index.rst +0 -0
  161. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/installation.rst +0 -0
  162. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/links.inc +0 -0
  163. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/maintaining.rst +0 -0
  164. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/redirect.html +0 -0
  165. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/starting.rst +0 -0
  166. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/understanding/data.rst +0 -0
  167. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/understanding/datagrabber.rst +0 -0
  168. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/understanding/datareader.rst +0 -0
  169. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/understanding/index.rst +0 -0
  170. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/understanding/marker.rst +0 -0
  171. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/understanding/pipeline.rst +0 -0
  172. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/understanding/preprocess.rst +0 -0
  173. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/understanding/storage.rst +0 -0
  174. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/using/codeless.rst +0 -0
  175. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/using/index.rst +0 -0
  176. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/using/queueing.rst +0 -0
  177. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/docs/using/running.rst +0 -0
  178. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/examples/README.rst +0 -0
  179. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/examples/norun_hcpfc_pearson.py +0 -0
  180. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/examples/norun_ukbvm_gmd.py +0 -0
  181. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/examples/run_compute_parcel_mean.py +0 -0
  182. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/examples/run_datagrabber_bids_datalad.py +0 -0
  183. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/examples/run_ets_rss_marker.py +0 -0
  184. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/examples/run_junifer_julearn.py +0 -0
  185. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/examples/run_run_gmd_mean.py +0 -0
  186. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/examples/yamls/gmd_mean.yaml +0 -0
  187. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/examples/yamls/gmd_mean_htcondor.yaml +0 -0
  188. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/examples/yamls/partly_cloudy_agg_mean_tian.yml +0 -0
  189. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/examples/yamls/ukb_gmd_mean.yaml +0 -0
  190. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/ignore_words.txt +0 -0
  191. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/__init__.py +0 -0
  192. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/__init__.py +0 -0
  193. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/__init__.pyi +0 -0
  194. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/py.typed +0 -0
  195. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/queue_context/__init__.py +0 -0
  196. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/queue_context/__init__.pyi +0 -0
  197. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/queue_context/gnu_parallel_local_adapter.py +0 -0
  198. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/queue_context/htcondor_adapter.py +0 -0
  199. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/queue_context/py.typed +0 -0
  200. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/queue_context/queue_context_adapter.py +0 -0
  201. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/queue_context/tests/test_gnu_parallel_local_adapter.py +0 -0
  202. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/queue_context/tests/test_htcondor_adapter.py +0 -0
  203. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/afni/3dAFNItoNIFTI +0 -0
  204. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/afni/3dRSFC +0 -0
  205. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/afni/3dReHo +0 -0
  206. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/afni/afni +0 -0
  207. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/afni/run_afni_docker.sh +0 -0
  208. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/ants/ResampleImage +0 -0
  209. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/ants/antsApplyTransforms +0 -0
  210. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/ants/antsApplyTransformsToPoints +0 -0
  211. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/ants/run_ants_docker.sh +0 -0
  212. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/freesurfer/mri_binarize +0 -0
  213. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/freesurfer/mri_mc +0 -0
  214. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/freesurfer/mri_pretess +0 -0
  215. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/freesurfer/mris_convert +0 -0
  216. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/freesurfer/run_freesurfer_docker.sh +0 -0
  217. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/fsl/applywarp +0 -0
  218. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/fsl/flirt +0 -0
  219. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/fsl/img2imgcoord +0 -0
  220. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/fsl/run_fsl_docker.sh +0 -0
  221. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/fsl/std2imgcoord +0 -0
  222. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/run_conda.bash +0 -0
  223. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/run_conda.zsh +0 -0
  224. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/run_venv.bash +0 -0
  225. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/api/res/run_venv.zsh +0 -0
  226. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/cli/__init__.py +0 -0
  227. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/cli/__init__.pyi +0 -0
  228. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/cli/cli.py +0 -0
  229. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/cli/parser.py +0 -0
  230. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/cli/py.typed +0 -0
  231. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/cli/tests/data/gmd_mean.yaml +0 -0
  232. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/cli/tests/data/gmd_mean_htcondor.yaml +0 -0
  233. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/cli/tests/data/partly_cloudy_agg_mean_tian.yml +0 -0
  234. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/cli/tests/test_cli.py +0 -0
  235. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/cli/tests/test_cli_utils.py +0 -0
  236. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/cli/tests/test_parser.py +0 -0
  237. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/cli/utils.py +0 -0
  238. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/configs/__init__.py +0 -0
  239. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/configs/juseless/__init__.py +0 -0
  240. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/configs/juseless/__init__.pyi +0 -0
  241. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/configs/juseless/datagrabbers/__init__.py +0 -0
  242. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/configs/juseless/datagrabbers/__init__.pyi +0 -0
  243. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/configs/juseless/datagrabbers/aomic_id1000_vbm.py +0 -0
  244. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/configs/juseless/datagrabbers/camcan_vbm.py +0 -0
  245. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/configs/juseless/datagrabbers/ixi_vbm.py +0 -0
  246. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/configs/juseless/datagrabbers/py.typed +0 -0
  247. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/configs/juseless/datagrabbers/tests/test_aomic_id1000_vbm.py +0 -0
  248. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/configs/juseless/datagrabbers/tests/test_camcan_vbm.py +0 -0
  249. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/configs/juseless/datagrabbers/tests/test_ixi_vbm.py +0 -0
  250. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/configs/juseless/datagrabbers/tests/test_ucla.py +0 -0
  251. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/configs/juseless/datagrabbers/tests/test_ukb_vbm.py +0 -0
  252. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/configs/juseless/datagrabbers/ucla.py +0 -0
  253. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/configs/juseless/datagrabbers/ukb_vbm.py +0 -0
  254. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/configs/juseless/py.typed +0 -0
  255. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/data/__init__.py +0 -0
  256. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/VOIs/meta/AutobiographicalMemory_VOIs.txt +0 -0
  257. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/VOIs/meta/CogAC_VOIs.txt +0 -0
  258. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/VOIs/meta/CogAR_VOIs.txt +0 -0
  259. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/VOIs/meta/DMNBuckner_VOIs.txt +0 -0
  260. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/VOIs/meta/Dosenbach2010_MNI_VOIs.txt +0 -0
  261. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/VOIs/meta/Empathy_VOIs.txt +0 -0
  262. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/VOIs/meta/Motor_VOIs.txt +0 -0
  263. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/VOIs/meta/MultiTask_VOIs.txt +0 -0
  264. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/VOIs/meta/PhysioStress_VOIs.txt +0 -0
  265. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/VOIs/meta/Power2011_MNI_VOIs.txt +0 -0
  266. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/VOIs/meta/Power2013_MNI_VOIs.tsv +0 -0
  267. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/VOIs/meta/Rew_VOIs.txt +0 -0
  268. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/VOIs/meta/Somatosensory_VOIs.txt +0 -0
  269. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/VOIs/meta/ToM_VOIs.txt +0 -0
  270. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/VOIs/meta/VigAtt_VOIs.txt +0 -0
  271. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/VOIs/meta/WM_VOIs.txt +0 -0
  272. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/VOIs/meta/eMDN_VOIs.txt +0 -0
  273. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/VOIs/meta/eSAD_VOIs.txt +0 -0
  274. {junifer-0.0.6.dev154/junifer/data → junifer-0.0.6.dev194/junifer/data/coordinates}/VOIs/meta/extDMN_VOIs.txt +0 -0
  275. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/data/masks/ukb/UKB_15K_GM_template.nii.gz +0 -0
  276. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/data/masks/vickery-patil/CAT12_IXI555_MNI152_TMP_GS_GMprob0.2_clean.nii.gz +0 -0
  277. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/data/masks/vickery-patil/CAT12_IXI555_MNI152_TMP_GS_GMprob0.2_clean_3mm.nii.gz +0 -0
  278. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/data/masks/vickery-patil/GMprob0.2_cortex_3mm_NA_rm.nii.gz +0 -0
  279. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/data/py.typed +0 -0
  280. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/data/template_spaces.py +0 -0
  281. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/data/tests/test_data_utils.py +0 -0
  282. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/data/tests/test_template_spaces.py +0 -0
  283. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/__init__.py +0 -0
  284. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/__init__.pyi +0 -0
  285. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/aomic/__init__.py +0 -0
  286. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/aomic/__init__.pyi +0 -0
  287. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/aomic/id1000.py +0 -0
  288. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/aomic/piop1.py +0 -0
  289. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/aomic/py.typed +0 -0
  290. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/aomic/tests/test_id1000.py +0 -0
  291. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/aomic/tests/test_piop1.py +0 -0
  292. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/aomic/tests/test_piop2.py +0 -0
  293. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/base.py +0 -0
  294. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/datalad_base.py +0 -0
  295. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/dmcc13_benchmark.py +0 -0
  296. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/hcp1200/__init__.py +0 -0
  297. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/hcp1200/__init__.pyi +0 -0
  298. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/hcp1200/datalad_hcp1200.py +0 -0
  299. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/hcp1200/hcp1200.py +0 -0
  300. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/hcp1200/py.typed +0 -0
  301. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/hcp1200/tests/test_hcp1200.py +0 -0
  302. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/multiple.py +0 -0
  303. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/pattern.py +0 -0
  304. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/pattern_datalad.py +0 -0
  305. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/pattern_validation_mixin.py +0 -0
  306. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/py.typed +0 -0
  307. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/tests/test_base.py +0 -0
  308. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/tests/test_datalad_base.py +0 -0
  309. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/tests/test_dmcc13_benchmark.py +0 -0
  310. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/tests/test_multiple.py +0 -0
  311. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/tests/test_pattern.py +0 -0
  312. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/tests/test_pattern_datalad.py +0 -0
  313. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datagrabber/tests/test_pattern_validation_mixin.py +0 -0
  314. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datareader/__init__.py +0 -0
  315. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datareader/__init__.pyi +0 -0
  316. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datareader/default.py +0 -0
  317. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datareader/py.typed +0 -0
  318. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/datareader/tests/test_default_reader.py +0 -0
  319. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/BrainPrint/brainprint/__init__.py +0 -0
  320. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/BrainPrint/brainprint/_version.py +0 -0
  321. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/BrainPrint/brainprint/asymmetry.py +0 -0
  322. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/BrainPrint/brainprint/brainprint.py +0 -0
  323. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/BrainPrint/brainprint/surfaces.py +0 -0
  324. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/BrainPrint/brainprint/utils/__init__.py +0 -0
  325. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/BrainPrint/brainprint/utils/_config.py +0 -0
  326. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/BrainPrint/brainprint/utils/utils.py +0 -0
  327. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/__init__.py +0 -0
  328. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/h5io/h5io/__init__.py +0 -0
  329. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/h5io/h5io/_h5io.py +0 -0
  330. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/h5io/h5io/_version.py +0 -0
  331. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/h5io/h5io/chunked_array.py +0 -0
  332. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/h5io/h5io/chunked_list.py +0 -0
  333. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/nilearn/__init__.py +0 -0
  334. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/nilearn/__init__.pyi +0 -0
  335. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/nilearn/junifer_connectivity_measure.py +0 -0
  336. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/nilearn/junifer_nifti_spheres_masker.py +0 -0
  337. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/nilearn/py.typed +0 -0
  338. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/nilearn/tests/test_junifer_connectivity_measure.py +0 -0
  339. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/external/nilearn/tests/test_junifer_nifti_spheres_masker.py +0 -0
  340. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/__init__.py +0 -0
  341. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/__init__.pyi +0 -0
  342. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/base.py +0 -0
  343. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/brainprint.py +0 -0
  344. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/complexity/__init__.py +0 -0
  345. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/complexity/__init__.pyi +0 -0
  346. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/complexity/complexity_base.py +0 -0
  347. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/complexity/py.typed +0 -0
  348. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/complexity/tests/test_complexity_base.py +0 -0
  349. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/complexity/tests/test_hurst_exponent.py +0 -0
  350. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/complexity/tests/test_multiscale_entropy_auc.py +0 -0
  351. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/complexity/tests/test_perm_entropy.py +0 -0
  352. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/complexity/tests/test_range_entropy.py +0 -0
  353. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/complexity/tests/test_range_entropy_auc.py +0 -0
  354. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/complexity/tests/test_sample_entropy.py +0 -0
  355. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/complexity/tests/test_weighted_perm_entropy.py +0 -0
  356. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/falff/__init__.py +0 -0
  357. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/falff/__init__.pyi +0 -0
  358. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/falff/_afni_falff.py +0 -0
  359. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/falff/_junifer_falff.py +0 -0
  360. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/falff/falff_base.py +0 -0
  361. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/falff/py.typed +0 -0
  362. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/falff/tests/test_falff_parcels.py +0 -0
  363. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/falff/tests/test_falff_spheres.py +0 -0
  364. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/functional_connectivity/__init__.py +0 -0
  365. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/functional_connectivity/__init__.pyi +0 -0
  366. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/functional_connectivity/crossparcellation_functional_connectivity.py +0 -0
  367. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/functional_connectivity/functional_connectivity_base.py +0 -0
  368. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/functional_connectivity/py.typed +0 -0
  369. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/functional_connectivity/tests/test_crossparcellation_functional_connectivity.py +0 -0
  370. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_parcels.py +0 -0
  371. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_spheres.py +0 -0
  372. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_base.py +0 -0
  373. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/py.typed +0 -0
  374. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/reho/__init__.py +0 -0
  375. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/reho/__init__.pyi +0 -0
  376. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/reho/_afni_reho.py +0 -0
  377. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/reho/_junifer_reho.py +0 -0
  378. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/reho/py.typed +0 -0
  379. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/reho/reho_base.py +0 -0
  380. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/reho/tests/test_reho_parcels.py +0 -0
  381. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/reho/tests/test_reho_spheres.py +0 -0
  382. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/temporal_snr/__init__.py +0 -0
  383. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/temporal_snr/__init__.pyi +0 -0
  384. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/temporal_snr/py.typed +0 -0
  385. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/temporal_snr/temporal_snr_base.py +0 -0
  386. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/temporal_snr/tests/test_temporal_snr_base.py +0 -0
  387. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/temporal_snr/tests/test_temporal_snr_parcels.py +0 -0
  388. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/temporal_snr/tests/test_temporal_snr_spheres.py +0 -0
  389. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/tests/test_brainprint.py +0 -0
  390. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/tests/test_marker_utils.py +0 -0
  391. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/tests/test_markers_base.py +0 -0
  392. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/markers/utils.py +0 -0
  393. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/onthefly/__init__.py +0 -0
  394. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/onthefly/_brainprint.py +0 -0
  395. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/onthefly/read_transform.py +0 -0
  396. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/onthefly/tests/test_read_transform.py +0 -0
  397. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/pipeline/__init__.py +0 -0
  398. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/pipeline/marker_collection.py +0 -0
  399. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/pipeline/pipeline_step_mixin.py +0 -0
  400. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/pipeline/py.typed +0 -0
  401. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/pipeline/singleton.py +0 -0
  402. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/pipeline/tests/test_marker_collection.py +0 -0
  403. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/pipeline/tests/test_pipeline_step_mixin.py +0 -0
  404. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/pipeline/tests/test_update_meta_mixin.py +0 -0
  405. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/pipeline/tests/test_workdir_manager.py +0 -0
  406. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/pipeline/update_meta_mixin.py +0 -0
  407. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/pipeline/utils.py +0 -0
  408. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/pipeline/workdir_manager.py +0 -0
  409. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/__init__.py +0 -0
  410. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/__init__.pyi +0 -0
  411. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/base.py +0 -0
  412. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/confounds/__init__.py +0 -0
  413. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/confounds/__init__.pyi +0 -0
  414. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/confounds/py.typed +0 -0
  415. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/confounds/tests/test_fmriprep_confound_remover.py +0 -0
  416. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/py.typed +0 -0
  417. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/smoothing/__init__.py +0 -0
  418. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/smoothing/__init__.pyi +0 -0
  419. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/smoothing/_afni_smoothing.py +0 -0
  420. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/smoothing/_fsl_smoothing.py +0 -0
  421. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/smoothing/_nilearn_smoothing.py +0 -0
  422. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/smoothing/py.typed +0 -0
  423. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/smoothing/smoothing.py +0 -0
  424. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/smoothing/tests/test_smoothing.py +0 -0
  425. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/tests/test_preprocess_base.py +0 -0
  426. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/warping/__init__.py +0 -0
  427. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/warping/__init__.pyi +0 -0
  428. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/warping/_ants_warper.py +0 -0
  429. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/warping/_fsl_warper.py +0 -0
  430. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/warping/py.typed +0 -0
  431. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/warping/space_warper.py +0 -0
  432. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/preprocess/warping/tests/test_space_warper.py +0 -0
  433. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/py.typed +0 -0
  434. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/stats.py +0 -0
  435. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/storage/__init__.py +0 -0
  436. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/storage/__init__.pyi +0 -0
  437. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/storage/base.py +0 -0
  438. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/storage/hdf5.py +0 -0
  439. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/storage/pandas_base.py +0 -0
  440. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/storage/py.typed +0 -0
  441. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/storage/sqlite.py +0 -0
  442. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/storage/tests/test_hdf5.py +0 -0
  443. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/storage/tests/test_pandas_base.py +0 -0
  444. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/storage/tests/test_sqlite.py +0 -0
  445. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/storage/tests/test_storage_base.py +0 -0
  446. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/storage/tests/test_utils.py +0 -0
  447. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/storage/utils.py +0 -0
  448. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/testing/__init__.py +0 -0
  449. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/testing/data/sub-0001_task-anticipation_acq-seq_desc-confounds_regressors.tsv +0 -0
  450. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/testing/datagrabbers.py +0 -0
  451. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/testing/py.typed +0 -0
  452. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/testing/tests/test_oasisvmbtesting_datagrabber.py +0 -0
  453. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/testing/tests/test_partlycloudytesting_datagrabber.py +0 -0
  454. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/testing/tests/test_spmauditory_datagrabber.py +0 -0
  455. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/testing/utils.py +0 -0
  456. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/tests/test_main.py +0 -0
  457. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/tests/test_stats.py +0 -0
  458. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/utils/__init__.py +0 -0
  459. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/utils/__init__.pyi +0 -0
  460. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/utils/_yaml.py +0 -0
  461. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/utils/fs.py +0 -0
  462. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/utils/helpers.py +0 -0
  463. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/utils/logging.py +0 -0
  464. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/utils/py.typed +0 -0
  465. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/utils/tests/test_fs.py +0 -0
  466. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/utils/tests/test_helpers.py +0 -0
  467. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer/utils/tests/test_logging.py +0 -0
  468. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer.egg-info/dependency_links.txt +0 -0
  469. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer.egg-info/entry_points.txt +0 -0
  470. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer.egg-info/requires.txt +0 -0
  471. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/junifer.egg-info/top_level.txt +0 -0
  472. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/pyproject.toml +0 -0
  473. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/setup.cfg +0 -0
  474. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/setup.py +0 -0
  475. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/tools/create_aomic1000_example_dataset.py +0 -0
  476. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/tools/create_aomicpiop1_example_dataset.py +0 -0
  477. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/tools/create_aomicpiop2_example_dataset.py +0 -0
  478. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/tools/create_bids_example_dataset.py +0 -0
  479. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/tools/create_bids_example_dataset_sessions.py +0 -0
  480. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/tools/create_dmcc13_benchmark_example_dataset.py +0 -0
  481. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/tools/create_hcp1200_example_dataset.py +0 -0
  482. {junifer-0.0.6.dev154 → junifer-0.0.6.dev194}/tox.ini +0 -0
@@ -8,16 +8,13 @@ on:
8
8
  # Sequence of patterns matched against refs/tags
9
9
  tags:
10
10
  - v*
11
- workflow_dispatch: {}
11
+ workflow_dispatch: {}
12
12
 
13
13
  jobs:
14
14
  build-docs:
15
15
  runs-on: ubuntu-latest
16
16
  # Use custom docs CI image
17
- container:
18
- image: ghcr.io/juaml/junifer-docs:main
19
- # https://github.com/actions/runner/issues/2033#issuecomment-1598547465
20
- options: --user 1001
17
+ container: ghcr.io/juaml/junifer-docs:main
21
18
  steps:
22
19
  - name: Check ANTs
23
20
  run: |
@@ -63,6 +60,8 @@ jobs:
63
60
  - name: Build docs
64
61
  # Use the args we normally pass to sphinx-build, but run sphinx-multiversion
65
62
  run: |
63
+ # https://github.com/actions/checkout/issues/1169#issuecomment-2291682583
64
+ git config --system --add safe.directory $(pwd)
66
65
  make -C docs/ html
67
66
  touch docs/_build/.nojekyll
68
67
  cp docs/redirect.html docs/_build/index.html
@@ -63,9 +63,9 @@ RUN ln -s /usr/lib/x86_64-linux-gnu/libgsl.so.27 /usr/lib/x86_64-linux-gnu/libgs
63
63
  RUN curl https://fsl.fmrib.ox.ac.uk/fsldownloads/fslconda/releases/fslinstaller.py | \
64
64
  python - -d /opt/fsl/ --skip_registration
65
65
  # Set env vars for FSL
66
- ENV FSLDIR="/opt/fsl" \
67
- FSLOUTPUTTYPE="NIFTI_GZ" \
68
- PATH="/opt/fsl/bin:$PATH"
66
+ ENV FSLDIR=/opt/fsl \
67
+ FSLOUTPUTTYPE=NIFTI_GZ \
68
+ PATH="/opt/fsl/share/fsl/bin:$PATH"
69
69
 
70
70
  # Clean apt cache
71
71
  RUN apt-get autoremove --purge && apt-get clean
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: junifer
3
- Version: 0.0.6.dev154
3
+ Version: 0.0.6.dev194
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,6 @@
1
+ Data
2
+ ====
3
+
4
+ .. automodule:: junifer.data
5
+ :members:
6
+ :imported-members:
@@ -4,9 +4,3 @@ Pipeline
4
4
  .. automodule:: junifer.pipeline
5
5
  :members:
6
6
  :imported-members:
7
-
8
- Registry
9
- ========
10
-
11
- .. automodule:: junifer.pipeline.registry
12
- :members:
@@ -0,0 +1 @@
1
+ Introduce :class:`junifer.pipeline.PipelineComponentRegistry` to centralise pipeline component management by `Synchon Mandal`_
@@ -0,0 +1 @@
1
+ ``get_parcellation``, ``load_parcellation``, ``list_parcellation``, ``register_parcellation`` , ``get_coordinates``, ``load_coordinates``, ``list_coordinates``, ``register_coordinates``, ``get_mask``, ``load_mask``, ``list_mask``, ``register_mask`` have been removed in favour of :func:`.get_data`, :func:`.load_data`, :func:`.list_data`, :func:`.register_data` and :func:`.deregister_data` by `Synchon Mandal`_
@@ -0,0 +1 @@
1
+ Introduce :class:`junifer.data.CoordinatesRegistry`, :class:`junifer.data.ParcellationRegistry` and :class:`junifer.data.MaskRegistry` to centralise data management by `Synchon Mandal`_
@@ -18,19 +18,28 @@ provides them already.
18
18
  If you checked the in-built coordinates, and they are not there already (for
19
19
  example if you came up with your own set of coordinates), then ``junifer``
20
20
  provides an easy way for you to register them using the
21
- :func:`.register_coordinates` function, so you can use your own set of
21
+ :func:`.register_data` function, so you can use your own set of
22
22
  coordinates within a ``junifer`` pipeline.
23
23
 
24
- From the API reference, we can see that it has 4 positional arguments
25
- (``name``, ``coordinates``, ``voi_names`` and ``space``) as well as one
26
- optional keyword argument (``overwrite``).
24
+ From the API reference, we can see that it has 3 positional arguments:
25
+
26
+ * ``kind``
27
+ * ``name``
28
+ * ``space``
29
+
30
+ as well as one optional keyword argument: ``overwrite``.
31
+ As the ``kind`` needs to be ``"coordinates"``, we can check
32
+ ``CoordinatesRegistry.register`` for keyword arguments to be passed:
33
+
34
+ * ``coordinates``
35
+ * ``voi_names``
27
36
 
28
37
  The ``name`` argument takes a string indicating the name you want to give to
29
38
  this set of coordinates. This ``name`` can be used to obtain and operate on a
30
39
  set of coordinates in ``junifer``. For example, you can obtain your coordinates
31
- after registration by providing ``name`` to :func:`.load_coordinates`. We could
32
- simply call it ``"my_set_of_coordinates"``, but likely you want a more
33
- descriptive and more informative name most of the time.
40
+ after registration by providing ``name`` to :func:`.load_data` with
41
+ ``kind="coordinates"``. We could simply call it ``"my_set_of_coordinates"``,
42
+ but likely you want a more descriptive and more informative name most of the time.
34
43
 
35
44
  The ``coordinates`` argument takes the actual coordinates as a 2-dimensional
36
45
  :class:`numpy.ndarray`. It contains one row for every location, and three
@@ -57,8 +66,8 @@ packages:
57
66
 
58
67
  .. code-block:: python
59
68
 
60
- from junifer.data import register_coordinates
61
69
  import numpy as np
70
+ from junifer.data import register_data
62
71
 
63
72
  For the sake of this example, we can create a set of coordinates that belong
64
73
  to the Default Mode Network (DMN), and register this set of coordinates with
@@ -86,8 +95,12 @@ simply use this to register our coordinates:
86
95
 
87
96
  .. code-block:: python
88
97
 
89
- register_coordinates(
90
- name="DMNCustom", coordinates=dmn_coords, voi_names=voi_names, space="MNI"
98
+ register_data(
99
+ kind="coordinates",
100
+ name="DMNCustom",
101
+ coordinates=dmn_coords,
102
+ voi_names=voi_names,
103
+ space="MNI",
91
104
  )
92
105
 
93
106
  Now, when we run this script, ``junifer`` registers these coordinates and we can
@@ -14,16 +14,25 @@ suit your needs, and you have found that they don't, you can come back here to
14
14
  learn how to use your own masks.
15
15
 
16
16
  The principle is fairly simple and quite similar to :ref:`adding_parcellations`
17
- and :ref:`adding_coordinates`. ``junifer`` provides a :func:`.register_mask`
17
+ and :ref:`adding_coordinates`. ``junifer`` provides a :func:`.register_data`
18
18
  function that lets you register your own custom masks. It consists of three
19
- positional arguments (``name``, ``mask_path`` and ``space``) and one optional
20
- keyword argument (``overwrite``).
19
+ positional arguments:
20
+
21
+ * ``kind``
22
+ * ``name``
23
+ * ``space``
24
+
25
+ and one optional keyword argument: ``overwrite``.
26
+ As the ``kind`` needs to be ``"mask"``, we can check
27
+ ``MaskRegistry.register`` for keyword arguments to be passed:
28
+
29
+ * ``mask_path``
21
30
 
22
31
  The ``name`` argument is a string indicating the name of the mask. This name
23
32
  is used to refer to that mask in ``junifer`` internally in order to obtain the
24
33
  actual mask data and perform operations on it. For example, using the name you
25
- can load a mask after registration using the
26
- :func:`.load_mask` function.
34
+ can load a mask after registration using the :func:`.load_data` with
35
+ ``kind="mask"``.
27
36
 
28
37
  The ``mask_path`` should contain the path to a valid NIfTI image with binary
29
38
  voxel values (i.e. 0 or 1). This data can then be used by ``junifer`` to mask
@@ -42,14 +51,19 @@ look as follows:
42
51
 
43
52
  from pathlib import Path
44
53
 
45
- from junifer.data import register_mask
54
+ from junifer.data import register_data
46
55
 
47
56
 
48
57
  # this path is only an example, of course use the correct path
49
58
  # on your system:
50
59
  mask_path = Path("..") / ".." / "my_custom_mask.nii.gz"
51
60
 
52
- register_mask(name="my_custom_mask", mask_path=mask_path, space="native")
61
+ register_data(
62
+ kind="mask",
63
+ name="my_custom_mask",
64
+ mask_path=mask_path,
65
+ space="native",
66
+ )
53
67
 
54
68
  Simple, right? Now we just have to configure a YAML file to register this mask
55
69
  so we can use it for :ref:`codeless configuration of junifer <codeless>`.
@@ -17,13 +17,22 @@ this?
17
17
 
18
18
  Since both of these use-cases are quite common, and not being able to use your
19
19
  favourite parcellation is of course quite a buzzkill, ``junifer`` actually
20
- provides the easy-to-use :func:`.register_parcellation` function to do just that.
20
+ provides the easy-to-use :func:`.register_data` function to do just that.
21
21
  Let's try to understand the API reference and then use this function to register our
22
22
  own parcellation.
23
23
 
24
- From the API reference, we can see that it has 4 positional arguments
25
- (``name``, ``parcellation_path``, ``parcels_labels`` and ``space``) as well as
26
- one optional keyword argument (``overwrite``).
24
+ From the API reference, we can see that it has 3 positional arguments:
25
+
26
+ * ``kind``
27
+ * ``name``
28
+ * ``space``
29
+
30
+ as well as one optional keyword argument: ``overwrite``.
31
+ As the ``kind`` needs to be ``"parcellation"``, we can check
32
+ ``ParcellationRegistry.register`` for keyword arguments to be passed:
33
+
34
+ * ``parcellation_path``
35
+ * ``parcels_labels``
27
36
 
28
37
  The ``name`` of the parcellation is up to you and will be the name that
29
38
  ``junifer`` will use to refer to this particular parcellation. You can think of
@@ -64,10 +73,11 @@ look like this:
64
73
 
65
74
  .. code-block:: python
66
75
 
67
- from junifer.data import register_parcellation
68
-
69
76
  from pathlib import Path
77
+
70
78
  import numpy as np
79
+ from junifer.data import register_data
80
+
71
81
 
72
82
  # these are of course just example paths, replace it with your own:
73
83
  path_to_parcellation = (
@@ -79,7 +89,8 @@ look like this:
79
89
 
80
90
  my_labels = list(np.loadtxt(path_to_labels, dtype=str))
81
91
 
82
- register_parcellation(
92
+ register_data(
93
+ kind="parcellation",
83
94
  name="my_custom_parcellation",
84
95
  parcellation_path=path_to_parcellation,
85
96
  parcels_labels=my_labels,
@@ -13,8 +13,8 @@ ensuring that the features are not extracted from voxels that contain mostly
13
13
  white matter or cerebrospinal fluid, which could add noise to the BOLD signal.
14
14
 
15
15
  ``junifer`` provides a number of built-in masks, which can be listed using
16
- :func:`.list_masks`. Some masks are images, while other masks can be computed
17
- using :ref:`nilearn` functions.
16
+ :func:`.list_data` with ``kind="mask"``. Some masks are images, while other
17
+ masks can be computed using :ref:`nilearn` functions.
18
18
 
19
19
  For markers and steps that accept ``masks`` as an argument, the mask can be
20
20
  specified as a string, which will be the name of a built-in mask, or as a
@@ -190,10 +190,10 @@ API Changes
190
190
  - Modify ``preprocessor`` to ``preprocessors`` in :func:`.run` and
191
191
  ``preprocessing`` to ``preprocessors`` in :class:`.MarkerCollection` to
192
192
  accept multiple preprocessors by `Synchon Mandal`_ (:gh:`263`)
193
- - Add ``space`` parameter to :func:`.register_coordinates`,
194
- :func:`.register_parcellation` and :func:`.register_mask` and return space
195
- from :func:`.load_coordinates`, :func:`.load_parcellation` and
196
- :func:`.load_mask` by `Synchon Mandal`_ and `Fede Raimondo`_ (:gh:`268`)
193
+ - Add ``space`` parameter to ``register_coordinates``,
194
+ ``register_parcellation`` and ``register_mask`` and return space
195
+ from ``load_coordinates``, ``load_parcellation`` and
196
+ ``load_mask`` by `Synchon Mandal`_ and `Fede Raimondo`_ (:gh:`268`)
197
197
  - Add ``template_type`` parameter to :func:`.get_template` by `Synchon Mandal`_
198
198
  (:gh:`299`)
199
199
  - Change :meth:`.BasePreprocessor.preprocess` return values to preprocessed
@@ -245,7 +245,7 @@ Enhancements
245
245
  :func:`.get_aggfunc_by_name` by `Synchon Mandal`_ (:gh:`287`)
246
246
  - Adapt ``BOLDWarper`` to use FSL or ANTs depending on warp file
247
247
  extension by `Synchon Mandal`_ (:gh:`293`)
248
- - Rewrite :func:`.compute_brain_mask` to allow variable template fetching via
248
+ - Rewrite ``compute_brain_mask`` to allow variable template fetching via
249
249
  templateflow, according to target data by `Synchon Mandal`_ (:gh:`299`)
250
250
  - Replace ``requests`` with ``httpx`` for fetching parcellations by `Synchon
251
251
  Mandal`_ (:gh:`300`)
@@ -285,9 +285,9 @@ Features
285
285
  - Introduce :class:`junifer.pipeline.WorkDirManager` singleton class to manage
286
286
  working and temporary directories across pipeline by `Synchon Mandal`_
287
287
  (:gh:`254`)
288
- - Introduce :func:`.get_parcellation` to fetch parcellation tailored for the
288
+ - Introduce ``get_parcellation`` to fetch parcellation tailored for the
289
289
  data by `Synchon Mandal`_ (:gh:`264`)
290
- - Introduce :func:`.get_coordinates` to fetch coordinates tailored for the data
290
+ - Introduce ``get_coordinates`` to fetch coordinates tailored for the data
291
291
  by `Synchon Mandal`_ (:gh:`265`)
292
292
  - Introduce ``junifer.preprocess.fsl.apply_warper._ApplyWarper`` to wrap FSL's
293
293
  ``applywarp`` by `Synchon Mandal`_ (:gh:`266`)
@@ -309,7 +309,7 @@ Features
309
309
  - Introduce :func:`.get_template` to fetch template space image tailored to a
310
310
  target data by `Synchon Mandal`_ (:gh:`298`)
311
311
  - Add support for on-the-fly template space transformation in
312
- :func:`.get_parcellation` and :func:`.get_mask` to allow parcellation and
312
+ ``get_parcellation`` and ``get_mask`` to allow parcellation and
313
313
  mask in different template spaces to work with a ``DataGrabber``'s data in a
314
314
  specified template space. (:gh:`299`)
315
315
  - Introduce :class:`.SpaceWarper` for warping ``T1w``, ``BOLD``, ``VBM_GM``,
@@ -480,7 +480,7 @@ Bugfixes
480
480
  - Fix an issue with datalad cache and locks in which the overridden settings in
481
481
  Junifer were not propagated to subprocesses, resulting in using the default
482
482
  settings by `Fede Raimondo`_ (:gh:`199`)
483
- - Fix a bug in which :func:`.get_mask` fails for FunctionalConnectivityBase
483
+ - Fix a bug in which ``get_mask`` fails for ``FunctionalConnectivityBase``
484
484
  class, because of missing extra_input parameter by `Leonard Sasse`_
485
485
  (:gh:`200`)
486
486
  - Fix the output of :class:`.RSSETSMarker` to be 2D by `Synchon Mandal`_
@@ -560,7 +560,7 @@ Features
560
560
 
561
561
  - Add :class:`.EdgeCentricFCParcels` and :class:`.EdgeCentricFCSpheres` by
562
562
  `Leonard Sasse`_ (:gh:`64`)
563
- - Expose a :func:`.merge_parcellations` function to merge a list of
563
+ - Expose a ``merge_parcellations`` function to merge a list of
564
564
  parcellations by `Leonard Sasse`_ (:gh:`146`)
565
565
  - Add support for HDF5 feature storage via :class:`.HDF5FeatureStorage` by
566
566
  `Synchon Mandal`_ (:gh:`147`)
@@ -670,8 +670,8 @@ Features
670
670
  connectivity using a parcellation by `Amir Omidvarnia`_ and
671
671
  `Kaustubh R. Patil`_ (:gh:`41`)
672
672
 
673
- - Implement :func:`.register_coordinates`, :func:`.list_coordinates` and
674
- :func:`.load_coordinates` by `Fede Raimondo`_ (:gh:`11`)
673
+ - Implement ``register_coordinates``, ``list_coordinates`` and
674
+ ``load_coordinates`` by `Fede Raimondo`_ (:gh:`11`)
675
675
 
676
676
  - Add :class:`.DataladAOMICID1000` datagrabber for AOMIC ID1000 dataset
677
677
  including tests and creation of mock dataset for testing by
@@ -12,6 +12,7 @@ __all__ = [
12
12
  "utils",
13
13
  "external",
14
14
  "onthefly",
15
+ "testing",
15
16
  "__version__",
16
17
  ]
17
18
 
@@ -28,6 +29,7 @@ from . import (
28
29
  storage,
29
30
  utils,
30
31
  external,
32
+ testing,
31
33
  onthefly,
32
34
  )
33
35
  from ._version import __version__
@@ -12,5 +12,5 @@ __version__: str
12
12
  __version_tuple__: VERSION_TUPLE
13
13
  version_tuple: VERSION_TUPLE
14
14
 
15
- __version__ = version = '0.0.6.dev154'
16
- __version_tuple__ = version_tuple = (0, 0, 6, 'dev154')
15
+ __version__ = version = '0.0.6.dev194'
16
+ __version_tuple__ = version_tuple = (0, 0, 6, 'dev194')
@@ -7,7 +7,7 @@
7
7
 
8
8
  from typing import Type
9
9
 
10
- from ..pipeline.registry import register
10
+ from ..pipeline import PipelineComponentRegistry
11
11
 
12
12
 
13
13
  __all__ = [
@@ -39,9 +39,8 @@ def register_datagrabber(klass: Type) -> Type:
39
39
  It should only be used as a decorator.
40
40
 
41
41
  """
42
- register(
42
+ PipelineComponentRegistry().register(
43
43
  step="datagrabber",
44
- name=klass.__name__,
45
44
  klass=klass,
46
45
  )
47
46
  return klass
@@ -67,9 +66,8 @@ def register_datareader(klass: Type) -> Type:
67
66
  It should only be used as a decorator.
68
67
 
69
68
  """
70
- register(
69
+ PipelineComponentRegistry().register(
71
70
  step="datareader",
72
- name=klass.__name__,
73
71
  klass=klass,
74
72
  )
75
73
  return klass
@@ -91,9 +89,8 @@ def register_preprocessor(klass: Type) -> Type:
91
89
  The unmodified input class.
92
90
 
93
91
  """
94
- register(
92
+ PipelineComponentRegistry().register(
95
93
  step="preprocessing",
96
- name=klass.__name__,
97
94
  klass=klass,
98
95
  )
99
96
  return klass
@@ -115,9 +112,8 @@ def register_marker(klass: Type) -> Type:
115
112
  The unmodified input class.
116
113
 
117
114
  """
118
- register(
115
+ PipelineComponentRegistry().register(
119
116
  step="marker",
120
- name=klass.__name__,
121
117
  klass=klass,
122
118
  )
123
119
  return klass
@@ -139,9 +135,8 @@ def register_storage(klass: Type) -> Type:
139
135
  The unmodified input class.
140
136
 
141
137
  """
142
- register(
138
+ PipelineComponentRegistry().register(
143
139
  step="storage",
144
- name=klass.__name__,
145
140
  klass=klass,
146
141
  )
147
142
  return klass
@@ -7,15 +7,17 @@
7
7
 
8
8
  import os
9
9
  import shutil
10
- import typing
11
10
  from pathlib import Path
12
11
  from typing import Dict, List, Optional, Tuple, Union
13
12
 
14
13
  from ..api.queue_context import GnuParallelLocalAdapter, HTCondorAdapter
15
14
  from ..datagrabber.base import BaseDataGrabber
16
15
  from ..markers.base import BaseMarker
17
- from ..pipeline import MarkerCollection, WorkDirManager
18
- from ..pipeline.registry import build
16
+ from ..pipeline import (
17
+ MarkerCollection,
18
+ PipelineComponentRegistry,
19
+ WorkDirManager,
20
+ )
19
21
  from ..preprocess.base import BasePreprocessor
20
22
  from ..storage.base import BaseFeatureStorage
21
23
  from ..utils import logger, raise_error, yaml
@@ -38,42 +40,78 @@ def _get_datagrabber(datagrabber_config: Dict) -> BaseDataGrabber:
38
40
  The DataGrabber.
39
41
 
40
42
  """
41
- datagrabber_params = datagrabber_config.copy()
42
- datagrabber_kind = datagrabber_params.pop("kind")
43
- datagrabber = build(
43
+ return PipelineComponentRegistry().build_component_instance(
44
44
  step="datagrabber",
45
- name=datagrabber_kind,
45
+ name=datagrabber_config.pop("kind"),
46
46
  baseclass=BaseDataGrabber,
47
- init_params=datagrabber_params,
47
+ init_params=datagrabber_config,
48
48
  )
49
- datagrabber = typing.cast(BaseDataGrabber, datagrabber)
50
- return datagrabber
51
49
 
52
50
 
53
51
  def _get_preprocessor(preprocessing_config: Dict) -> BasePreprocessor:
54
- """Get preprocessor.
52
+ """Get Preprocessor.
55
53
 
56
54
  Parameters
57
55
  ----------
58
56
  preprocessing_config : dict
59
- The config to get the preprocessor using.
57
+ The config to get the Preprocessor using.
60
58
 
61
59
  Returns
62
60
  -------
63
61
  dict
64
- The preprocessor.
62
+ The Preprocessor.
65
63
 
66
64
  """
67
- preprocessor_params = preprocessing_config.copy()
68
- preprocessor_kind = preprocessor_params.pop("kind")
69
- preprocessor = build(
65
+ return PipelineComponentRegistry().build_component_instance(
70
66
  step="preprocessing",
71
- name=preprocessor_kind,
67
+ name=preprocessing_config.pop("kind"),
72
68
  baseclass=BasePreprocessor,
73
- init_params=preprocessor_params,
69
+ init_params=preprocessing_config,
70
+ )
71
+
72
+
73
+ def _get_marker(marker_config: Dict) -> BaseMarker:
74
+ """Get Marker.
75
+
76
+ Parameters
77
+ ----------
78
+ marker_config : dict
79
+ The config to get the Marker using.
80
+
81
+ Returns
82
+ -------
83
+ object
84
+ The Marker.
85
+
86
+ """
87
+ return PipelineComponentRegistry().build_component_instance(
88
+ step="marker",
89
+ name=marker_config.pop("kind"),
90
+ baseclass=BaseMarker,
91
+ init_params=marker_config,
92
+ )
93
+
94
+
95
+ def _get_storage(storage_config: Dict) -> BaseFeatureStorage:
96
+ """Get Storage.
97
+
98
+ Parameters
99
+ ----------
100
+ storage_config : dict
101
+ The config to get the Storage using.
102
+
103
+ Returns
104
+ -------
105
+ dict
106
+ The Storage.
107
+
108
+ """
109
+ return PipelineComponentRegistry().build_component_instance(
110
+ step="storage",
111
+ name=storage_config.pop("kind"),
112
+ baseclass=BaseFeatureStorage,
113
+ init_params=storage_config,
74
114
  )
75
- preprocessor = typing.cast(BasePreprocessor, preprocessor)
76
- return preprocessor
77
115
 
78
116
 
79
117
  def run(
@@ -123,41 +161,22 @@ def run(
123
161
  elements = [elements]
124
162
 
125
163
  # Get datagrabber to use
126
- datagrabber_object = _get_datagrabber(datagrabber)
164
+ datagrabber_object = _get_datagrabber(datagrabber.copy())
127
165
 
128
- # Copy to avoid changing the original dict
129
- _markers = [x.copy() for x in markers]
130
- built_markers = []
131
- for t_marker in _markers:
132
- kind = t_marker.pop("kind")
133
- t_m = build(
134
- step="marker",
135
- name=kind,
136
- baseclass=BaseMarker,
137
- init_params=t_marker,
138
- )
139
- built_markers.append(t_m)
166
+ # Get markers to use
167
+ built_markers = [_get_marker(marker) for marker in markers.copy()]
140
168
 
141
169
  # Get storage engine to use
142
- storage_params = storage.copy()
143
- storage_kind = storage_params.pop("kind")
144
- if "single_output" not in storage_params:
145
- storage_params["single_output"] = False
146
- storage_object = build(
147
- step="storage",
148
- name=storage_kind,
149
- baseclass=BaseFeatureStorage,
150
- init_params=storage_params,
151
- )
152
- storage_object = typing.cast(BaseFeatureStorage, storage_object)
170
+ if "single_output" not in storage:
171
+ storage["single_output"] = False
172
+ storage_object = _get_storage(storage.copy())
153
173
 
154
174
  # Get preprocessor to use (if provided)
155
175
  if preprocessors is not None:
156
- _preprocessors = [x.copy() for x in preprocessors]
157
- built_preprocessors = []
158
- for preprocessor in _preprocessors:
159
- preprocessor_object = _get_preprocessor(preprocessor)
160
- built_preprocessors.append(preprocessor_object)
176
+ built_preprocessors = [
177
+ _get_preprocessor(preprocessor)
178
+ for preprocessor in preprocessors.copy()
179
+ ]
161
180
  else:
162
181
  built_preprocessors = None
163
182
 
@@ -167,6 +186,7 @@ def run(
167
186
  preprocessors=built_preprocessors,
168
187
  storage=storage_object,
169
188
  )
189
+ # Validate the marker collection for the datagrabber
170
190
  mc.validate(datagrabber_object)
171
191
 
172
192
  # Fit elements
@@ -192,19 +212,11 @@ def collect(storage: Dict) -> None:
192
212
  constructor.
193
213
 
194
214
  """
195
- storage_params = storage.copy()
196
- storage_kind = storage_params.pop("kind")
197
- logger.info(f"Collecting data using {storage_kind}")
198
- logger.debug(f"\tStorage params: {storage_params}")
199
- if "single_output" not in storage_params:
200
- storage_params["single_output"] = False
201
- storage_object = build(
202
- step="storage",
203
- name=storage_kind,
204
- baseclass=BaseFeatureStorage,
205
- init_params=storage_params,
206
- )
207
- storage_object = typing.cast(BaseFeatureStorage, storage_object)
215
+ logger.info(f"Collecting data using {storage['kind']}")
216
+ logger.debug(f"\tStorage params: {storage}")
217
+ if "single_output" not in storage:
218
+ storage["single_output"] = False
219
+ storage_object = _get_storage(storage.copy())
208
220
  logger.debug("Running storage.collect()")
209
221
  storage_object.collect()
210
222
  logger.info("Collect done")
@@ -15,7 +15,7 @@ from ruamel.yaml import YAML
15
15
  import junifer.testing.registry # noqa: F401
16
16
  from junifer.api import collect, list_elements, queue, reset, run
17
17
  from junifer.datagrabber.base import BaseDataGrabber
18
- from junifer.pipeline.registry import build
18
+ from junifer.pipeline import PipelineComponentRegistry
19
19
 
20
20
 
21
21
  # Configure YAML class
@@ -240,7 +240,7 @@ def test_run_and_collect(
240
240
  storage=storage,
241
241
  )
242
242
  # Get datagrabber
243
- dg = build(
243
+ dg = PipelineComponentRegistry().build_component_instance(
244
244
  step="datagrabber", name=datagrabber["kind"], baseclass=BaseDataGrabber
245
245
  )
246
246
  elements = dg.get_elements() # type: ignore
@@ -0,0 +1,29 @@
1
+ __all__ = [
2
+ "CoordinatesRegistry",
3
+ "ParcellationRegistry",
4
+ "MaskRegistry",
5
+ "get_data",
6
+ "list_data",
7
+ "load_data",
8
+ "register_data",
9
+ "deregister_data",
10
+ "get_template",
11
+ "get_xfm",
12
+ "utils",
13
+ ]
14
+
15
+ from .coordinates import CoordinatesRegistry
16
+ from .parcellations import ParcellationRegistry
17
+ from .masks import MaskRegistry
18
+
19
+ from ._dispatch import (
20
+ get_data,
21
+ list_data,
22
+ load_data,
23
+ register_data,
24
+ deregister_data,
25
+ )
26
+
27
+ from .template_spaces import get_template, get_xfm
28
+
29
+ from . import utils