junifer 0.0.7.dev192__tar.gz → 0.0.7.dev217__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.
Potentially problematic release.
This version of junifer might be problematic. Click here for more details.
- junifer-0.0.7.dev217/.github/workflows/ci.yml +86 -0
- junifer-0.0.7.dev217/.github/workflows/docker-ci-publish.yml +69 -0
- junifer-0.0.7.dev217/.github/workflows/docker-docs-publish.yml +69 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/Dockerfile-ci +8 -9
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/PKG-INFO +1 -1
- junifer-0.0.7.dev217/docs/changes/newsfragments/462.feature +1 -0
- junifer-0.0.7.dev217/docs/changes/newsfragments/467.misc +1 -0
- junifer-0.0.7.dev217/docs/changes/newsfragments/468.misc +1 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/_version.py +3 -3
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/warping/_ants_warper.py +71 -22
- junifer-0.0.7.dev217/junifer/preprocess/warping/_fsl_warper.py +289 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/warping/space_warper.py +68 -20
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer.egg-info/PKG-INFO +1 -1
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer.egg-info/SOURCES.txt +2 -0
- junifer-0.0.7.dev192/.github/workflows/ci.yml +0 -86
- junifer-0.0.7.dev192/.github/workflows/docker-ci-publish.yml +0 -103
- junifer-0.0.7.dev192/.github/workflows/docker-docs-publish.yml +0 -100
- junifer-0.0.7.dev192/docs/changes/newsfragments/467.misc +0 -1
- junifer-0.0.7.dev192/junifer/preprocess/warping/_fsl_warper.py +0 -163
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/.dockerignore +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/.github/ISSUE_TEMPLATE/dataset-request.yml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/.github/ISSUE_TEMPLATE/documention-request.yml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/.github/ISSUE_TEMPLATE/feature-request.yml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/.github/ISSUE_TEMPLATE/marker-request.yml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/.github/dependabot.yml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/.github/pull_request_template.md +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/.github/workflows/check-stale.yml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/.github/workflows/ci-docs.yml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/.github/workflows/docs-preview.yml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/.github/workflows/docs.yml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/.github/workflows/lint.yml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/.github/workflows/publish.yml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/.gitignore +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/.gitmodules +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/.pre-commit-config.yaml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/AUTHORS.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/Dockerfile-docs +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/LICENSE.md +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/README.md +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/codecov.yml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/conda-env.yml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/Makefile +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/_static/css/custom.css +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/_static/js/custom.js +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/_templates/versions.html +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/api/api.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/api/cli.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/api/configs.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/api/data.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/api/datagrabbers.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/api/datareaders.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/api/index.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/api/markers.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/api/nilearn.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/api/onthefly.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/api/pipeline.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/api/preprocessing.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/api/stats.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/api/storage.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/api/testing.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/api/utils.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/builtin.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/contributors.inc +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/.gitignore +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/333.enh +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/429.change +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/429.enh +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/432.feature +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/441.misc +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/443.feature +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/444.bugfix +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/450.doc +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/450.feature +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/451.doc +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/451.feature +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/452.doc +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/452.feature +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/454.bugfix +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/456.misc +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/457.misc +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/458.change +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/458.feature +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/458.misc +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/460.feature +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/464.misc +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/465.misc +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/changes/newsfragments/466.misc +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/conf.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/contribution.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/extending/coordinates.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/extending/data_dump_asset.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/extending/data_registries.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/extending/data_types.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/extending/datagrabber.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/extending/dependencies.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/extending/extension.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/extending/index.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/extending/maps.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/extending/marker.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/extending/masks.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/extending/parcellations.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/extending/plugins.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/extending/preprocessor.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/faq.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/help.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/images/junifer_logo.png +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/index.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/installation.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/links.inc +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/maintaining.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/redirect.html +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/starting.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/understanding/data.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/understanding/datagrabber.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/understanding/datareader.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/understanding/index.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/understanding/marker.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/understanding/pipeline.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/understanding/preprocess.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/understanding/storage.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/using/codeless.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/using/configuring.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/using/dumping.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/using/index.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/using/masks.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/using/queueing.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/using/running.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/docs/whats_new.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/examples/README.rst +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/examples/norun_hcpfc_pearson.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/examples/norun_ukbvm_gmd.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/examples/run_compute_parcel_mean.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/examples/run_datagrabber_bids_datalad.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/examples/run_ets_rss_marker.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/examples/run_junifer_julearn.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/examples/run_run_gmd_mean.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/examples/yamls/gmd_mean.yaml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/examples/yamls/gmd_mean_htcondor.yaml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/examples/yamls/partly_cloudy_agg_mean_tian.yml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/examples/yamls/ukb_gmd_mean.yaml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/ignore_words.txt +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/decorators.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/functions.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/queue_context/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/queue_context/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/queue_context/gnu_parallel_local_adapter.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/queue_context/htcondor_adapter.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/queue_context/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/queue_context/queue_context_adapter.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/queue_context/tests/test_gnu_parallel_local_adapter.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/queue_context/tests/test_htcondor_adapter.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/afni/3dAFNItoNIFTI +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/afni/3dRSFC +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/afni/3dReHo +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/afni/afni +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/afni/run_afni_docker.sh +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/ants/ResampleImage +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/ants/antsApplyTransforms +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/ants/antsApplyTransformsToPoints +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/ants/run_ants_docker.sh +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/freesurfer/mri_binarize +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/freesurfer/mri_mc +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/freesurfer/mri_pretess +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/freesurfer/mris_convert +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/freesurfer/run_freesurfer_docker.sh +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/fsl/applywarp +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/fsl/flirt +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/fsl/img2imgcoord +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/fsl/run_fsl_docker.sh +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/fsl/std2imgcoord +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/run_conda.bash +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/run_conda.zsh +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/run_venv.bash +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/res/run_venv.zsh +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/tests/test_decorators.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/api/tests/test_functions.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/cli/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/cli/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/cli/cli.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/cli/parser.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/cli/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/cli/tests/data/gmd_mean.yaml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/cli/tests/data/gmd_mean_htcondor.yaml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/cli/tests/data/partly_cloudy_agg_mean_tian.yml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/cli/tests/test_cli.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/cli/tests/test_cli_utils.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/cli/tests/test_parser.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/cli/utils.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/configs/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/configs/juseless/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/configs/juseless/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/configs/juseless/datagrabbers/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/configs/juseless/datagrabbers/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/configs/juseless/datagrabbers/aomic_id1000_vbm.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/configs/juseless/datagrabbers/camcan_vbm.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/configs/juseless/datagrabbers/ixi_vbm.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/configs/juseless/datagrabbers/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/configs/juseless/datagrabbers/tests/test_aomic_id1000_vbm.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/configs/juseless/datagrabbers/tests/test_camcan_vbm.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/configs/juseless/datagrabbers/tests/test_ixi_vbm.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/configs/juseless/datagrabbers/tests/test_ucla.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/configs/juseless/datagrabbers/tests/test_ukb_vbm.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/configs/juseless/datagrabbers/ucla.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/configs/juseless/datagrabbers/ukb_vbm.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/configs/juseless/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/conftest.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/_dispatch.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/coordinates/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/coordinates/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/coordinates/_ants_coordinates_warper.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/coordinates/_coordinates.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/coordinates/_fsl_coordinates_warper.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/coordinates/tests/test_coordinates.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/maps/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/maps/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/maps/_ants_maps_warper.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/maps/_fsl_maps_warper.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/maps/_maps.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/maps/tests/test_maps.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/masks/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/masks/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/masks/_ants_mask_warper.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/masks/_fsl_mask_warper.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/masks/_masks.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/masks/tests/test_masks.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/parcellations/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/parcellations/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/parcellations/_ants_parcellation_warper.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/parcellations/_fsl_parcellation_warper.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/parcellations/_parcellations.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/parcellations/tests/test_parcellations.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/pipeline_data_registry_base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/template_spaces.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/tests/test_data_utils.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/tests/test_dispatch.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/tests/test_template_spaces.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/data/utils.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/aomic/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/aomic/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/aomic/id1000.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/aomic/piop1.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/aomic/piop2.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/aomic/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/aomic/tests/test_id1000.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/aomic/tests/test_piop1.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/aomic/tests/test_piop2.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/datalad_base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/dmcc13_benchmark.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/hcp1200/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/hcp1200/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/hcp1200/datalad_hcp1200.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/hcp1200/hcp1200.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/hcp1200/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/hcp1200/tests/test_hcp1200.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/multiple.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/pattern.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/pattern_datalad.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/pattern_validation_mixin.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/tests/test_base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/tests/test_datalad_base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/tests/test_dmcc13_benchmark.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/tests/test_multiple.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/tests/test_pattern.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/tests/test_pattern_datalad.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datagrabber/tests/test_pattern_validation_mixin.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datareader/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datareader/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datareader/default.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datareader/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/datareader/tests/test_default_reader.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/BrainPrint/brainprint/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/BrainPrint/brainprint/_version.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/BrainPrint/brainprint/asymmetry.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/BrainPrint/brainprint/brainprint.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/BrainPrint/brainprint/surfaces.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/BrainPrint/brainprint/utils/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/BrainPrint/brainprint/utils/_config.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/BrainPrint/brainprint/utils/utils.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/h5io/h5io/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/h5io/h5io/_h5io.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/h5io/h5io/_version.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/h5io/h5io/chunked_array.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/h5io/h5io/chunked_list.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/nilearn/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/nilearn/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/nilearn/junifer_connectivity_measure.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/nilearn/junifer_nifti_spheres_masker.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/nilearn/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/nilearn/tests/test_junifer_connectivity_measure.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/external/nilearn/tests/test_junifer_nifti_spheres_masker.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/brainprint.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/complexity/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/complexity/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/complexity/complexity_base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/complexity/hurst_exponent.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/complexity/multiscale_entropy_auc.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/complexity/perm_entropy.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/complexity/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/complexity/range_entropy.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/complexity/range_entropy_auc.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/complexity/sample_entropy.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/complexity/tests/test_complexity_base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/complexity/tests/test_hurst_exponent.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/complexity/tests/test_multiscale_entropy_auc.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/complexity/tests/test_perm_entropy.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/complexity/tests/test_range_entropy.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/complexity/tests/test_range_entropy_auc.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/complexity/tests/test_sample_entropy.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/complexity/tests/test_weighted_perm_entropy.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/complexity/weighted_perm_entropy.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/ets_rss.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/falff/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/falff/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/falff/_afni_falff.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/falff/_junifer_falff.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/falff/falff_base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/falff/falff_maps.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/falff/falff_parcels.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/falff/falff_spheres.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/falff/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/falff/tests/test_falff_maps.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/falff/tests/test_falff_parcels.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/falff/tests/test_falff_spheres.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/functional_connectivity/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/functional_connectivity/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/functional_connectivity/crossparcellation_functional_connectivity.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/functional_connectivity/edge_functional_connectivity_maps.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/functional_connectivity/edge_functional_connectivity_parcels.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/functional_connectivity/edge_functional_connectivity_spheres.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/functional_connectivity/functional_connectivity_base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/functional_connectivity/functional_connectivity_maps.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/functional_connectivity/functional_connectivity_parcels.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/functional_connectivity/functional_connectivity_spheres.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/functional_connectivity/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/functional_connectivity/tests/test_crossparcellation_functional_connectivity.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_maps.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_parcels.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_spheres.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_maps.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_parcels.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_spheres.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/maps_aggregation.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/parcel_aggregation.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/reho/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/reho/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/reho/_afni_reho.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/reho/_junifer_reho.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/reho/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/reho/reho_base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/reho/reho_maps.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/reho/reho_parcels.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/reho/reho_spheres.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/reho/tests/test_reho_maps.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/reho/tests/test_reho_parcels.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/reho/tests/test_reho_spheres.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/sphere_aggregation.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/temporal_snr/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/temporal_snr/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/temporal_snr/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/temporal_snr/temporal_snr_base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/temporal_snr/temporal_snr_maps.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/temporal_snr/temporal_snr_parcels.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/temporal_snr/temporal_snr_spheres.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/temporal_snr/tests/test_temporal_snr_base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/temporal_snr/tests/test_temporal_snr_maps.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/temporal_snr/tests/test_temporal_snr_parcels.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/temporal_snr/tests/test_temporal_snr_spheres.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/tests/test_brainprint.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/tests/test_ets_rss.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/tests/test_maps_aggregation.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/tests/test_marker_utils.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/tests/test_markers_base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/tests/test_parcel_aggregation.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/tests/test_sphere_aggregation.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/markers/utils.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/onthefly/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/onthefly/_brainprint.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/onthefly/read_transform.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/onthefly/tests/test_read_transform.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/pipeline/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/pipeline/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/pipeline/_data_object_dumper.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/pipeline/marker_collection.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/pipeline/pipeline_component_registry.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/pipeline/pipeline_step_mixin.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/pipeline/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/pipeline/tests/test_data_object_dumper.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/pipeline/tests/test_marker_collection.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/pipeline/tests/test_pipeline_component_registry.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/pipeline/tests/test_pipeline_step_mixin.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/pipeline/tests/test_update_meta_mixin.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/pipeline/tests/test_workdir_manager.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/pipeline/update_meta_mixin.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/pipeline/utils.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/pipeline/workdir_manager.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/_temporal_filter.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/_temporal_slicer.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/confounds/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/confounds/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/confounds/fmriprep_confound_remover.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/confounds/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/confounds/tests/test_fmriprep_confound_remover.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/smoothing/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/smoothing/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/smoothing/_afni_smoothing.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/smoothing/_fsl_smoothing.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/smoothing/_nilearn_smoothing.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/smoothing/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/smoothing/smoothing.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/smoothing/tests/test_smoothing.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/tests/test_preprocess_base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/tests/test_temporal_filter.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/tests/test_temporal_slicer.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/warping/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/warping/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/warping/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/preprocess/warping/tests/test_space_warper.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/stats.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/storage/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/storage/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/storage/base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/storage/hdf5.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/storage/pandas_base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/storage/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/storage/sqlite.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/storage/tests/test_hdf5.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/storage/tests/test_pandas_base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/storage/tests/test_sqlite.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/storage/tests/test_storage_base.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/storage/tests/test_utils.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/storage/utils.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/testing/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/testing/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/testing/data/sub-0001_task-anticipation_acq-seq_desc-confounds_regressors.tsv +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/testing/datagrabbers.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/testing/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/testing/registry.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/testing/tests/test_oasisvmbtesting_datagrabber.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/testing/tests/test_partlycloudytesting_datagrabber.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/testing/tests/test_spmauditory_datagrabber.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/testing/tests/test_testing_registry.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/testing/utils.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/tests/test_main.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/tests/test_stats.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/typing/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/typing/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/typing/_typing.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/utils/__init__.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/utils/__init__.pyi +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/utils/_config.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/utils/_yaml.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/utils/fs.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/utils/helpers.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/utils/logging.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/utils/py.typed +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/utils/singleton.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/utils/tests/test_config.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/utils/tests/test_fs.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/utils/tests/test_helpers.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer/utils/tests/test_logging.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer.egg-info/dependency_links.txt +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer.egg-info/entry_points.txt +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer.egg-info/requires.txt +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/junifer.egg-info/top_level.txt +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/pyproject.toml +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/setup.cfg +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/setup.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/tools/create_aomic1000_example_dataset.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/tools/create_aomicpiop1_example_dataset.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/tools/create_aomicpiop2_example_dataset.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/tools/create_bids_example_dataset.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/tools/create_bids_example_dataset_sessions.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/tools/create_dmcc13_benchmark_example_dataset.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/tools/create_hcp1200_example_dataset.py +0 -0
- {junifer-0.0.7.dev192 → junifer-0.0.7.dev217}/tox.ini +0 -0
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
name: Run Tests
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
paths:
|
|
6
|
+
- 'junifer/**'
|
|
7
|
+
- '.github/workflows/**'
|
|
8
|
+
- 'tox.ini'
|
|
9
|
+
- 'pyproject.toml'
|
|
10
|
+
pull_request:
|
|
11
|
+
paths:
|
|
12
|
+
- 'junifer/**'
|
|
13
|
+
- '.github/workflows/**'
|
|
14
|
+
- 'tox.ini'
|
|
15
|
+
- 'pyproject.toml'
|
|
16
|
+
workflow_dispatch: {}
|
|
17
|
+
|
|
18
|
+
jobs:
|
|
19
|
+
run-tests:
|
|
20
|
+
# https://github.com/actions/setup-python/issues/1013#issuecomment-2642078401
|
|
21
|
+
runs-on: ubuntu-22.04
|
|
22
|
+
# Use custom CI image
|
|
23
|
+
container: ghcr.io/juaml/junifer-ci:main
|
|
24
|
+
strategy:
|
|
25
|
+
fail-fast: false
|
|
26
|
+
matrix:
|
|
27
|
+
python-version: ['3.9', '3.10', '3.11', '3.12']
|
|
28
|
+
steps:
|
|
29
|
+
- run: df -h
|
|
30
|
+
- name: Clean runner
|
|
31
|
+
run: |
|
|
32
|
+
rm -rf /usr/share/dotnet \
|
|
33
|
+
/usr/local/lib/android \
|
|
34
|
+
/opt/ghc \
|
|
35
|
+
/opt/hostedtoolcache
|
|
36
|
+
- run: df -h
|
|
37
|
+
- name: Check ANTs
|
|
38
|
+
run: |
|
|
39
|
+
echo "Using ANTs : $(antsRegistration --version)"
|
|
40
|
+
- name: Check AFNI
|
|
41
|
+
run: |
|
|
42
|
+
echo "Using AFNI : $(afni --version)"
|
|
43
|
+
- name: Check FSL
|
|
44
|
+
run: |
|
|
45
|
+
echo "Using FSL : $(flirt -version)"
|
|
46
|
+
- name: Install system dependencies
|
|
47
|
+
# actions/checkout fails to identify Git as it's not in the CI image
|
|
48
|
+
run: |
|
|
49
|
+
apt-get -qq update
|
|
50
|
+
apt-get -qq install -y \
|
|
51
|
+
git \
|
|
52
|
+
git-annex \
|
|
53
|
+
make \
|
|
54
|
+
jq
|
|
55
|
+
- name: Copy junifer-data directory
|
|
56
|
+
run: |
|
|
57
|
+
mkdir -p $HOME/junifer_data/v4
|
|
58
|
+
cp -ar /root/junifer_data/v4/. $HOME/junifer_data/v4/
|
|
59
|
+
- name: Checkout repository
|
|
60
|
+
uses: actions/checkout@v5
|
|
61
|
+
with:
|
|
62
|
+
submodules: true
|
|
63
|
+
- name: Set up Python ${{ matrix.python-version }}
|
|
64
|
+
uses: actions/setup-python@v6
|
|
65
|
+
with:
|
|
66
|
+
python-version: ${{ matrix.python-version }}
|
|
67
|
+
- name: Install Python dependencies
|
|
68
|
+
run: |
|
|
69
|
+
python -m pip install --upgrade pip setuptools wheel
|
|
70
|
+
python -m pip install tox tox-gh-actions
|
|
71
|
+
- name: Configure Git for DataLad
|
|
72
|
+
run: |
|
|
73
|
+
git config --global user.email "junifer-runner@github.com"
|
|
74
|
+
git config --global user.name "GitHub Runner"
|
|
75
|
+
- name: Test with tox
|
|
76
|
+
# https://github.com/actions/checkout/issues/1169#issuecomment-2291682583
|
|
77
|
+
run: |
|
|
78
|
+
git config --system --add safe.directory $(pwd)
|
|
79
|
+
tox
|
|
80
|
+
- name: Upload coverage to Codecov
|
|
81
|
+
uses: codecov/codecov-action@v5
|
|
82
|
+
with:
|
|
83
|
+
token: ${{ secrets.CODECOV_TOKEN }}
|
|
84
|
+
fail_ci_if_error: true
|
|
85
|
+
flags: junifer
|
|
86
|
+
if: success() && matrix.python-version == 3.12
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
name: Docker for CI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [ "main" ]
|
|
6
|
+
paths: [ "Dockerfile-ci" ]
|
|
7
|
+
pull_request:
|
|
8
|
+
branches: [ "main" ]
|
|
9
|
+
paths: [ "Dockerfile-ci" ]
|
|
10
|
+
workflow_dispatch: {}
|
|
11
|
+
|
|
12
|
+
env:
|
|
13
|
+
REGISTRY: ghcr.io
|
|
14
|
+
IMAGE_NAME: ${{ github.repository }}-ci
|
|
15
|
+
|
|
16
|
+
jobs:
|
|
17
|
+
build:
|
|
18
|
+
runs-on: ubuntu-24.04
|
|
19
|
+
permissions:
|
|
20
|
+
contents: read
|
|
21
|
+
packages: write
|
|
22
|
+
id-token: write
|
|
23
|
+
steps:
|
|
24
|
+
- run: df -h
|
|
25
|
+
- name: Clean runner
|
|
26
|
+
run: |
|
|
27
|
+
sudo rm -rf /usr/share/dotnet \
|
|
28
|
+
/usr/local/lib/android \
|
|
29
|
+
/opt/ghc \
|
|
30
|
+
/opt/hostedtoolcache
|
|
31
|
+
sudo docker image prune --all --force
|
|
32
|
+
sudo docker builder prune -a
|
|
33
|
+
- run: df -h
|
|
34
|
+
- name: Checkout repository
|
|
35
|
+
uses: actions/checkout@v5
|
|
36
|
+
- name: Install cosign
|
|
37
|
+
if: github.event_name != 'pull_request'
|
|
38
|
+
uses: sigstore/cosign-installer@v3.10.0
|
|
39
|
+
- name: Set up Docker Buildx
|
|
40
|
+
uses: docker/setup-buildx-action@v3.11.1
|
|
41
|
+
- name: Log into registry ${{ env.REGISTRY }}
|
|
42
|
+
if: github.event_name != 'pull_request'
|
|
43
|
+
uses: docker/login-action@v3.5.0
|
|
44
|
+
with:
|
|
45
|
+
registry: ${{ env.REGISTRY }}
|
|
46
|
+
username: ${{ github.actor }}
|
|
47
|
+
password: ${{ secrets.GITHUB_TOKEN }}
|
|
48
|
+
- name: Extract Docker metadata
|
|
49
|
+
id: meta
|
|
50
|
+
uses: docker/metadata-action@v5.8.0
|
|
51
|
+
with:
|
|
52
|
+
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
|
|
53
|
+
- name: Build and push Docker image
|
|
54
|
+
id: build-and-push
|
|
55
|
+
uses: docker/build-push-action@v6.18.0
|
|
56
|
+
with:
|
|
57
|
+
context: .
|
|
58
|
+
file: Dockerfile-ci
|
|
59
|
+
push: ${{ github.event_name != 'pull_request' }}
|
|
60
|
+
tags: ${{ steps.meta.outputs.tags }}
|
|
61
|
+
labels: ${{ steps.meta.outputs.labels }}
|
|
62
|
+
cache-from: type=gha
|
|
63
|
+
cache-to: type=gha,mode=max
|
|
64
|
+
- name: Sign the published Docker image
|
|
65
|
+
if: ${{ github.event_name != 'pull_request' }}
|
|
66
|
+
env:
|
|
67
|
+
TAGS: ${{ steps.meta.outputs.tags }}
|
|
68
|
+
DIGEST: ${{ steps.build-and-push.outputs.digest }}
|
|
69
|
+
run: echo "${TAGS}" | xargs -I {} cosign sign --yes {}@${DIGEST}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
name: Docker for docs
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [ "main" ]
|
|
6
|
+
paths: [ "Dockerfile-docs" ]
|
|
7
|
+
pull_request:
|
|
8
|
+
branches: [ "main" ]
|
|
9
|
+
paths: [ "Dockerfile-docs" ]
|
|
10
|
+
workflow_dispatch: {}
|
|
11
|
+
|
|
12
|
+
env:
|
|
13
|
+
REGISTRY: ghcr.io
|
|
14
|
+
IMAGE_NAME: ${{ github.repository }}-docs
|
|
15
|
+
|
|
16
|
+
jobs:
|
|
17
|
+
build:
|
|
18
|
+
runs-on: ubuntu-24.04
|
|
19
|
+
permissions:
|
|
20
|
+
contents: read
|
|
21
|
+
packages: write
|
|
22
|
+
id-token: write
|
|
23
|
+
steps:
|
|
24
|
+
- run: df -h
|
|
25
|
+
- name: Clean runner
|
|
26
|
+
run: |
|
|
27
|
+
rm -rf /usr/share/dotnet \
|
|
28
|
+
/usr/local/lib/android \
|
|
29
|
+
/opt/ghc \
|
|
30
|
+
/opt/hostedtoolcache
|
|
31
|
+
docker image prune --all --force
|
|
32
|
+
docker builder prune -a
|
|
33
|
+
- run: df -h
|
|
34
|
+
- name: Checkout repository
|
|
35
|
+
uses: actions/checkout@v5
|
|
36
|
+
- name: Install cosign
|
|
37
|
+
if: github.event_name != 'pull_request'
|
|
38
|
+
uses: sigstore/cosign-installer@v3.10.0
|
|
39
|
+
- name: Set up Docker Buildx
|
|
40
|
+
uses: docker/setup-buildx-action@v3.11.1
|
|
41
|
+
- name: Log into registry ${{ env.REGISTRY }}
|
|
42
|
+
if: github.event_name != 'pull_request'
|
|
43
|
+
uses: docker/login-action@v3.5.0
|
|
44
|
+
with:
|
|
45
|
+
registry: ${{ env.REGISTRY }}
|
|
46
|
+
username: ${{ github.actor }}
|
|
47
|
+
password: ${{ secrets.GITHUB_TOKEN }}
|
|
48
|
+
- name: Extract Docker metadata
|
|
49
|
+
id: meta
|
|
50
|
+
uses: docker/metadata-action@v5.8.0
|
|
51
|
+
with:
|
|
52
|
+
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
|
|
53
|
+
- name: Build and push Docker image
|
|
54
|
+
id: build-and-push
|
|
55
|
+
uses: docker/build-push-action@v6.18.0
|
|
56
|
+
with:
|
|
57
|
+
context: .
|
|
58
|
+
file: Dockerfile-docs
|
|
59
|
+
push: ${{ github.event_name != 'pull_request' }}
|
|
60
|
+
tags: ${{ steps.meta.outputs.tags }}
|
|
61
|
+
labels: ${{ steps.meta.outputs.labels }}
|
|
62
|
+
cache-from: type=gha
|
|
63
|
+
cache-to: type=gha,mode=max
|
|
64
|
+
- name: Sign the published Docker image
|
|
65
|
+
if: ${{ github.event_name != 'pull_request' }}
|
|
66
|
+
env:
|
|
67
|
+
TAGS: ${{ steps.meta.outputs.tags }}
|
|
68
|
+
DIGEST: ${{ steps.build-and-push.outputs.digest }}
|
|
69
|
+
run: echo "${TAGS}" | xargs -I {} cosign sign --yes {}@${DIGEST}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# syntax=docker/dockerfile:1
|
|
2
2
|
|
|
3
|
-
FROM python:3.12-slim
|
|
3
|
+
FROM python:3.12-slim-bookworm
|
|
4
4
|
|
|
5
5
|
LABEL org.opencontainers.image.source=https://github.com/juaml/junifer
|
|
6
6
|
LABEL org.opencontainers.image.description="Junifer CI container image"
|
|
@@ -60,14 +60,13 @@ ENV PATH="/opt/afni/bin:$PATH"
|
|
|
60
60
|
# Patch gsl
|
|
61
61
|
RUN ln -s /usr/lib/x86_64-linux-gnu/libgsl.so.27 /usr/lib/x86_64-linux-gnu/libgsl.so.23
|
|
62
62
|
|
|
63
|
-
#
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
#
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
# PATH="/opt/fsl/share/fsl/bin:$PATH"
|
|
63
|
+
# Add FSL
|
|
64
|
+
RUN curl https://fsl.fmrib.ox.ac.uk/fsldownloads/fslconda/releases/fslinstaller.py | \
|
|
65
|
+
python - -d /opt/fsl/ --skip_registration
|
|
66
|
+
# Set env vars for FSL
|
|
67
|
+
ENV FSLDIR=/opt/fsl \
|
|
68
|
+
FSLOUTPUTTYPE=NIFTI_GZ \
|
|
69
|
+
PATH="/opt/fsl/share/fsl/bin:$PATH"
|
|
71
70
|
|
|
72
71
|
# Clean apt cache
|
|
73
72
|
RUN apt-get autoremove --purge && apt-get clean
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: junifer
|
|
3
|
-
Version: 0.0.7.
|
|
3
|
+
Version: 0.0.7.dev217
|
|
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
|
+
Enable :class:`.SpaceWarper` to warp data from native space to template spaces via both FSL and ANTs by `Synchon Mandal`_
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Disable FSL installation for ``junifer-ci`` Docker image build with ``junifer-data`` v4 by `Synchon Mandal`_
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Pin ``junifer-ci`` Docker image to ``python:3.12-slim-bookworm`` and re-enable FSL installation by `Synchon Mandal`_
|
|
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
|
|
|
28
28
|
commit_id: COMMIT_ID
|
|
29
29
|
__commit_id__: COMMIT_ID
|
|
30
30
|
|
|
31
|
-
__version__ = version = '0.0.7.
|
|
32
|
-
__version_tuple__ = version_tuple = (0, 0, 7, '
|
|
31
|
+
__version__ = version = '0.0.7.dev217'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 0, 7, 'dev217')
|
|
33
33
|
|
|
34
|
-
__commit_id__ = commit_id = '
|
|
34
|
+
__commit_id__ = commit_id = 'g0925af82f'
|
|
@@ -180,27 +180,74 @@ class ANTsWarper:
|
|
|
180
180
|
|
|
181
181
|
# Template space warping
|
|
182
182
|
else:
|
|
183
|
+
input_space = input["space"]
|
|
183
184
|
logger.debug(
|
|
184
|
-
f"Using ANTs to warp data from {
|
|
185
|
+
f"Using ANTs to warp data from {input_space} space "
|
|
186
|
+
f"to {reference} space"
|
|
185
187
|
)
|
|
186
188
|
|
|
187
|
-
#
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
189
|
+
# Native to MNI
|
|
190
|
+
if input_space == "native":
|
|
191
|
+
# Get warp file path
|
|
192
|
+
xfm_file_path = None
|
|
193
|
+
for entry in extra_input["Warp"]:
|
|
194
|
+
if entry["src"] == "native" and entry["dst"] == reference:
|
|
195
|
+
xfm_file_path = entry["path"]
|
|
196
|
+
if xfm_file_path is None:
|
|
197
|
+
raise_error(
|
|
198
|
+
klass=RuntimeError,
|
|
199
|
+
msg="Could not find correct warp file path",
|
|
200
|
+
)
|
|
201
|
+
|
|
202
|
+
# Use ResampleImage if input data resolution and reference
|
|
203
|
+
# resolution don't match
|
|
204
|
+
input_res = np.min(input["data"].header.get_zooms()[:3])
|
|
205
|
+
ref_res = np.min(
|
|
206
|
+
input["reference"]["data"].header.get_zooms()[:3]
|
|
207
|
+
)
|
|
208
|
+
logger.debug(f"Input resolution: {input_res}")
|
|
209
|
+
logger.debug(f"Reference resolution: {ref_res}")
|
|
210
|
+
if input_res != ref_res:
|
|
211
|
+
# Create a tempfile for resampled reference output
|
|
212
|
+
ref_path = (
|
|
213
|
+
element_tempdir
|
|
214
|
+
/ f"resampled_reference-{reference}.nii.gz"
|
|
215
|
+
)
|
|
216
|
+
# Set ResampleImage command
|
|
217
|
+
resample_image_cmd = [
|
|
218
|
+
"ResampleImage",
|
|
219
|
+
"3", # image dimension
|
|
220
|
+
f"{input['reference']['path'].resolve()}",
|
|
221
|
+
f"{ref_path.resolve()}",
|
|
222
|
+
f"{input_res}x{input_res}x{input_res}",
|
|
223
|
+
"0", # option for spacing and not size
|
|
224
|
+
"3 3", # Lanczos windowed sinc
|
|
225
|
+
]
|
|
226
|
+
# Call ResampleImage
|
|
227
|
+
run_ext_cmd(name="ResampleImage", cmd=resample_image_cmd)
|
|
228
|
+
else:
|
|
229
|
+
logger.debug(
|
|
230
|
+
"Reference resolution matches input resolution"
|
|
231
|
+
)
|
|
232
|
+
ref_path = input["reference"]["path"]
|
|
233
|
+
|
|
234
|
+
# MNI to MNI
|
|
235
|
+
else:
|
|
236
|
+
# Get xfm file
|
|
237
|
+
xfm_file_path = get_xfm(src=input_space, dst=reference)
|
|
238
|
+
# Get template space image in correct resolution
|
|
239
|
+
template_space_img = get_template(
|
|
240
|
+
space=reference,
|
|
241
|
+
target_img=input["data"],
|
|
242
|
+
extra_input=None,
|
|
243
|
+
)
|
|
244
|
+
# Save template
|
|
245
|
+
ref_path = element_tempdir / f"{reference}_T1w.nii.gz"
|
|
246
|
+
nib.save(template_space_img, ref_path)
|
|
200
247
|
|
|
201
248
|
# Create a tempfile for warped output
|
|
202
249
|
warped_output_path = element_tempdir / (
|
|
203
|
-
f"warped_data_from_{
|
|
250
|
+
f"warped_data_from_{input_space}_to_{reference}.nii.gz"
|
|
204
251
|
)
|
|
205
252
|
|
|
206
253
|
# Set antsApplyTransforms command
|
|
@@ -210,7 +257,7 @@ class ANTsWarper:
|
|
|
210
257
|
"-e 3",
|
|
211
258
|
"-n LanczosWindowedSinc",
|
|
212
259
|
f"-i {input['path'].resolve()}",
|
|
213
|
-
f"-r {
|
|
260
|
+
f"-r {ref_path.resolve()}",
|
|
214
261
|
f"-t {xfm_file_path.resolve()}",
|
|
215
262
|
f"-o {warped_output_path.resolve()}",
|
|
216
263
|
]
|
|
@@ -226,18 +273,20 @@ class ANTsWarper:
|
|
|
226
273
|
"data": nib.load(warped_output_path),
|
|
227
274
|
# Update warped input's space
|
|
228
275
|
"space": reference,
|
|
229
|
-
# Save reference path
|
|
230
|
-
|
|
276
|
+
# Save resampled reference path or overwrite original
|
|
277
|
+
# keeping it same
|
|
278
|
+
"reference": {"path": ref_path},
|
|
231
279
|
# Keep pre-warp space for further operations
|
|
232
|
-
"prewarp_space":
|
|
280
|
+
"prewarp_space": input_space,
|
|
233
281
|
}
|
|
234
282
|
)
|
|
235
283
|
|
|
236
284
|
# Check for data type's mask and warp if found
|
|
237
285
|
if input.get("mask") is not None:
|
|
286
|
+
logger.debug("Warping associated mask")
|
|
238
287
|
# Create a tempfile for warped mask output
|
|
239
288
|
apply_transforms_mask_out_path = element_tempdir / (
|
|
240
|
-
f"warped_mask_from_{
|
|
289
|
+
f"warped_mask_from_{input_space}_to_{reference}.nii.gz"
|
|
241
290
|
)
|
|
242
291
|
# Set antsApplyTransforms command
|
|
243
292
|
apply_transforms_mask_cmd = [
|
|
@@ -246,8 +295,8 @@ class ANTsWarper:
|
|
|
246
295
|
"-e 3",
|
|
247
296
|
"-n 'GenericLabel[NearestNeighbor]'",
|
|
248
297
|
f"-i {input['mask']['path'].resolve()}",
|
|
249
|
-
# use resampled reference
|
|
250
|
-
f"-r {
|
|
298
|
+
# use resampled reference or original
|
|
299
|
+
f"-r {ref_path.resolve()}",
|
|
251
300
|
f"-t {xfm_file_path.resolve()}",
|
|
252
301
|
f"-o {apply_transforms_mask_out_path.resolve()}",
|
|
253
302
|
]
|