junifer 0.0.6.dev205__tar.gz → 0.0.6.dev219__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.
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/PKG-INFO +1 -1
- junifer-0.0.6.dev219/docs/changes/newsfragments/389.enh +1 -0
- junifer-0.0.6.dev219/docs/changes/newsfragments/391.misc +1 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/_version.py +2 -2
- junifer-0.0.6.dev219/junifer/conftest.py +25 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/_coordinates.py +2 -3
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/masks/_masks.py +2 -3
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/parcellations/_parcellations.py +2 -3
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/pipeline_data_registry_base.py +2 -1
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/hcp1200/tests/test_hcp1200.py +6 -1
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/falff/_afni_falff.py +2 -3
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/falff/_junifer_falff.py +2 -3
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/reho/_afni_reho.py +2 -3
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/reho/_junifer_reho.py +2 -3
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/pipeline/pipeline_component_registry.py +2 -3
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/pipeline/tests/test_workdir_manager.py +42 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/pipeline/workdir_manager.py +19 -5
- {junifer-0.0.6.dev205/junifer/pipeline → junifer-0.0.6.dev219/junifer/utils}/singleton.py +19 -14
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer.egg-info/PKG-INFO +1 -1
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer.egg-info/SOURCES.txt +4 -1
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.dockerignore +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.github/ISSUE_TEMPLATE/dataset-request.yml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.github/ISSUE_TEMPLATE/documention-request.yml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.github/ISSUE_TEMPLATE/feature-request.yml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.github/ISSUE_TEMPLATE/marker-request.yml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.github/dependabot.yml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.github/pull_request_template.md +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.github/workflows/ci-docs.yml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.github/workflows/ci.yml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.github/workflows/docker-ci-publish.yml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.github/workflows/docker-docs-publish.yml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.github/workflows/docs-preview.yml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.github/workflows/docs.yml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.github/workflows/lint.yml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.github/workflows/pypi.yml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.gitignore +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.gitmodules +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.pre-commit-config.yaml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/AUTHORS.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/Dockerfile-ci +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/Dockerfile-docs +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/LICENSE.md +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/README.md +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/codecov.yml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/conda-env.yml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/Makefile +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/_static/css/custom.css +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/_static/js/custom.js +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/_templates/versions.html +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/api/api.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/api/cli.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/api/configs.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/api/data.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/api/datagrabbers.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/api/datareaders.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/api/index.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/api/markers.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/api/nilearn.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/api/onthefly.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/api/pipeline.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/api/preprocessing.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/api/stats.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/api/storage.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/api/testing.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/api/utils.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/builtin.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/contributors.inc +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/.gitignore +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/335.enh +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/354.feature +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/355.misc +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/356.bugfix +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/357.enh +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/358.doc +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/359.doc +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/360.bugfix +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/361.misc +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/362.feature +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/367.enh +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/368.enh +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/369.bugfix +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/370.bugfix +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/372.misc +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/373.misc +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/374.misc +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/380.misc +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/382.misc +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/383.misc +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/384.misc +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/386.bugfix +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/387.change +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/changes/newsfragments/387.feature +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/conf.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/contribution.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/extending/coordinates.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/extending/datagrabber.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/extending/dependencies.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/extending/extension.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/extending/index.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/extending/marker.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/extending/masks.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/extending/parcellations.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/extending/preprocessor.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/faq.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/help.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/images/junifer_logo.png +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/index.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/installation.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/links.inc +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/maintaining.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/redirect.html +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/starting.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/understanding/data.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/understanding/datagrabber.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/understanding/datareader.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/understanding/index.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/understanding/marker.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/understanding/pipeline.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/understanding/preprocess.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/understanding/storage.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/using/codeless.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/using/index.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/using/masks.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/using/queueing.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/using/running.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/docs/whats_new.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/examples/README.rst +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/examples/norun_hcpfc_pearson.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/examples/norun_ukbvm_gmd.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/examples/run_compute_parcel_mean.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/examples/run_datagrabber_bids_datalad.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/examples/run_ets_rss_marker.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/examples/run_junifer_julearn.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/examples/run_run_gmd_mean.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/examples/yamls/gmd_mean.yaml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/examples/yamls/gmd_mean_htcondor.yaml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/examples/yamls/partly_cloudy_agg_mean_tian.yml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/examples/yamls/ukb_gmd_mean.yaml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/ignore_words.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/decorators.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/functions.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/queue_context/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/queue_context/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/queue_context/gnu_parallel_local_adapter.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/queue_context/htcondor_adapter.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/queue_context/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/queue_context/queue_context_adapter.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/queue_context/tests/test_gnu_parallel_local_adapter.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/queue_context/tests/test_htcondor_adapter.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/afni/3dAFNItoNIFTI +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/afni/3dRSFC +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/afni/3dReHo +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/afni/afni +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/afni/run_afni_docker.sh +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/ants/ResampleImage +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/ants/antsApplyTransforms +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/ants/antsApplyTransformsToPoints +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/ants/run_ants_docker.sh +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/freesurfer/mri_binarize +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/freesurfer/mri_mc +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/freesurfer/mri_pretess +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/freesurfer/mris_convert +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/freesurfer/run_freesurfer_docker.sh +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/fsl/applywarp +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/fsl/flirt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/fsl/img2imgcoord +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/fsl/run_fsl_docker.sh +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/fsl/std2imgcoord +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/run_conda.bash +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/run_conda.zsh +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/run_venv.bash +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/res/run_venv.zsh +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/api/tests/test_functions.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/cli/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/cli/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/cli/cli.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/cli/parser.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/cli/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/cli/tests/data/gmd_mean.yaml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/cli/tests/data/gmd_mean_htcondor.yaml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/cli/tests/data/partly_cloudy_agg_mean_tian.yml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/cli/tests/test_cli.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/cli/tests/test_cli_utils.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/cli/tests/test_parser.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/cli/utils.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/configs/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/configs/juseless/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/configs/juseless/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/configs/juseless/datagrabbers/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/configs/juseless/datagrabbers/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/configs/juseless/datagrabbers/aomic_id1000_vbm.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/configs/juseless/datagrabbers/camcan_vbm.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/configs/juseless/datagrabbers/ixi_vbm.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/configs/juseless/datagrabbers/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/configs/juseless/datagrabbers/tests/test_aomic_id1000_vbm.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/configs/juseless/datagrabbers/tests/test_camcan_vbm.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/configs/juseless/datagrabbers/tests/test_ixi_vbm.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/configs/juseless/datagrabbers/tests/test_ucla.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/configs/juseless/datagrabbers/tests/test_ukb_vbm.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/configs/juseless/datagrabbers/ucla.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/configs/juseless/datagrabbers/ukb_vbm.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/configs/juseless/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/_dispatch.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/VOIs/meta/AutobiographicalMemory_VOIs.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/VOIs/meta/CogAC_VOIs.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/VOIs/meta/CogAR_VOIs.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/VOIs/meta/DMNBuckner_VOIs.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/VOIs/meta/Dosenbach2010_MNI_VOIs.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/VOIs/meta/Empathy_VOIs.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/VOIs/meta/Motor_VOIs.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/VOIs/meta/MultiTask_VOIs.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/VOIs/meta/PhysioStress_VOIs.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/VOIs/meta/Power2011_MNI_VOIs.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/VOIs/meta/Power2013_MNI_VOIs.tsv +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/VOIs/meta/Rew_VOIs.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/VOIs/meta/Somatosensory_VOIs.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/VOIs/meta/ToM_VOIs.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/VOIs/meta/VigAtt_VOIs.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/VOIs/meta/WM_VOIs.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/VOIs/meta/eMDN_VOIs.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/VOIs/meta/eSAD_VOIs.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/VOIs/meta/extDMN_VOIs.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/_ants_coordinates_warper.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/_fsl_coordinates_warper.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/coordinates/tests/test_coordinates.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/masks/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/masks/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/masks/_ants_mask_warper.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/masks/_fsl_mask_warper.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/masks/tests/test_masks.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/masks/ukb/UKB_15K_GM_template.nii.gz +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/masks/vickery-patil/CAT12_IXI555_MNI152_TMP_GS_GMprob0.2_clean.nii.gz +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/masks/vickery-patil/CAT12_IXI555_MNI152_TMP_GS_GMprob0.2_clean_3mm.nii.gz +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/masks/vickery-patil/GMprob0.2_cortex_3mm_NA_rm.nii.gz +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/parcellations/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/parcellations/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/parcellations/_ants_parcellation_warper.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/parcellations/_fsl_parcellation_warper.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/parcellations/tests/test_parcellations.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/template_spaces.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/tests/test_data_utils.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/tests/test_template_spaces.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/data/utils.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/aomic/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/aomic/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/aomic/id1000.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/aomic/piop1.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/aomic/piop2.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/aomic/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/aomic/tests/test_id1000.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/aomic/tests/test_piop1.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/aomic/tests/test_piop2.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/datalad_base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/dmcc13_benchmark.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/hcp1200/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/hcp1200/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/hcp1200/datalad_hcp1200.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/hcp1200/hcp1200.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/hcp1200/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/multiple.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/pattern.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/pattern_datalad.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/pattern_validation_mixin.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/tests/test_base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/tests/test_datalad_base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/tests/test_dmcc13_benchmark.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/tests/test_multiple.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/tests/test_pattern.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/tests/test_pattern_datalad.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/tests/test_pattern_validation_mixin.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datareader/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datareader/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datareader/default.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datareader/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datareader/tests/test_default_reader.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/BrainPrint/brainprint/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/BrainPrint/brainprint/_version.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/BrainPrint/brainprint/asymmetry.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/BrainPrint/brainprint/brainprint.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/BrainPrint/brainprint/surfaces.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/BrainPrint/brainprint/utils/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/BrainPrint/brainprint/utils/_config.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/BrainPrint/brainprint/utils/utils.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/h5io/h5io/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/h5io/h5io/_h5io.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/h5io/h5io/_version.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/h5io/h5io/chunked_array.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/h5io/h5io/chunked_list.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/nilearn/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/nilearn/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/nilearn/junifer_connectivity_measure.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/nilearn/junifer_nifti_spheres_masker.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/nilearn/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/nilearn/tests/test_junifer_connectivity_measure.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/external/nilearn/tests/test_junifer_nifti_spheres_masker.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/brainprint.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/complexity/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/complexity/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/complexity/complexity_base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/complexity/hurst_exponent.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/complexity/multiscale_entropy_auc.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/complexity/perm_entropy.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/complexity/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/complexity/range_entropy.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/complexity/range_entropy_auc.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/complexity/sample_entropy.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/complexity/tests/test_complexity_base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/complexity/tests/test_hurst_exponent.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/complexity/tests/test_multiscale_entropy_auc.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/complexity/tests/test_perm_entropy.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/complexity/tests/test_range_entropy.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/complexity/tests/test_range_entropy_auc.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/complexity/tests/test_sample_entropy.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/complexity/tests/test_weighted_perm_entropy.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/complexity/weighted_perm_entropy.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/ets_rss.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/falff/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/falff/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/falff/falff_base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/falff/falff_parcels.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/falff/falff_spheres.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/falff/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/falff/tests/test_falff_parcels.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/falff/tests/test_falff_spheres.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/functional_connectivity/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/functional_connectivity/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/functional_connectivity/crossparcellation_functional_connectivity.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/functional_connectivity/edge_functional_connectivity_parcels.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/functional_connectivity/edge_functional_connectivity_spheres.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/functional_connectivity/functional_connectivity_base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/functional_connectivity/functional_connectivity_parcels.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/functional_connectivity/functional_connectivity_spheres.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/functional_connectivity/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/functional_connectivity/tests/test_crossparcellation_functional_connectivity.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_parcels.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_spheres.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_parcels.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_spheres.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/parcel_aggregation.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/reho/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/reho/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/reho/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/reho/reho_base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/reho/reho_parcels.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/reho/reho_spheres.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/reho/tests/test_reho_parcels.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/reho/tests/test_reho_spheres.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/sphere_aggregation.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/temporal_snr/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/temporal_snr/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/temporal_snr/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/temporal_snr/temporal_snr_base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/temporal_snr/temporal_snr_parcels.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/temporal_snr/temporal_snr_spheres.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/temporal_snr/tests/test_temporal_snr_base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/temporal_snr/tests/test_temporal_snr_parcels.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/temporal_snr/tests/test_temporal_snr_spheres.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/tests/test_brainprint.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/tests/test_ets_rss.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/tests/test_marker_utils.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/tests/test_markers_base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/tests/test_parcel_aggregation.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/tests/test_sphere_aggregation.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/markers/utils.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/onthefly/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/onthefly/_brainprint.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/onthefly/read_transform.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/onthefly/tests/test_read_transform.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/pipeline/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/pipeline/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/pipeline/marker_collection.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/pipeline/pipeline_step_mixin.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/pipeline/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/pipeline/tests/test_marker_collection.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/pipeline/tests/test_pipeline_component_registry.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/pipeline/tests/test_pipeline_step_mixin.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/pipeline/tests/test_update_meta_mixin.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/pipeline/update_meta_mixin.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/pipeline/utils.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/confounds/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/confounds/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/confounds/fmriprep_confound_remover.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/confounds/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/confounds/tests/test_fmriprep_confound_remover.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/smoothing/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/smoothing/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/smoothing/_afni_smoothing.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/smoothing/_fsl_smoothing.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/smoothing/_nilearn_smoothing.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/smoothing/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/smoothing/smoothing.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/smoothing/tests/test_smoothing.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/tests/test_preprocess_base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/warping/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/warping/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/warping/_ants_warper.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/warping/_fsl_warper.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/warping/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/warping/space_warper.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/preprocess/warping/tests/test_space_warper.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/stats.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/storage/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/storage/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/storage/base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/storage/hdf5.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/storage/pandas_base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/storage/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/storage/sqlite.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/storage/tests/test_hdf5.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/storage/tests/test_pandas_base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/storage/tests/test_sqlite.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/storage/tests/test_storage_base.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/storage/tests/test_utils.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/storage/utils.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/testing/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/testing/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/testing/data/sub-0001_task-anticipation_acq-seq_desc-confounds_regressors.tsv +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/testing/datagrabbers.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/testing/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/testing/registry.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/testing/tests/test_oasisvmbtesting_datagrabber.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/testing/tests/test_partlycloudytesting_datagrabber.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/testing/tests/test_spmauditory_datagrabber.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/testing/tests/test_testing_registry.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/testing/utils.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/tests/test_main.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/tests/test_stats.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/utils/__init__.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/utils/__init__.pyi +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/utils/_yaml.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/utils/fs.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/utils/helpers.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/utils/logging.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/utils/py.typed +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/utils/tests/test_fs.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/utils/tests/test_helpers.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/utils/tests/test_logging.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer.egg-info/dependency_links.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer.egg-info/entry_points.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer.egg-info/requires.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer.egg-info/top_level.txt +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/pyproject.toml +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/setup.cfg +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/setup.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/tools/create_aomic1000_example_dataset.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/tools/create_aomicpiop1_example_dataset.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/tools/create_aomicpiop2_example_dataset.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/tools/create_bids_example_dataset.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/tools/create_bids_example_dataset_sessions.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/tools/create_dmcc13_benchmark_example_dataset.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/tools/create_hcp1200_example_dataset.py +0 -0
- {junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/tox.ini +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: junifer
|
3
|
-
Version: 0.0.6.
|
3
|
+
Version: 0.0.6.dev219
|
4
4
|
Summary: JUelich NeuroImaging FEature extractoR
|
5
5
|
Author-email: Fede Raimondo <f.raimondo@fz-juelich.de>, Synchon Mandal <s.mandal@fz-juelich.de>
|
6
6
|
Maintainer-email: Fede Raimondo <f.raimondo@fz-juelich.de>, Synchon Mandal <s.mandal@fz-juelich.de>
|
@@ -0,0 +1 @@
|
|
1
|
+
Add a ``cleanup`` parameter to the :class:`junifer.pipeline.WorkDirManager`, which allows to disable cleaning up temporary directories by `Fede Raimondo`_
|
@@ -0,0 +1 @@
|
|
1
|
+
Refactor ``Singleton`` class to use a metaclass instead of a class decorator by `Fede Raimondo`_
|
@@ -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.
|
16
|
-
__version_tuple__ = version_tuple = (0, 0, 6, '
|
15
|
+
__version__ = version = '0.0.6.dev219'
|
16
|
+
__version_tuple__ = version_tuple = (0, 0, 6, 'dev219')
|
@@ -0,0 +1,25 @@
|
|
1
|
+
"""Provide conftest for pytest."""
|
2
|
+
|
3
|
+
# Authors: Federico Raimondo <f.raimondo@fz-juelich.de>
|
4
|
+
# License: AGPL
|
5
|
+
|
6
|
+
import pytest
|
7
|
+
|
8
|
+
from junifer.utils.singleton import Singleton
|
9
|
+
|
10
|
+
|
11
|
+
@pytest.fixture(autouse=True)
|
12
|
+
def reset_singletons() -> None:
|
13
|
+
"""Reset all singletons."""
|
14
|
+
to_clean = ["WorkDirManager"]
|
15
|
+
to_remove = [
|
16
|
+
v for k, v in Singleton.instances.items() if k.__name__ in to_clean
|
17
|
+
]
|
18
|
+
Singleton.instances = {
|
19
|
+
k: v
|
20
|
+
for k, v in Singleton.instances.items()
|
21
|
+
if k.__name__ not in to_clean
|
22
|
+
}
|
23
|
+
# Force deleting the singletons
|
24
|
+
for elem in to_remove:
|
25
|
+
del elem
|
@@ -11,8 +11,8 @@ import numpy as np
|
|
11
11
|
import pandas as pd
|
12
12
|
from numpy.typing import ArrayLike
|
13
13
|
|
14
|
-
from ...pipeline.singleton import singleton
|
15
14
|
from ...utils import logger, raise_error
|
15
|
+
from ...utils.singleton import Singleton
|
16
16
|
from ..pipeline_data_registry_base import BasePipelineDataRegistry
|
17
17
|
from ._ants_coordinates_warper import ANTsCoordinatesWarper
|
18
18
|
from ._fsl_coordinates_warper import FSLCoordinatesWarper
|
@@ -21,8 +21,7 @@ from ._fsl_coordinates_warper import FSLCoordinatesWarper
|
|
21
21
|
__all__ = ["CoordinatesRegistry"]
|
22
22
|
|
23
23
|
|
24
|
-
|
25
|
-
class CoordinatesRegistry(BasePipelineDataRegistry):
|
24
|
+
class CoordinatesRegistry(BasePipelineDataRegistry, metaclass=Singleton):
|
26
25
|
"""Class for coordinates data registry.
|
27
26
|
|
28
27
|
This class is a singleton and is used for managing available coordinates
|
@@ -25,8 +25,8 @@ from nilearn.masking import (
|
|
25
25
|
intersect_masks,
|
26
26
|
)
|
27
27
|
|
28
|
-
from ...pipeline.singleton import singleton
|
29
28
|
from ...utils import logger, raise_error
|
29
|
+
from ...utils.singleton import Singleton
|
30
30
|
from ..pipeline_data_registry_base import BasePipelineDataRegistry
|
31
31
|
from ..template_spaces import get_template
|
32
32
|
from ..utils import closest_resolution
|
@@ -126,8 +126,7 @@ def compute_brain_mask(
|
|
126
126
|
return new_img_like(target_img, mask) # type: ignore
|
127
127
|
|
128
128
|
|
129
|
-
|
130
|
-
class MaskRegistry(BasePipelineDataRegistry):
|
129
|
+
class MaskRegistry(BasePipelineDataRegistry, metaclass=Singleton):
|
131
130
|
"""Class for mask data registry.
|
132
131
|
|
133
132
|
This class is a singleton and is used for managing available mask
|
@@ -20,8 +20,8 @@ import numpy as np
|
|
20
20
|
import pandas as pd
|
21
21
|
from nilearn import datasets, image
|
22
22
|
|
23
|
-
from ...pipeline.singleton import singleton
|
24
23
|
from ...utils import logger, raise_error, warn_with_log
|
24
|
+
from ...utils.singleton import Singleton
|
25
25
|
from ..pipeline_data_registry_base import BasePipelineDataRegistry
|
26
26
|
from ..utils import closest_resolution
|
27
27
|
from ._ants_parcellation_warper import ANTsParcellationWarper
|
@@ -38,8 +38,7 @@ __all__ = [
|
|
38
38
|
]
|
39
39
|
|
40
40
|
|
41
|
-
|
42
|
-
class ParcellationRegistry(BasePipelineDataRegistry):
|
41
|
+
class ParcellationRegistry(BasePipelineDataRegistry, metaclass=Singleton):
|
43
42
|
"""Class for parcellation data registry.
|
44
43
|
|
45
44
|
This class is a singleton and is used for managing available parcellation
|
@@ -7,12 +7,13 @@ from abc import ABC, abstractmethod
|
|
7
7
|
from typing import Any, List, Mapping
|
8
8
|
|
9
9
|
from ..utils import raise_error
|
10
|
+
from ..utils.singleton import ABCSingleton
|
10
11
|
|
11
12
|
|
12
13
|
__all__ = ["BasePipelineDataRegistry"]
|
13
14
|
|
14
15
|
|
15
|
-
class BasePipelineDataRegistry(ABC):
|
16
|
+
class BasePipelineDataRegistry(ABC, metaclass=ABCSingleton):
|
16
17
|
"""Abstract base class for pipeline data registry.
|
17
18
|
|
18
19
|
For every interface that is required, one needs to provide a concrete
|
{junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/datagrabber/hcp1200/tests/test_hcp1200.py
RENAMED
@@ -3,6 +3,9 @@
|
|
3
3
|
# Authors: Synchon Mandal <s.mandal@fz-juelich.de>
|
4
4
|
# License: AGPL
|
5
5
|
|
6
|
+
import shutil
|
7
|
+
import tempfile
|
8
|
+
from pathlib import Path
|
6
9
|
from typing import Iterable, Optional
|
7
10
|
|
8
11
|
import pytest
|
@@ -17,7 +20,8 @@ URI = "https://gin.g-node.org/juaml/datalad-example-hcp1200"
|
|
17
20
|
@pytest.fixture(scope="module")
|
18
21
|
def hcpdg() -> Iterable[DataladHCP1200]:
|
19
22
|
"""Return a HCP1200 DataGrabber."""
|
20
|
-
|
23
|
+
tmpdir = Path(tempfile.gettempdir())
|
24
|
+
dg = DataladHCP1200(datadir=tmpdir / "datadir")
|
21
25
|
# Set URI to Gin
|
22
26
|
dg.uri = URI
|
23
27
|
# Set correct root directory
|
@@ -26,6 +30,7 @@ def hcpdg() -> Iterable[DataladHCP1200]:
|
|
26
30
|
for t_elem in dg.get_elements():
|
27
31
|
dg[t_elem]
|
28
32
|
yield dg
|
33
|
+
shutil.rmtree(tmpdir / "datadir", ignore_errors=True)
|
29
34
|
|
30
35
|
|
31
36
|
@pytest.mark.parametrize(
|
@@ -18,8 +18,8 @@ from typing import (
|
|
18
18
|
import nibabel as nib
|
19
19
|
|
20
20
|
from ...pipeline import WorkDirManager
|
21
|
-
from ...pipeline.singleton import singleton
|
22
21
|
from ...utils import logger, run_ext_cmd
|
22
|
+
from ...utils.singleton import Singleton
|
23
23
|
|
24
24
|
|
25
25
|
if TYPE_CHECKING:
|
@@ -29,8 +29,7 @@ if TYPE_CHECKING:
|
|
29
29
|
__all__ = ["AFNIALFF"]
|
30
30
|
|
31
31
|
|
32
|
-
|
33
|
-
class AFNIALFF:
|
32
|
+
class AFNIALFF(metaclass=Singleton):
|
34
33
|
"""Class for computing ALFF using AFNI.
|
35
34
|
|
36
35
|
This class uses AFNI's 3dRSFC to compute ALFF. It's designed as a singleton
|
@@ -19,8 +19,8 @@ import scipy as sp
|
|
19
19
|
from nilearn import image as nimg
|
20
20
|
|
21
21
|
from ...pipeline import WorkDirManager
|
22
|
-
from ...pipeline.singleton import singleton
|
23
22
|
from ...utils import logger
|
23
|
+
from ...utils.singleton import Singleton
|
24
24
|
|
25
25
|
|
26
26
|
if TYPE_CHECKING:
|
@@ -30,8 +30,7 @@ if TYPE_CHECKING:
|
|
30
30
|
__all__ = ["JuniferALFF"]
|
31
31
|
|
32
32
|
|
33
|
-
|
34
|
-
class JuniferALFF:
|
33
|
+
class JuniferALFF(metaclass=Singleton):
|
35
34
|
"""Class for computing ALFF using junifer.
|
36
35
|
|
37
36
|
It's designed as a singleton with caching for efficient computation.
|
@@ -18,8 +18,8 @@ from typing import (
|
|
18
18
|
import nibabel as nib
|
19
19
|
|
20
20
|
from ...pipeline import WorkDirManager
|
21
|
-
from ...pipeline.singleton import singleton
|
22
21
|
from ...utils import logger, run_ext_cmd
|
22
|
+
from ...utils.singleton import Singleton
|
23
23
|
|
24
24
|
|
25
25
|
if TYPE_CHECKING:
|
@@ -29,8 +29,7 @@ if TYPE_CHECKING:
|
|
29
29
|
__all__ = ["AFNIReHo"]
|
30
30
|
|
31
31
|
|
32
|
-
|
33
|
-
class AFNIReHo:
|
32
|
+
class AFNIReHo(metaclass=Singleton):
|
34
33
|
"""Class for computing ReHo using AFNI.
|
35
34
|
|
36
35
|
This class uses AFNI's 3dReHo to compute ReHo. It's designed as a singleton
|
@@ -20,8 +20,8 @@ from nilearn import image as nimg
|
|
20
20
|
from nilearn import masking as nmask
|
21
21
|
|
22
22
|
from ...pipeline import WorkDirManager
|
23
|
-
from ...pipeline.singleton import singleton
|
24
23
|
from ...utils import logger, raise_error
|
24
|
+
from ...utils.singleton import Singleton
|
25
25
|
|
26
26
|
|
27
27
|
if TYPE_CHECKING:
|
@@ -31,8 +31,7 @@ if TYPE_CHECKING:
|
|
31
31
|
__all__ = ["JuniferReHo"]
|
32
32
|
|
33
33
|
|
34
|
-
|
35
|
-
class JuniferReHo:
|
34
|
+
class JuniferReHo(metaclass=Singleton):
|
36
35
|
"""Class for computing ReHo using junifer.
|
37
36
|
|
38
37
|
It's designed as a singleton with caching for efficient computation.
|
{junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/pipeline/pipeline_component_registry.py
RENAMED
@@ -9,7 +9,7 @@ import importlib
|
|
9
9
|
from typing import TYPE_CHECKING, Dict, List, Mapping, Optional, Union
|
10
10
|
|
11
11
|
from ..utils import logger, raise_error
|
12
|
-
from .singleton import
|
12
|
+
from ..utils.singleton import Singleton
|
13
13
|
|
14
14
|
|
15
15
|
if TYPE_CHECKING:
|
@@ -21,8 +21,7 @@ if TYPE_CHECKING:
|
|
21
21
|
__all__ = ["PipelineComponentRegistry"]
|
22
22
|
|
23
23
|
|
24
|
-
|
25
|
-
class PipelineComponentRegistry:
|
24
|
+
class PipelineComponentRegistry(metaclass=Singleton):
|
26
25
|
"""Class for pipeline component registry.
|
27
26
|
|
28
27
|
This class is a singleton and is used for managing pipeline components.
|
{junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/junifer/pipeline/tests/test_workdir_manager.py
RENAMED
@@ -102,3 +102,45 @@ def test_workdir_manager_get_and_delete_tempdir(tmp_path: Path) -> None:
|
|
102
102
|
workdir_mgr._cleanup()
|
103
103
|
# Should remove temporary directory
|
104
104
|
assert workdir_mgr.root_tempdir is None
|
105
|
+
|
106
|
+
def test_workdir_manager_no_cleanup(tmp_path: Path) -> None:
|
107
|
+
"""Test WorkDirManager correctly bypasses cleanup.
|
108
|
+
|
109
|
+
Parameters
|
110
|
+
----------
|
111
|
+
tmp_path : pathlib.Path
|
112
|
+
The path to the test directory.
|
113
|
+
|
114
|
+
"""
|
115
|
+
workdir_mgr = WorkDirManager(cleanup=False)
|
116
|
+
workdir_mgr.workdir = tmp_path
|
117
|
+
# Check no root temporary directory
|
118
|
+
assert workdir_mgr.root_tempdir is None
|
119
|
+
|
120
|
+
tempdir = workdir_mgr.get_tempdir()
|
121
|
+
assert tempdir.exists()
|
122
|
+
# Should create a temporary directory
|
123
|
+
assert workdir_mgr.root_tempdir is not None
|
124
|
+
|
125
|
+
workdir_mgr.delete_tempdir(tempdir)
|
126
|
+
workdir_mgr._cleanup()
|
127
|
+
|
128
|
+
# Should remove temporary directory
|
129
|
+
assert workdir_mgr.root_tempdir is None
|
130
|
+
# But the temporary directory should still exist
|
131
|
+
assert tempdir.exists()
|
132
|
+
|
133
|
+
# Now the same but for the element directory
|
134
|
+
|
135
|
+
# Check no element directory
|
136
|
+
assert workdir_mgr.elementdir is None
|
137
|
+
|
138
|
+
tempdir = workdir_mgr.get_element_tempdir()
|
139
|
+
# Should create a temporary directory
|
140
|
+
assert workdir_mgr.elementdir is not None
|
141
|
+
|
142
|
+
workdir_mgr.cleanup_elementdir()
|
143
|
+
# Should remove temporary directory
|
144
|
+
assert workdir_mgr.elementdir is None
|
145
|
+
# But the temporary directory should still exist
|
146
|
+
assert tempdir.exists()
|
@@ -10,14 +10,13 @@ from pathlib import Path
|
|
10
10
|
from typing import Optional, Union
|
11
11
|
|
12
12
|
from ..utils import logger
|
13
|
-
from .singleton import
|
13
|
+
from ..utils.singleton import Singleton
|
14
14
|
|
15
15
|
|
16
16
|
__all__ = ["WorkDirManager"]
|
17
17
|
|
18
18
|
|
19
|
-
|
20
|
-
class WorkDirManager:
|
19
|
+
class WorkDirManager(metaclass=Singleton):
|
21
20
|
"""Class for working directory manager.
|
22
21
|
|
23
22
|
This class is a singleton and is used for managing temporary and working
|
@@ -40,15 +39,20 @@ class WorkDirManager:
|
|
40
39
|
The path to the element directory.
|
41
40
|
root_tempdir : pathlib.Path or None
|
42
41
|
The path to the root temporary directory.
|
42
|
+
cleanup : bool, optional
|
43
|
+
If False, the directories are not cleaned up after the object is
|
44
|
+
destroyed. This is useful for debugging purposes (default True).
|
43
45
|
|
44
46
|
"""
|
45
47
|
|
46
|
-
def __init__(
|
48
|
+
def __init__(
|
49
|
+
self, workdir: Optional[Union[str, Path]] = None, cleanup=True
|
50
|
+
) -> None:
|
47
51
|
"""Initialize the class."""
|
48
52
|
self._workdir = Path(workdir) if isinstance(workdir, str) else workdir
|
49
53
|
self._elementdir = None
|
50
54
|
self._root_tempdir = None
|
51
|
-
|
55
|
+
self._cleanup_dirs = cleanup
|
52
56
|
self._set_default_workdir()
|
53
57
|
|
54
58
|
def _set_default_workdir(self) -> None:
|
@@ -73,6 +77,9 @@ class WorkDirManager:
|
|
73
77
|
|
74
78
|
def _cleanup(self) -> None:
|
75
79
|
"""Clean up the element and temporary directories."""
|
80
|
+
if self._cleanup_dirs is False:
|
81
|
+
self._root_tempdir = None
|
82
|
+
return
|
76
83
|
# Remove element directory
|
77
84
|
self.cleanup_elementdir()
|
78
85
|
# Remove root temporary directory
|
@@ -172,6 +179,8 @@ class WorkDirManager:
|
|
172
179
|
The temporary directory path to be deleted.
|
173
180
|
|
174
181
|
"""
|
182
|
+
if self._cleanup_dirs is False:
|
183
|
+
return
|
175
184
|
logger.debug(f"Deleting element temporary directory at {tempdir}")
|
176
185
|
shutil.rmtree(tempdir, ignore_errors=True)
|
177
186
|
|
@@ -183,6 +192,9 @@ class WorkDirManager:
|
|
183
192
|
can lead to required intermediate files not being found.
|
184
193
|
|
185
194
|
"""
|
195
|
+
if self._cleanup_dirs is False:
|
196
|
+
self._elementdir = None
|
197
|
+
return
|
186
198
|
if self._elementdir is not None:
|
187
199
|
logger.debug(
|
188
200
|
"Deleting element directory at "
|
@@ -245,5 +257,7 @@ class WorkDirManager:
|
|
245
257
|
The temporary directory path to be deleted.
|
246
258
|
|
247
259
|
"""
|
260
|
+
if self._cleanup_dirs is False:
|
261
|
+
return
|
248
262
|
logger.debug(f"Deleting temporary directory at {tempdir}")
|
249
263
|
shutil.rmtree(tempdir, ignore_errors=True)
|
@@ -1,15 +1,17 @@
|
|
1
1
|
"""Provide a singleton class to be used by pipeline components."""
|
2
2
|
|
3
3
|
# Authors: Synchon Mandal <s.mandal@fz-juelich.de>
|
4
|
+
# Federico Raimondo <f.raimondo@fz-juelich.de>
|
4
5
|
# License: AGPL
|
5
6
|
|
6
|
-
from
|
7
|
+
from abc import ABCMeta
|
8
|
+
from typing import Any, ClassVar, Dict, Type
|
7
9
|
|
8
10
|
|
9
|
-
__all__ = ["
|
11
|
+
__all__ = ["Singleton", "ABCSingleton"]
|
10
12
|
|
11
13
|
|
12
|
-
|
14
|
+
class Singleton(type):
|
13
15
|
"""Make a class singleton.
|
14
16
|
|
15
17
|
Parameters
|
@@ -17,15 +19,11 @@ def singleton(cls: Type) -> Type:
|
|
17
19
|
cls : class
|
18
20
|
The class to designate as singleton.
|
19
21
|
|
20
|
-
Returns
|
21
|
-
-------
|
22
|
-
class
|
23
|
-
The only instance of the class.
|
24
|
-
|
25
22
|
"""
|
26
|
-
instances: Dict = {}
|
27
23
|
|
28
|
-
|
24
|
+
instances: ClassVar[Dict] = {}
|
25
|
+
|
26
|
+
def __call__(cls, *args: Any, **kwargs: Any) -> Type:
|
29
27
|
"""Get the only instance for a class.
|
30
28
|
|
31
29
|
Parameters
|
@@ -41,8 +39,15 @@ def singleton(cls: Type) -> Type:
|
|
41
39
|
The only instance of the class.
|
42
40
|
|
43
41
|
"""
|
44
|
-
if cls not in instances:
|
45
|
-
instances[cls] =
|
46
|
-
|
42
|
+
if cls not in cls.instances:
|
43
|
+
cls.instances[cls] = super(Singleton, cls).__call__( # noqa: UP008
|
44
|
+
*args, **kwargs
|
45
|
+
)
|
46
|
+
|
47
|
+
return cls.instances[cls]
|
48
|
+
|
49
|
+
|
50
|
+
class ABCSingleton(ABCMeta, Singleton):
|
51
|
+
"""Make an abstract class a singleton."""
|
47
52
|
|
48
|
-
|
53
|
+
pass
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: junifer
|
3
|
-
Version: 0.0.6.
|
3
|
+
Version: 0.0.6.dev219
|
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>
|
@@ -87,6 +87,8 @@ docs/changes/newsfragments/384.misc
|
|
87
87
|
docs/changes/newsfragments/386.bugfix
|
88
88
|
docs/changes/newsfragments/387.change
|
89
89
|
docs/changes/newsfragments/387.feature
|
90
|
+
docs/changes/newsfragments/389.enh
|
91
|
+
docs/changes/newsfragments/391.misc
|
90
92
|
docs/extending/coordinates.rst
|
91
93
|
docs/extending/datagrabber.rst
|
92
94
|
docs/extending/dependencies.rst
|
@@ -125,6 +127,7 @@ examples/yamls/ukb_gmd_mean.yaml
|
|
125
127
|
junifer/__init__.py
|
126
128
|
junifer/__init__.pyi
|
127
129
|
junifer/_version.py
|
130
|
+
junifer/conftest.py
|
128
131
|
junifer/py.typed
|
129
132
|
junifer/stats.py
|
130
133
|
junifer.egg-info/PKG-INFO
|
@@ -395,7 +398,6 @@ junifer/pipeline/marker_collection.py
|
|
395
398
|
junifer/pipeline/pipeline_component_registry.py
|
396
399
|
junifer/pipeline/pipeline_step_mixin.py
|
397
400
|
junifer/pipeline/py.typed
|
398
|
-
junifer/pipeline/singleton.py
|
399
401
|
junifer/pipeline/update_meta_mixin.py
|
400
402
|
junifer/pipeline/utils.py
|
401
403
|
junifer/pipeline/workdir_manager.py
|
@@ -462,6 +464,7 @@ junifer/utils/fs.py
|
|
462
464
|
junifer/utils/helpers.py
|
463
465
|
junifer/utils/logging.py
|
464
466
|
junifer/utils/py.typed
|
467
|
+
junifer/utils/singleton.py
|
465
468
|
junifer/utils/tests/test_fs.py
|
466
469
|
junifer/utils/tests/test_helpers.py
|
467
470
|
junifer/utils/tests/test_logging.py
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{junifer-0.0.6.dev205 → junifer-0.0.6.dev219}/.github/ISSUE_TEMPLATE/documention-request.yml
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|