junifer 0.0.6.dev335__tar.gz → 0.0.6.dev349__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 (508) hide show
  1. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/PKG-INFO +1 -1
  2. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/367.enh +1 -1
  3. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/389.enh +1 -1
  4. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/391.misc +1 -1
  5. junifer-0.0.6.dev349/docs/changes/newsfragments/395.enh +1 -0
  6. junifer-0.0.6.dev349/docs/changes/newsfragments/404.change +1 -0
  7. junifer-0.0.6.dev349/docs/changes/newsfragments/404.enh +1 -0
  8. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/extending/extension.rst +8 -9
  9. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/_version.py +2 -2
  10. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/masks/_ants_mask_warper.py +2 -2
  11. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/masks/_masks.py +192 -87
  12. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/masks/tests/test_masks.py +0 -1
  13. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/parcellations/_parcellations.py +18 -1
  14. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer.egg-info/PKG-INFO +1 -1
  15. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer.egg-info/SOURCES.txt +3 -0
  16. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.dockerignore +0 -0
  17. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
  18. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  19. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.github/ISSUE_TEMPLATE/dataset-request.yml +0 -0
  20. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.github/ISSUE_TEMPLATE/documention-request.yml +0 -0
  21. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.github/ISSUE_TEMPLATE/feature-request.yml +0 -0
  22. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.github/ISSUE_TEMPLATE/marker-request.yml +0 -0
  23. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.github/dependabot.yml +0 -0
  24. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.github/pull_request_template.md +0 -0
  25. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.github/workflows/ci-docs.yml +0 -0
  26. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.github/workflows/ci.yml +0 -0
  27. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.github/workflows/docker-ci-publish.yml +0 -0
  28. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.github/workflows/docker-docs-publish.yml +0 -0
  29. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.github/workflows/docs-preview.yml +0 -0
  30. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.github/workflows/docs.yml +0 -0
  31. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.github/workflows/lint.yml +0 -0
  32. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.github/workflows/pypi.yml +0 -0
  33. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.gitignore +0 -0
  34. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.gitmodules +0 -0
  35. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/.pre-commit-config.yaml +0 -0
  36. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/AUTHORS.rst +0 -0
  37. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/Dockerfile-ci +0 -0
  38. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/Dockerfile-docs +0 -0
  39. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/LICENSE.md +0 -0
  40. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/README.md +0 -0
  41. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/codecov.yml +0 -0
  42. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/conda-env.yml +0 -0
  43. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/Makefile +0 -0
  44. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/_static/css/custom.css +0 -0
  45. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/_static/js/custom.js +0 -0
  46. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/_templates/versions.html +0 -0
  47. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/api/api.rst +0 -0
  48. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/api/cli.rst +0 -0
  49. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/api/configs.rst +0 -0
  50. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/api/data.rst +0 -0
  51. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/api/datagrabbers.rst +0 -0
  52. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/api/datareaders.rst +0 -0
  53. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/api/index.rst +0 -0
  54. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/api/markers.rst +0 -0
  55. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/api/nilearn.rst +0 -0
  56. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/api/onthefly.rst +0 -0
  57. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/api/pipeline.rst +0 -0
  58. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/api/preprocessing.rst +0 -0
  59. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/api/stats.rst +0 -0
  60. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/api/storage.rst +0 -0
  61. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/api/testing.rst +0 -0
  62. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/api/utils.rst +0 -0
  63. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/builtin.rst +0 -0
  64. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/contributors.inc +0 -0
  65. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/.gitignore +0 -0
  66. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/335.enh +0 -0
  67. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/354.feature +0 -0
  68. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/355.misc +0 -0
  69. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/356.bugfix +0 -0
  70. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/357.enh +0 -0
  71. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/358.doc +0 -0
  72. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/359.doc +0 -0
  73. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/360.bugfix +0 -0
  74. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/361.misc +0 -0
  75. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/362.feature +0 -0
  76. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/368.enh +0 -0
  77. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/369.bugfix +0 -0
  78. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/370.bugfix +0 -0
  79. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/372.misc +0 -0
  80. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/373.misc +0 -0
  81. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/374.misc +0 -0
  82. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/380.misc +0 -0
  83. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/382.misc +0 -0
  84. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/383.misc +0 -0
  85. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/384.misc +0 -0
  86. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/385.bugfix +0 -0
  87. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/386.bugfix +0 -0
  88. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/387.change +0 -0
  89. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/387.feature +0 -0
  90. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/388.bugfix +0 -0
  91. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/390.change +0 -0
  92. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/390.enh +0 -0
  93. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/392.feature +0 -0
  94. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/393.misc +0 -0
  95. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/398.bugfix +0 -0
  96. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/401.feature +0 -0
  97. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/402.change +0 -0
  98. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/402.enh +0 -0
  99. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/403.enh +0 -0
  100. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/405.change +0 -0
  101. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/405.enh +0 -0
  102. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/407.feature +0 -0
  103. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/408.enh +0 -0
  104. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/408.feature +0 -0
  105. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/409.bugfix +0 -0
  106. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/409.enh +0 -0
  107. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/412.change +0 -0
  108. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/412.feature +0 -0
  109. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/changes/newsfragments/413.change +0 -0
  110. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/conf.py +0 -0
  111. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/contribution.rst +0 -0
  112. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/extending/coordinates.rst +0 -0
  113. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/extending/datagrabber.rst +0 -0
  114. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/extending/dependencies.rst +0 -0
  115. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/extending/index.rst +0 -0
  116. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/extending/marker.rst +0 -0
  117. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/extending/masks.rst +0 -0
  118. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/extending/parcellations.rst +0 -0
  119. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/extending/preprocessor.rst +0 -0
  120. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/faq.rst +0 -0
  121. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/help.rst +0 -0
  122. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/images/junifer_logo.png +0 -0
  123. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/index.rst +0 -0
  124. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/installation.rst +0 -0
  125. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/links.inc +0 -0
  126. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/maintaining.rst +0 -0
  127. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/redirect.html +0 -0
  128. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/starting.rst +0 -0
  129. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/understanding/data.rst +0 -0
  130. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/understanding/datagrabber.rst +0 -0
  131. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/understanding/datareader.rst +0 -0
  132. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/understanding/index.rst +0 -0
  133. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/understanding/marker.rst +0 -0
  134. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/understanding/pipeline.rst +0 -0
  135. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/understanding/preprocess.rst +0 -0
  136. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/understanding/storage.rst +0 -0
  137. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/using/codeless.rst +0 -0
  138. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/using/index.rst +0 -0
  139. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/using/masks.rst +0 -0
  140. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/using/queueing.rst +0 -0
  141. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/using/running.rst +0 -0
  142. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/docs/whats_new.rst +0 -0
  143. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/examples/README.rst +0 -0
  144. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/examples/norun_hcpfc_pearson.py +0 -0
  145. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/examples/norun_ukbvm_gmd.py +0 -0
  146. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/examples/run_compute_parcel_mean.py +0 -0
  147. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/examples/run_datagrabber_bids_datalad.py +0 -0
  148. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/examples/run_ets_rss_marker.py +0 -0
  149. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/examples/run_junifer_julearn.py +0 -0
  150. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/examples/run_run_gmd_mean.py +0 -0
  151. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/examples/yamls/gmd_mean.yaml +0 -0
  152. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/examples/yamls/gmd_mean_htcondor.yaml +0 -0
  153. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/examples/yamls/partly_cloudy_agg_mean_tian.yml +0 -0
  154. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/examples/yamls/ukb_gmd_mean.yaml +0 -0
  155. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/ignore_words.txt +0 -0
  156. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/__init__.py +0 -0
  157. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/__init__.pyi +0 -0
  158. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/__init__.py +0 -0
  159. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/__init__.pyi +0 -0
  160. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/decorators.py +0 -0
  161. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/functions.py +0 -0
  162. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/py.typed +0 -0
  163. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/queue_context/__init__.py +0 -0
  164. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/queue_context/__init__.pyi +0 -0
  165. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/queue_context/gnu_parallel_local_adapter.py +0 -0
  166. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/queue_context/htcondor_adapter.py +0 -0
  167. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/queue_context/py.typed +0 -0
  168. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/queue_context/queue_context_adapter.py +0 -0
  169. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/queue_context/tests/test_gnu_parallel_local_adapter.py +0 -0
  170. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/queue_context/tests/test_htcondor_adapter.py +0 -0
  171. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/afni/3dAFNItoNIFTI +0 -0
  172. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/afni/3dRSFC +0 -0
  173. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/afni/3dReHo +0 -0
  174. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/afni/afni +0 -0
  175. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/afni/run_afni_docker.sh +0 -0
  176. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/ants/ResampleImage +0 -0
  177. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/ants/antsApplyTransforms +0 -0
  178. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/ants/antsApplyTransformsToPoints +0 -0
  179. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/ants/run_ants_docker.sh +0 -0
  180. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/freesurfer/mri_binarize +0 -0
  181. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/freesurfer/mri_mc +0 -0
  182. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/freesurfer/mri_pretess +0 -0
  183. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/freesurfer/mris_convert +0 -0
  184. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/freesurfer/run_freesurfer_docker.sh +0 -0
  185. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/fsl/applywarp +0 -0
  186. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/fsl/flirt +0 -0
  187. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/fsl/img2imgcoord +0 -0
  188. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/fsl/run_fsl_docker.sh +0 -0
  189. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/fsl/std2imgcoord +0 -0
  190. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/run_conda.bash +0 -0
  191. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/run_conda.zsh +0 -0
  192. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/run_venv.bash +0 -0
  193. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/res/run_venv.zsh +0 -0
  194. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/api/tests/test_functions.py +0 -0
  195. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/cli/__init__.py +0 -0
  196. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/cli/__init__.pyi +0 -0
  197. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/cli/cli.py +0 -0
  198. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/cli/parser.py +0 -0
  199. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/cli/py.typed +0 -0
  200. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/cli/tests/data/gmd_mean.yaml +0 -0
  201. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/cli/tests/data/gmd_mean_htcondor.yaml +0 -0
  202. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/cli/tests/data/partly_cloudy_agg_mean_tian.yml +0 -0
  203. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/cli/tests/test_cli.py +0 -0
  204. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/cli/tests/test_cli_utils.py +0 -0
  205. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/cli/tests/test_parser.py +0 -0
  206. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/cli/utils.py +0 -0
  207. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/configs/__init__.py +0 -0
  208. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/configs/juseless/__init__.py +0 -0
  209. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/configs/juseless/__init__.pyi +0 -0
  210. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/configs/juseless/datagrabbers/__init__.py +0 -0
  211. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/configs/juseless/datagrabbers/__init__.pyi +0 -0
  212. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/configs/juseless/datagrabbers/aomic_id1000_vbm.py +0 -0
  213. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/configs/juseless/datagrabbers/camcan_vbm.py +0 -0
  214. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/configs/juseless/datagrabbers/ixi_vbm.py +0 -0
  215. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/configs/juseless/datagrabbers/py.typed +0 -0
  216. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/configs/juseless/datagrabbers/tests/test_aomic_id1000_vbm.py +0 -0
  217. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/configs/juseless/datagrabbers/tests/test_camcan_vbm.py +0 -0
  218. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/configs/juseless/datagrabbers/tests/test_ixi_vbm.py +0 -0
  219. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/configs/juseless/datagrabbers/tests/test_ucla.py +0 -0
  220. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/configs/juseless/datagrabbers/tests/test_ukb_vbm.py +0 -0
  221. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/configs/juseless/datagrabbers/ucla.py +0 -0
  222. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/configs/juseless/datagrabbers/ukb_vbm.py +0 -0
  223. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/configs/juseless/py.typed +0 -0
  224. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/conftest.py +0 -0
  225. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/__init__.py +0 -0
  226. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/__init__.pyi +0 -0
  227. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/_dispatch.py +0 -0
  228. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/VOIs/meta/AutobiographicalMemory_VOIs.txt +0 -0
  229. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/VOIs/meta/CogAC_VOIs.txt +0 -0
  230. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/VOIs/meta/CogAR_VOIs.txt +0 -0
  231. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/VOIs/meta/DMNBuckner_VOIs.txt +0 -0
  232. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/VOIs/meta/Dosenbach2010_MNI_VOIs.txt +0 -0
  233. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/VOIs/meta/Empathy_VOIs.txt +0 -0
  234. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/VOIs/meta/Motor_VOIs.txt +0 -0
  235. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/VOIs/meta/MultiTask_VOIs.txt +0 -0
  236. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/VOIs/meta/PhysioStress_VOIs.txt +0 -0
  237. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/VOIs/meta/Power2011_MNI_VOIs.txt +0 -0
  238. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/VOIs/meta/Power2013_MNI_VOIs.tsv +0 -0
  239. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/VOIs/meta/Rew_VOIs.txt +0 -0
  240. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/VOIs/meta/Somatosensory_VOIs.txt +0 -0
  241. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/VOIs/meta/ToM_VOIs.txt +0 -0
  242. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/VOIs/meta/VigAtt_VOIs.txt +0 -0
  243. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/VOIs/meta/WM_VOIs.txt +0 -0
  244. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/VOIs/meta/eMDN_VOIs.txt +0 -0
  245. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/VOIs/meta/eSAD_VOIs.txt +0 -0
  246. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/VOIs/meta/extDMN_VOIs.txt +0 -0
  247. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/__init__.py +0 -0
  248. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/__init__.pyi +0 -0
  249. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/_ants_coordinates_warper.py +0 -0
  250. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/_coordinates.py +0 -0
  251. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/_fsl_coordinates_warper.py +0 -0
  252. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/coordinates/tests/test_coordinates.py +0 -0
  253. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/masks/__init__.py +0 -0
  254. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/masks/__init__.pyi +0 -0
  255. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/masks/_fsl_mask_warper.py +0 -0
  256. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/masks/ukb/UKB_15K_GM_template.nii.gz +0 -0
  257. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/masks/vickery-patil/CAT12_IXI555_MNI152_TMP_GS_GMprob0.2_clean.nii.gz +0 -0
  258. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/masks/vickery-patil/CAT12_IXI555_MNI152_TMP_GS_GMprob0.2_clean_3mm.nii.gz +0 -0
  259. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/masks/vickery-patil/GMprob0.2_cortex_3mm_NA_rm.nii.gz +0 -0
  260. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/parcellations/__init__.py +0 -0
  261. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/parcellations/__init__.pyi +0 -0
  262. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/parcellations/_ants_parcellation_warper.py +0 -0
  263. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/parcellations/_fsl_parcellation_warper.py +0 -0
  264. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/parcellations/tests/test_parcellations.py +0 -0
  265. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/pipeline_data_registry_base.py +0 -0
  266. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/py.typed +0 -0
  267. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/template_spaces.py +0 -0
  268. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/tests/test_data_utils.py +0 -0
  269. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/tests/test_template_spaces.py +0 -0
  270. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/data/utils.py +0 -0
  271. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/__init__.py +0 -0
  272. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/__init__.pyi +0 -0
  273. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/aomic/__init__.py +0 -0
  274. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/aomic/__init__.pyi +0 -0
  275. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/aomic/id1000.py +0 -0
  276. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/aomic/piop1.py +0 -0
  277. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/aomic/piop2.py +0 -0
  278. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/aomic/py.typed +0 -0
  279. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/aomic/tests/test_id1000.py +0 -0
  280. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/aomic/tests/test_piop1.py +0 -0
  281. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/aomic/tests/test_piop2.py +0 -0
  282. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/base.py +0 -0
  283. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/datalad_base.py +0 -0
  284. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/dmcc13_benchmark.py +0 -0
  285. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/hcp1200/__init__.py +0 -0
  286. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/hcp1200/__init__.pyi +0 -0
  287. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/hcp1200/datalad_hcp1200.py +0 -0
  288. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/hcp1200/hcp1200.py +0 -0
  289. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/hcp1200/py.typed +0 -0
  290. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/hcp1200/tests/test_hcp1200.py +0 -0
  291. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/multiple.py +0 -0
  292. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/pattern.py +0 -0
  293. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/pattern_datalad.py +0 -0
  294. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/pattern_validation_mixin.py +0 -0
  295. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/py.typed +0 -0
  296. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/tests/test_base.py +0 -0
  297. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/tests/test_datalad_base.py +0 -0
  298. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/tests/test_dmcc13_benchmark.py +0 -0
  299. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/tests/test_multiple.py +0 -0
  300. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/tests/test_pattern.py +0 -0
  301. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/tests/test_pattern_datalad.py +0 -0
  302. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datagrabber/tests/test_pattern_validation_mixin.py +0 -0
  303. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datareader/__init__.py +0 -0
  304. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datareader/__init__.pyi +0 -0
  305. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datareader/default.py +0 -0
  306. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datareader/py.typed +0 -0
  307. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/datareader/tests/test_default_reader.py +0 -0
  308. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/BrainPrint/brainprint/__init__.py +0 -0
  309. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/BrainPrint/brainprint/_version.py +0 -0
  310. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/BrainPrint/brainprint/asymmetry.py +0 -0
  311. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/BrainPrint/brainprint/brainprint.py +0 -0
  312. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/BrainPrint/brainprint/surfaces.py +0 -0
  313. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/BrainPrint/brainprint/utils/__init__.py +0 -0
  314. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/BrainPrint/brainprint/utils/_config.py +0 -0
  315. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/BrainPrint/brainprint/utils/utils.py +0 -0
  316. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/__init__.py +0 -0
  317. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/h5io/h5io/__init__.py +0 -0
  318. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/h5io/h5io/_h5io.py +0 -0
  319. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/h5io/h5io/_version.py +0 -0
  320. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/h5io/h5io/chunked_array.py +0 -0
  321. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/h5io/h5io/chunked_list.py +0 -0
  322. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/nilearn/__init__.py +0 -0
  323. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/nilearn/__init__.pyi +0 -0
  324. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/nilearn/junifer_connectivity_measure.py +0 -0
  325. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/nilearn/junifer_nifti_spheres_masker.py +0 -0
  326. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/nilearn/py.typed +0 -0
  327. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/nilearn/tests/test_junifer_connectivity_measure.py +0 -0
  328. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/external/nilearn/tests/test_junifer_nifti_spheres_masker.py +0 -0
  329. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/__init__.py +0 -0
  330. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/__init__.pyi +0 -0
  331. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/base.py +0 -0
  332. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/brainprint.py +0 -0
  333. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/complexity/__init__.py +0 -0
  334. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/complexity/__init__.pyi +0 -0
  335. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/complexity/complexity_base.py +0 -0
  336. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/complexity/hurst_exponent.py +0 -0
  337. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/complexity/multiscale_entropy_auc.py +0 -0
  338. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/complexity/perm_entropy.py +0 -0
  339. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/complexity/py.typed +0 -0
  340. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/complexity/range_entropy.py +0 -0
  341. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/complexity/range_entropy_auc.py +0 -0
  342. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/complexity/sample_entropy.py +0 -0
  343. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/complexity/tests/test_complexity_base.py +0 -0
  344. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/complexity/tests/test_hurst_exponent.py +0 -0
  345. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/complexity/tests/test_multiscale_entropy_auc.py +0 -0
  346. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/complexity/tests/test_perm_entropy.py +0 -0
  347. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/complexity/tests/test_range_entropy.py +0 -0
  348. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/complexity/tests/test_range_entropy_auc.py +0 -0
  349. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/complexity/tests/test_sample_entropy.py +0 -0
  350. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/complexity/tests/test_weighted_perm_entropy.py +0 -0
  351. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/complexity/weighted_perm_entropy.py +0 -0
  352. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/ets_rss.py +0 -0
  353. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/falff/__init__.py +0 -0
  354. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/falff/__init__.pyi +0 -0
  355. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/falff/_afni_falff.py +0 -0
  356. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/falff/_junifer_falff.py +0 -0
  357. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/falff/falff_base.py +0 -0
  358. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/falff/falff_parcels.py +0 -0
  359. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/falff/falff_spheres.py +0 -0
  360. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/falff/py.typed +0 -0
  361. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/falff/tests/test_falff_parcels.py +0 -0
  362. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/falff/tests/test_falff_spheres.py +0 -0
  363. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/functional_connectivity/__init__.py +0 -0
  364. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/functional_connectivity/__init__.pyi +0 -0
  365. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/functional_connectivity/crossparcellation_functional_connectivity.py +0 -0
  366. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/functional_connectivity/edge_functional_connectivity_parcels.py +0 -0
  367. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/functional_connectivity/edge_functional_connectivity_spheres.py +0 -0
  368. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/functional_connectivity/functional_connectivity_base.py +0 -0
  369. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/functional_connectivity/functional_connectivity_parcels.py +0 -0
  370. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/functional_connectivity/functional_connectivity_spheres.py +0 -0
  371. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/functional_connectivity/py.typed +0 -0
  372. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/functional_connectivity/tests/test_crossparcellation_functional_connectivity.py +0 -0
  373. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_parcels.py +0 -0
  374. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_spheres.py +0 -0
  375. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_base.py +0 -0
  376. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_parcels.py +0 -0
  377. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_spheres.py +0 -0
  378. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/parcel_aggregation.py +0 -0
  379. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/py.typed +0 -0
  380. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/reho/__init__.py +0 -0
  381. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/reho/__init__.pyi +0 -0
  382. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/reho/_afni_reho.py +0 -0
  383. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/reho/_junifer_reho.py +0 -0
  384. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/reho/py.typed +0 -0
  385. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/reho/reho_base.py +0 -0
  386. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/reho/reho_parcels.py +0 -0
  387. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/reho/reho_spheres.py +0 -0
  388. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/reho/tests/test_reho_parcels.py +0 -0
  389. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/reho/tests/test_reho_spheres.py +0 -0
  390. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/sphere_aggregation.py +0 -0
  391. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/temporal_snr/__init__.py +0 -0
  392. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/temporal_snr/__init__.pyi +0 -0
  393. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/temporal_snr/py.typed +0 -0
  394. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/temporal_snr/temporal_snr_base.py +0 -0
  395. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/temporal_snr/temporal_snr_parcels.py +0 -0
  396. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/temporal_snr/temporal_snr_spheres.py +0 -0
  397. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/temporal_snr/tests/test_temporal_snr_base.py +0 -0
  398. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/temporal_snr/tests/test_temporal_snr_parcels.py +0 -0
  399. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/temporal_snr/tests/test_temporal_snr_spheres.py +0 -0
  400. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/tests/test_brainprint.py +0 -0
  401. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/tests/test_ets_rss.py +0 -0
  402. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/tests/test_marker_utils.py +0 -0
  403. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/tests/test_markers_base.py +0 -0
  404. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/tests/test_parcel_aggregation.py +0 -0
  405. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/tests/test_sphere_aggregation.py +0 -0
  406. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/markers/utils.py +0 -0
  407. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/onthefly/__init__.py +0 -0
  408. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/onthefly/_brainprint.py +0 -0
  409. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/onthefly/read_transform.py +0 -0
  410. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/onthefly/tests/test_read_transform.py +0 -0
  411. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/pipeline/__init__.py +0 -0
  412. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/pipeline/__init__.pyi +0 -0
  413. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/pipeline/marker_collection.py +0 -0
  414. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/pipeline/pipeline_component_registry.py +0 -0
  415. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/pipeline/pipeline_step_mixin.py +0 -0
  416. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/pipeline/py.typed +0 -0
  417. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/pipeline/tests/test_marker_collection.py +0 -0
  418. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/pipeline/tests/test_pipeline_component_registry.py +0 -0
  419. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/pipeline/tests/test_pipeline_step_mixin.py +0 -0
  420. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/pipeline/tests/test_update_meta_mixin.py +0 -0
  421. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/pipeline/tests/test_workdir_manager.py +0 -0
  422. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/pipeline/update_meta_mixin.py +0 -0
  423. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/pipeline/utils.py +0 -0
  424. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/pipeline/workdir_manager.py +0 -0
  425. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/__init__.py +0 -0
  426. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/__init__.pyi +0 -0
  427. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/base.py +0 -0
  428. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/confounds/__init__.py +0 -0
  429. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/confounds/__init__.pyi +0 -0
  430. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/confounds/fmriprep_confound_remover.py +0 -0
  431. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/confounds/py.typed +0 -0
  432. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/confounds/tests/test_fmriprep_confound_remover.py +0 -0
  433. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/py.typed +0 -0
  434. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/smoothing/__init__.py +0 -0
  435. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/smoothing/__init__.pyi +0 -0
  436. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/smoothing/_afni_smoothing.py +0 -0
  437. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/smoothing/_fsl_smoothing.py +0 -0
  438. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/smoothing/_nilearn_smoothing.py +0 -0
  439. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/smoothing/py.typed +0 -0
  440. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/smoothing/smoothing.py +0 -0
  441. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/smoothing/tests/test_smoothing.py +0 -0
  442. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/tests/test_preprocess_base.py +0 -0
  443. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/warping/__init__.py +0 -0
  444. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/warping/__init__.pyi +0 -0
  445. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/warping/_ants_warper.py +0 -0
  446. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/warping/_fsl_warper.py +0 -0
  447. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/warping/py.typed +0 -0
  448. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/warping/space_warper.py +0 -0
  449. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/preprocess/warping/tests/test_space_warper.py +0 -0
  450. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/py.typed +0 -0
  451. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/stats.py +0 -0
  452. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/storage/__init__.py +0 -0
  453. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/storage/__init__.pyi +0 -0
  454. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/storage/base.py +0 -0
  455. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/storage/hdf5.py +0 -0
  456. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/storage/pandas_base.py +0 -0
  457. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/storage/py.typed +0 -0
  458. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/storage/sqlite.py +0 -0
  459. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/storage/tests/test_hdf5.py +0 -0
  460. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/storage/tests/test_pandas_base.py +0 -0
  461. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/storage/tests/test_sqlite.py +0 -0
  462. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/storage/tests/test_storage_base.py +0 -0
  463. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/storage/tests/test_utils.py +0 -0
  464. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/storage/utils.py +0 -0
  465. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/testing/__init__.py +0 -0
  466. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/testing/__init__.pyi +0 -0
  467. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/testing/data/sub-0001_task-anticipation_acq-seq_desc-confounds_regressors.tsv +0 -0
  468. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/testing/datagrabbers.py +0 -0
  469. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/testing/py.typed +0 -0
  470. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/testing/registry.py +0 -0
  471. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/testing/tests/test_oasisvmbtesting_datagrabber.py +0 -0
  472. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/testing/tests/test_partlycloudytesting_datagrabber.py +0 -0
  473. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/testing/tests/test_spmauditory_datagrabber.py +0 -0
  474. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/testing/tests/test_testing_registry.py +0 -0
  475. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/testing/utils.py +0 -0
  476. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/tests/test_main.py +0 -0
  477. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/tests/test_stats.py +0 -0
  478. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/typing/__init__.py +0 -0
  479. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/typing/__init__.pyi +0 -0
  480. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/typing/_typing.py +0 -0
  481. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/utils/__init__.py +0 -0
  482. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/utils/__init__.pyi +0 -0
  483. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/utils/_config.py +0 -0
  484. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/utils/_yaml.py +0 -0
  485. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/utils/fs.py +0 -0
  486. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/utils/helpers.py +0 -0
  487. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/utils/logging.py +0 -0
  488. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/utils/py.typed +0 -0
  489. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/utils/singleton.py +0 -0
  490. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/utils/tests/test_config.py +0 -0
  491. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/utils/tests/test_fs.py +0 -0
  492. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/utils/tests/test_helpers.py +0 -0
  493. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer/utils/tests/test_logging.py +0 -0
  494. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer.egg-info/dependency_links.txt +0 -0
  495. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer.egg-info/entry_points.txt +0 -0
  496. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer.egg-info/requires.txt +0 -0
  497. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/junifer.egg-info/top_level.txt +0 -0
  498. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/pyproject.toml +0 -0
  499. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/setup.cfg +0 -0
  500. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/setup.py +0 -0
  501. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/tools/create_aomic1000_example_dataset.py +0 -0
  502. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/tools/create_aomicpiop1_example_dataset.py +0 -0
  503. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/tools/create_aomicpiop2_example_dataset.py +0 -0
  504. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/tools/create_bids_example_dataset.py +0 -0
  505. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/tools/create_bids_example_dataset_sessions.py +0 -0
  506. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/tools/create_dmcc13_benchmark_example_dataset.py +0 -0
  507. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/tools/create_hcp1200_example_dataset.py +0 -0
  508. {junifer-0.0.6.dev335 → junifer-0.0.6.dev349}/tox.ini +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: junifer
3
- Version: 0.0.6.dev335
3
+ Version: 0.0.6.dev349
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>
@@ -1 +1 @@
1
- Allow for external python files in the ``with`` section of the yaml to import other files by `Fede Raimondo`_
1
+ Allow for external python files in the ``with`` section of the yaml to import other files by `Fede Raimondo`_
@@ -1 +1 @@
1
- Add a ``cleanup`` parameter to the :class:`junifer.pipeline.WorkDirManager`, which allows to disable cleaning up temporary directories by `Fede Raimondo`_
1
+ Add a ``cleanup`` parameter to the :class:`junifer.pipeline.WorkDirManager`, which allows to disable cleaning up temporary directories by `Fede Raimondo`_
@@ -1 +1 @@
1
- Refactor ``Singleton`` class to use a metaclass instead of a class decorator by `Fede Raimondo`_
1
+ Refactor ``Singleton`` class to use a metaclass instead of a class decorator by `Fede Raimondo`_
@@ -0,0 +1 @@
1
+ Refactor the masking logic in the pipeline to account for and optimise space transformations and merges by `Synchon Mandal`_ and `Fede Raimondo`_
@@ -0,0 +1 @@
1
+ Add ``source`` parameter and resurrect ``extra_input`` parameter for ``compute_brain_mask`` by `Fede Raimondo`_
@@ -0,0 +1 @@
1
+ Enable ``compute_brain_mask`` to use subject-specific probseg files by `Fede Raimondo`_
@@ -31,7 +31,7 @@ This is the ideal place to include ``junifer`` extensions.
31
31
  Some ``junifer`` commands will not consider files imported from files
32
32
  included in the ``with`` statement, unless this is known to junifer. If
33
33
  ``my_file.py`` imports ``my_other_file.py``, the ``run`` command will work,
34
- but ``queue`` will not create a proper job. This is because we need to
34
+ but ``queue`` will not create a proper job. This is because we need to
35
35
  let junifer know that ``my_other_file.py`` is also part of the code. To do
36
36
  so, we need to include a special function in ``my_file.py`` which tells
37
37
  ``junifer`` about the dependencies of the module:
@@ -39,14 +39,13 @@ This is the ideal place to include ``junifer`` extensions.
39
39
  .. code-block:: python
40
40
 
41
41
  def junifer_module_deps() -> List[str]:
42
- """Return the dependencies of the module.
42
+ """Return the dependencies of the module.
43
43
 
44
- Returns
45
- -------
46
- list of str
47
- The list of dependencies.
44
+ Returns
45
+ -------
46
+ list of str
47
+ The list of dependencies.
48
48
 
49
- """
50
-
51
- return ["my_other_file.py"]
49
+ """
52
50
 
51
+ return ["my_other_file.py"]
@@ -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.dev335'
16
- __version_tuple__ = version_tuple = (0, 0, 6, 'dev335')
15
+ __version__ = version = '0.0.6.dev349'
16
+ __version_tuple__ = version_tuple = (0, 0, 6, 'dev349')
@@ -46,7 +46,7 @@ class ANTsMaskWarper:
46
46
  The mask image to transform.
47
47
  src : str
48
48
  The data type or template space to warp from.
49
- It should be empty string if ``dst="T1w"``.
49
+ It should be empty string if ``dst="native"``.
50
50
  dst : str
51
51
  The data type or template space to warp to.
52
52
  `"native"` is the only allowed data type and it uses the resampled
@@ -58,7 +58,7 @@ class ANTsMaskWarper:
58
58
  will be applied.
59
59
  warp_data : dict or None
60
60
  The warp data item of the data object. The value is unused if
61
- ``dst!="T1w"``.
61
+ ``dst!="native"``.
62
62
 
63
63
  Returns
64
64
  -------
@@ -44,23 +44,26 @@ _masks_path = Path(__file__).parent
44
44
 
45
45
  def compute_brain_mask(
46
46
  target_data: dict[str, Any],
47
- extra_input: Optional[dict[str, Any]] = None,
47
+ warp_data: Optional[dict[str, Any]] = None,
48
48
  mask_type: str = "brain",
49
49
  threshold: float = 0.5,
50
+ source: str = "template",
51
+ extra_input: Optional[dict[str, Any]] = None,
50
52
  ) -> "Nifti1Image":
51
53
  """Compute the whole-brain, grey-matter or white-matter mask.
52
54
 
53
55
  This mask is calculated using the template space and resolution as found
54
- in the ``target_data``.
56
+ in the ``target_data``. If target space is native, then the template is
57
+ warped to native and then thresholded.
55
58
 
56
59
  Parameters
57
60
  ----------
58
61
  target_data : dict
59
62
  The corresponding item of the data object for which mask will be
60
63
  loaded.
61
- extra_input : dict, optional
62
- The other fields in the data object. Useful for accessing other data
63
- types (default None).
64
+ warp_data : dict or None, optional
65
+ The warp data item of the data object. Needs to be provided if
66
+ ``target_data`` is in native space (default None).
64
67
  mask_type : {"brain", "gm", "wm"}, optional
65
68
  Type of mask to be computed:
66
69
 
@@ -71,6 +74,13 @@ def compute_brain_mask(
71
74
  (default "brain").
72
75
  threshold : float, optional
73
76
  The value under which the template is cut off (default 0.5).
77
+ source : {"subject", "template"}, optional
78
+ The source of the mask. If "subject", the mask is computed from the
79
+ subject's data (``VBM_GM`` or ``VBM_WM``). If "template", the mask is
80
+ computed from the template data (default "template").
81
+ extra_input : dict, optional
82
+ The other fields in the data object. Useful for accessing other data
83
+ types (default None).
74
84
 
75
85
  Returns
76
86
  -------
@@ -81,7 +91,13 @@ def compute_brain_mask(
81
91
  ------
82
92
  ValueError
83
93
  If ``mask_type`` is invalid or
84
- if ``extra_input`` is None when ``target_data``'s space is native.
94
+ if ``source`` is invalid or
95
+ if ``source="subject"`` and ``mask_type`` is invalid or
96
+ if ``warp_data`` is None when ``target_data``'s space is native or
97
+ if ``extra_input`` is None when ``source="subject"`` or
98
+ if ``VBM_GM`` or ``VBM_WM`` data types are not in ``extra_input``
99
+ when ``source="subject"`` and ``mask_type`` is ``"gm"`` or ``"wm"``
100
+ respectively.
85
101
 
86
102
  """
87
103
  logger.debug(f"Computing {mask_type} mask")
@@ -89,40 +105,77 @@ def compute_brain_mask(
89
105
  if mask_type not in ["brain", "gm", "wm"]:
90
106
  raise_error(f"Unknown mask type: {mask_type}")
91
107
 
108
+ if source not in ["subject", "template"]:
109
+ raise_error(f"Unknown mask source: {source}")
110
+
111
+ if source == "subject" and mask_type not in ["gm", "wm"]:
112
+ raise_error(f"Unknown mask type: {mask_type} for subject space")
113
+
92
114
  # Check pre-requirements for space manipulation
93
- target_space = target_data["space"]
94
- # Set target standard space to target space
95
- target_std_space = target_space
96
- # Extra data type requirement check if target space is native
97
- if target_space == "native":
115
+ if target_data["space"] == "native":
116
+ # Warp data check
117
+ if warp_data is None:
118
+ raise_error("No `warp_data` provided")
119
+ # Set space to fetch template using
120
+ target_std_space = warp_data["src"]
121
+ else:
122
+ # Set space to fetch template using
123
+ target_std_space = target_data["space"]
124
+
125
+ if source == "subject":
126
+ key = f"VBM_{mask_type.upper()}"
98
127
  # Check for extra inputs
99
128
  if extra_input is None:
100
129
  raise_error(
101
- "No extra input provided, requires `Warp` "
102
- "data type to infer target template space."
130
+ f"No extra input provided, requires `{key}` "
131
+ "data type to infer target template data and space."
132
+ )
133
+ # Check for missing data type
134
+ if key not in extra_input:
135
+ raise_error(
136
+ f"Cannot compute {mask_type} from subject's data. "
137
+ f"Missing {key} in extra input."
138
+ )
139
+ template = extra_input[key]["data"]
140
+ template_space = extra_input[key]["space"]
141
+ else:
142
+ # Fetch template in closest resolution
143
+ template = get_template(
144
+ space=target_std_space,
145
+ target_img=target_data["data"],
146
+ extra_input=None,
147
+ template_type=mask_type,
148
+ )
149
+ template_space = target_std_space
150
+ # Resample and warp template if target space is native
151
+ if target_data["space"] == "native" and template_space != "native":
152
+ if warp_data["warper"] == "fsl":
153
+ resampled_template = FSLMaskWarper().warp(
154
+ mask_name=f"template_{target_std_space}_for_compute_brain_mask",
155
+ mask_img=template,
156
+ target_data=target_data,
157
+ warp_data=warp_data,
158
+ )
159
+ elif warp_data["warper"] == "ants":
160
+ resampled_template = ANTsMaskWarper().warp(
161
+ mask_name=f"template_{target_std_space}_for_compute_brain_mask",
162
+ # use template here
163
+ mask_img=template,
164
+ src=target_std_space,
165
+ dst="native",
166
+ target_data=target_data,
167
+ warp_data=warp_data,
103
168
  )
104
- # Set target standard space to warp file space source
105
- for entry in extra_input["Warp"]:
106
- if entry["dst"] == "native":
107
- target_std_space = entry["src"]
108
-
109
- target_img = target_data["data"]
110
- # Fetch template in closest resolution
111
- template = get_template(
112
- space=target_std_space,
113
- target_img=target_img,
114
- extra_input=extra_input,
115
- template_type=mask_type,
116
- )
117
169
  # Resample template to target image
118
- resampled_template = resample_to_img(
119
- source_img=template, target_img=target_img
120
- )
170
+ else:
171
+ resampled_template = resample_to_img(
172
+ source_img=template, target_img=target_data["data"]
173
+ )
121
174
 
122
- # Threshold and get mask
175
+ # Threshold resampled template and get mask
123
176
  mask = (get_data(resampled_template) >= threshold).astype("int8")
124
177
 
125
- return new_img_like(target_img, mask) # type: ignore
178
+ return new_img_like(target_data["data"], mask) # type: ignore
126
179
 
127
180
 
128
181
  class MaskRegistry(BasePipelineDataRegistry, metaclass=Singleton):
@@ -369,6 +422,8 @@ class MaskRegistry(BasePipelineDataRegistry, metaclass=Singleton):
369
422
  """
370
423
  # Check pre-requirements for space manipulation
371
424
  target_space = target_data["space"]
425
+ logger.debug(f"Getting masks: {masks} in {target_space} space")
426
+
372
427
  # Extra data type requirement check if target space is native
373
428
  if target_space == "native":
374
429
  # Check for extra inputs
@@ -385,7 +440,13 @@ class MaskRegistry(BasePipelineDataRegistry, metaclass=Singleton):
385
440
  )
386
441
  # Set target standard space to warp file space source
387
442
  target_std_space = warper_spec["src"]
443
+ logger.debug(
444
+ f"Target space is native. Will warp from {target_std_space}"
445
+ )
388
446
  else:
447
+ # Set warper_spec so that compute_brain_mask does not fail when
448
+ # target space is non-native
449
+ warper_spec = None
389
450
  # Set target standard space to target space
390
451
  target_std_space = target_space
391
452
 
@@ -398,31 +459,33 @@ class MaskRegistry(BasePipelineDataRegistry, metaclass=Singleton):
398
459
  masks = [masks]
399
460
 
400
461
  # Check that masks passed as dicts have only one key
401
- invalid_elements = [
462
+ invalid_mask_specs = [
402
463
  x for x in masks if isinstance(x, dict) and len(x) != 1
403
464
  ]
404
- if len(invalid_elements) > 0:
465
+ if invalid_mask_specs:
405
466
  raise_error(
406
467
  "Each of the masks dictionary must have only one key, "
407
468
  "the name of the mask. The following dictionaries are "
408
- f"invalid: {invalid_elements}"
469
+ f"invalid: {invalid_mask_specs}"
409
470
  )
410
471
 
411
- # Check params for the intersection function
472
+ # Store params for nilearn.masking.intersect_mask()
412
473
  intersect_params = {}
413
- true_masks = []
474
+ # Store all mask specs for further operations
475
+ mask_specs = []
414
476
  for t_mask in masks:
415
477
  if isinstance(t_mask, dict):
478
+ # Get params to pass to nilearn.masking.intersect_mask()
416
479
  if "threshold" in t_mask:
417
480
  intersect_params["threshold"] = t_mask["threshold"]
418
481
  continue
419
- elif "connected" in t_mask:
482
+ if "connected" in t_mask:
420
483
  intersect_params["connected"] = t_mask["connected"]
421
484
  continue
422
- # All the other elements are masks
423
- true_masks.append(t_mask)
485
+ # Add mask spec
486
+ mask_specs.append(t_mask)
424
487
 
425
- if len(true_masks) == 0:
488
+ if not mask_specs:
426
489
  raise_error("No mask was passed. At least one mask is required.")
427
490
 
428
491
  # Get the nested mask data type for the input data type
@@ -430,7 +493,7 @@ class MaskRegistry(BasePipelineDataRegistry, metaclass=Singleton):
430
493
 
431
494
  # Get all the masks
432
495
  all_masks = []
433
- for t_mask in true_masks:
496
+ for t_mask in mask_specs:
434
497
  if isinstance(t_mask, dict):
435
498
  mask_name = next(iter(t_mask.keys()))
436
499
  mask_params = t_mask[mask_name]
@@ -441,33 +504,60 @@ class MaskRegistry(BasePipelineDataRegistry, metaclass=Singleton):
441
504
  # If mask is being inherited from the datagrabber or a
442
505
  # preprocessor, check that it's accessible
443
506
  if mask_name == "inherit":
507
+ logger.debug("Using inherited mask.")
444
508
  if inherited_mask_item is None:
445
509
  raise_error(
446
510
  "Cannot inherit mask from the target data. Either the "
447
511
  "DataGrabber or a Preprocessor does not provide "
448
512
  "`mask` for the target data type."
449
513
  )
514
+ logger.debug(
515
+ f"Inherited mask is in {inherited_mask_item['space']} "
516
+ "space."
517
+ )
450
518
  mask_img = inherited_mask_item["data"]
519
+
520
+ if inherited_mask_item["space"] != target_space:
521
+ raise_error(
522
+ "Inherited mask space does not match target space."
523
+ )
524
+ logger.debug("Resampling inherited mask to target image.")
525
+ # Resample inherited mask to target image
526
+ mask_img = resample_to_img(
527
+ source_img=mask_img,
528
+ target_img=target_data["data"],
529
+ )
451
530
  # Starting with new mask
452
531
  else:
453
532
  # Load mask
533
+ logger.debug(f"Loading mask {t_mask}.")
454
534
  mask_object, _, mask_space = self.load(
455
535
  mask_name, path_only=False, resolution=resolution
456
536
  )
457
- # Replace mask space with target space if mask's space is
458
- # inherit
459
- if mask_space == "inherit":
460
- mask_space = target_std_space
461
- # If mask is callable like from nilearn
537
+ # If mask is callable like from nilearn; space will be inherit
538
+ # so no check for that
462
539
  if callable(mask_object):
540
+ logger.debug("Computing mask (callable).")
463
541
  if mask_params is None:
464
542
  mask_params = {}
465
543
  # From nilearn
466
- if mask_name != "compute_brain_mask":
544
+ if mask_name in [
545
+ "compute_epi_mask",
546
+ "compute_background_mask",
547
+ ]:
467
548
  mask_img = mask_object(target_img, **mask_params)
468
- # Not from nilearn
549
+ # custom compute_brain_mask
550
+ elif mask_name == "compute_brain_mask":
551
+ mask_img = mask_object(
552
+ target_data=target_data,
553
+ warp_data=warper_spec,
554
+ extra_input=extra_input,
555
+ **mask_params,
556
+ )
557
+ # custom registered; arm kept for clarity
469
558
  else:
470
- mask_img = mask_object(target_data, **mask_params)
559
+ mask_img = mask_object(target_img, **mask_params)
560
+
471
561
  # Mask is a Nifti1Image
472
562
  else:
473
563
  # Mask params provided
@@ -477,33 +567,68 @@ class MaskRegistry(BasePipelineDataRegistry, metaclass=Singleton):
477
567
  "Cannot pass callable params to a non-callable "
478
568
  "mask."
479
569
  )
480
- # Resample mask to target image
481
- mask_img = resample_to_img(
482
- source_img=mask_object,
483
- target_img=target_img,
484
- interpolation="nearest",
485
- copy=True,
486
- )
487
- # Convert mask space if required
488
- if mask_space != target_std_space:
489
- mask_img = ANTsMaskWarper().warp(
490
- mask_name=mask_name,
491
- mask_img=mask_img,
492
- src=mask_space,
493
- dst=target_std_space,
494
- target_data=target_data,
495
- warp_data=None,
496
- )
570
+
571
+ # Resample and warp mask to standard space
572
+ if mask_space != target_std_space:
573
+ logger.debug(
574
+ f"Warping {t_mask} to {target_std_space} space "
575
+ "using ants."
576
+ )
577
+ mask_img = ANTsMaskWarper().warp(
578
+ mask_name=mask_name,
579
+ mask_img=mask_object,
580
+ src=mask_space,
581
+ dst=target_std_space,
582
+ target_data=target_data,
583
+ warp_data=warper_spec,
584
+ )
585
+
586
+ else:
587
+ # Resample mask to target image; no further warping
588
+ logger.debug(f"Resampling {t_mask} to target image.")
589
+ if target_space != "native":
590
+ mask_img = resample_to_img(
591
+ source_img=mask_object,
592
+ target_img=target_data["data"],
593
+ )
594
+ # Set mask_img in case no warping happens before this
595
+ else:
596
+ mask_img = mask_object
597
+ # Resample and warp mask if target data is native
598
+ if target_space == "native":
599
+ logger.debug(
600
+ "Warping mask to native space using "
601
+ f"{warper_spec['warper']}."
602
+ )
603
+ mask_name = f"{mask_name}_to_native"
604
+ # extra_input check done earlier and warper_spec exists
605
+ if warper_spec["warper"] == "fsl":
606
+ mask_img = FSLMaskWarper().warp(
607
+ mask_name=mask_name,
608
+ mask_img=mask_img,
609
+ target_data=target_data,
610
+ warp_data=warper_spec,
611
+ )
612
+ elif warper_spec["warper"] == "ants":
613
+ mask_img = ANTsMaskWarper().warp(
614
+ mask_name=mask_name,
615
+ mask_img=mask_img,
616
+ src="",
617
+ dst="native",
618
+ target_data=target_data,
619
+ warp_data=warper_spec,
620
+ )
497
621
 
498
622
  all_masks.append(mask_img)
499
623
 
500
624
  # Multiple masks, need intersection / union
501
625
  if len(all_masks) > 1:
502
626
  # Intersect / union of masks
627
+ logger.debug("Intersecting masks.")
503
628
  mask_img = intersect_masks(all_masks, **intersect_params)
504
629
  # Single mask
505
630
  else:
506
- if len(intersect_params) > 0:
631
+ if intersect_params:
507
632
  # Yes, I'm this strict!
508
633
  raise_error(
509
634
  "Cannot pass parameters to the intersection function "
@@ -511,26 +636,6 @@ class MaskRegistry(BasePipelineDataRegistry, metaclass=Singleton):
511
636
  )
512
637
  mask_img = all_masks[0]
513
638
 
514
- # Warp mask if target data is native
515
- if target_space == "native":
516
- # extra_input check done earlier and warper_spec exists
517
- if warper_spec["warper"] == "fsl":
518
- mask_img = FSLMaskWarper().warp(
519
- mask_name="native",
520
- mask_img=mask_img,
521
- target_data=target_data,
522
- warp_data=warper_spec,
523
- )
524
- elif warper_spec["warper"] == "ants":
525
- mask_img = ANTsMaskWarper().warp(
526
- mask_name="native",
527
- mask_img=mask_img,
528
- src="",
529
- dst="native",
530
- target_data=target_data,
531
- warp_data=warper_spec,
532
- )
533
-
534
639
  return mask_img
535
640
 
536
641
 
@@ -64,7 +64,6 @@ def test_compute_brain_mask(mask_type: str, threshold: float) -> None:
64
64
  element_data = DefaultDataReader().fit_transform(dg["sub-01"])
65
65
  mask = compute_brain_mask(
66
66
  target_data=element_data["BOLD"],
67
- extra_input=None,
68
67
  mask_type=mask_type,
69
68
  )
70
69
  assert isinstance(mask, nib.nifti1.Nifti1Image)
@@ -400,6 +400,7 @@ class ParcellationRegistry(BasePipelineDataRegistry, metaclass=Singleton):
400
400
  """
401
401
  # Check pre-requirements for space manipulation
402
402
  target_space = target_data["space"]
403
+ logger.debug(f"Getting {parcellations} in {target_space} space.")
403
404
  # Extra data type requirement check if target space is native
404
405
  if target_space == "native":
405
406
  # Check for extra inputs
@@ -416,6 +417,9 @@ class ParcellationRegistry(BasePipelineDataRegistry, metaclass=Singleton):
416
417
  )
417
418
  # Set target standard space to warp file space source
418
419
  target_std_space = warper_spec["src"]
420
+ logger.debug(
421
+ f"Target space is native. Will warp from {target_std_space}"
422
+ )
419
423
  else:
420
424
  # Set target standard space to target space
421
425
  target_std_space = target_space
@@ -433,6 +437,7 @@ class ParcellationRegistry(BasePipelineDataRegistry, metaclass=Singleton):
433
437
  all_labels = []
434
438
  for name in parcellations:
435
439
  # Load parcellation
440
+ logger.debug(f"Loading parcellation {name}")
436
441
  img, labels, _, space = self.load(
437
442
  name=name,
438
443
  resolution=resolution,
@@ -441,6 +446,9 @@ class ParcellationRegistry(BasePipelineDataRegistry, metaclass=Singleton):
441
446
  # Convert parcellation spaces if required;
442
447
  # cannot be "native" due to earlier check
443
448
  if space != target_std_space:
449
+ logger.debug(
450
+ f"Warping {name} to {target_std_space} space using ants."
451
+ )
444
452
  raw_img = ANTsParcellationWarper().warp(
445
453
  parcellation_name=name,
446
454
  parcellation_img=img,
@@ -452,6 +460,7 @@ class ParcellationRegistry(BasePipelineDataRegistry, metaclass=Singleton):
452
460
  # Remove extra dimension added by ANTs
453
461
  img = image.math_img("np.squeeze(img)", img=raw_img)
454
462
 
463
+ logger.debug(f"Resampling {name} to target image.")
455
464
  # Resample parcellation to target image
456
465
  img_to_merge = image.resample_to_img(
457
466
  source_img=img,
@@ -469,6 +478,7 @@ class ParcellationRegistry(BasePipelineDataRegistry, metaclass=Singleton):
469
478
  labels = all_labels[0]
470
479
  # Parcellations are already transformed to target standard space
471
480
  else:
481
+ logger.debug("Merging parcellations.")
472
482
  resampled_parcellation_img, labels = merge_parcellations(
473
483
  parcellations_list=all_parcellations,
474
484
  parcellations_names=parcellations,
@@ -477,6 +487,10 @@ class ParcellationRegistry(BasePipelineDataRegistry, metaclass=Singleton):
477
487
 
478
488
  # Warp parcellation if target space is native
479
489
  if target_space == "native":
490
+ logger.debug(
491
+ "Warping parcellation to native space using "
492
+ f"{warper_spec['warper']}."
493
+ )
480
494
  # extra_input check done earlier and warper_spec exists
481
495
  if warper_spec["warper"] == "fsl":
482
496
  resampled_parcellation_img = FSLParcellationWarper().warp(
@@ -1194,7 +1208,10 @@ def _retrieve_aicha(
1194
1208
 
1195
1209
  # Load labels
1196
1210
  labels = pd.read_csv(
1197
- parcellation_lname, sep="\t", header=None, skiprows=[0] # type: ignore
1211
+ parcellation_lname,
1212
+ sep="\t",
1213
+ header=None,
1214
+ skiprows=[0], # type: ignore
1198
1215
  )[0].to_list()
1199
1216
 
1200
1217
  return parcellation_fname, labels
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: junifer
3
- Version: 0.0.6.dev335
3
+ Version: 0.0.6.dev349
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>
@@ -95,11 +95,14 @@ docs/changes/newsfragments/390.enh
95
95
  docs/changes/newsfragments/391.misc
96
96
  docs/changes/newsfragments/392.feature
97
97
  docs/changes/newsfragments/393.misc
98
+ docs/changes/newsfragments/395.enh
98
99
  docs/changes/newsfragments/398.bugfix
99
100
  docs/changes/newsfragments/401.feature
100
101
  docs/changes/newsfragments/402.change
101
102
  docs/changes/newsfragments/402.enh
102
103
  docs/changes/newsfragments/403.enh
104
+ docs/changes/newsfragments/404.change
105
+ docs/changes/newsfragments/404.enh
103
106
  docs/changes/newsfragments/405.change
104
107
  docs/changes/newsfragments/405.enh
105
108
  docs/changes/newsfragments/407.feature