junifer 0.0.6.dev227__tar.gz → 0.0.6.dev252__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.dev227 → junifer-0.0.6.dev252}/PKG-INFO +2 -2
- junifer-0.0.6.dev252/docs/changes/newsfragments/390.change +1 -0
- junifer-0.0.6.dev252/docs/changes/newsfragments/390.enh +1 -0
- junifer-0.0.6.dev252/docs/changes/newsfragments/393.misc +1 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/extending/dependencies.rst +13 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/understanding/preprocess.rst +19 -8
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/_version.py +2 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/decorators.py +1 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/functions.py +18 -18
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/queue_context/gnu_parallel_local_adapter.py +4 -4
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/queue_context/htcondor_adapter.py +4 -4
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/queue_context/tests/test_gnu_parallel_local_adapter.py +3 -3
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/queue_context/tests/test_htcondor_adapter.py +3 -3
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/tests/test_functions.py +32 -32
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/cli/cli.py +3 -3
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/cli/parser.py +4 -4
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/cli/tests/test_cli.py +5 -5
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/cli/utils.py +5 -6
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/configs/juseless/datagrabbers/ixi_vbm.py +2 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/configs/juseless/datagrabbers/tests/test_ucla.py +2 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/configs/juseless/datagrabbers/ucla.py +4 -4
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/_dispatch.py +11 -14
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/_ants_coordinates_warper.py +6 -8
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/_coordinates.py +34 -21
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/_fsl_coordinates_warper.py +6 -8
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/masks/_ants_mask_warper.py +18 -11
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/masks/_fsl_mask_warper.py +6 -8
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/masks/_masks.py +27 -34
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/masks/tests/test_masks.py +4 -4
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/parcellations/_ants_parcellation_warper.py +18 -11
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/parcellations/_fsl_parcellation_warper.py +6 -8
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/parcellations/_parcellations.py +39 -43
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/parcellations/tests/test_parcellations.py +1 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/pipeline_data_registry_base.py +3 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/template_spaces.py +3 -3
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/tests/test_data_utils.py +1 -2
- junifer-0.0.6.dev252/junifer/data/utils.py +116 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/aomic/id1000.py +24 -11
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/aomic/piop1.py +27 -14
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/aomic/piop2.py +27 -14
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/aomic/tests/test_id1000.py +3 -3
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/aomic/tests/test_piop1.py +4 -4
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/aomic/tests/test_piop2.py +4 -4
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/base.py +18 -12
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/datalad_base.py +18 -11
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/dmcc13_benchmark.py +31 -18
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/hcp1200/datalad_hcp1200.py +3 -3
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/hcp1200/hcp1200.py +26 -15
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/hcp1200/tests/test_hcp1200.py +2 -1
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/multiple.py +7 -7
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/pattern.py +75 -45
- junifer-0.0.6.dev252/junifer/datagrabber/pattern_validation_mixin.py +498 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/tests/test_datalad_base.py +7 -8
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/tests/test_dmcc13_benchmark.py +28 -11
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/tests/test_pattern_validation_mixin.py +6 -6
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datareader/default.py +6 -6
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/nilearn/junifer_connectivity_measure.py +2 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/nilearn/junifer_nifti_spheres_masker.py +4 -4
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/nilearn/tests/test_junifer_connectivity_measure.py +15 -15
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/nilearn/tests/test_junifer_nifti_spheres_masker.py +2 -3
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/base.py +8 -8
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/brainprint.py +7 -9
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/complexity/complexity_base.py +6 -8
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/complexity/hurst_exponent.py +5 -5
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/complexity/multiscale_entropy_auc.py +5 -5
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/complexity/perm_entropy.py +5 -5
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/complexity/range_entropy.py +5 -5
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/complexity/range_entropy_auc.py +5 -5
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/complexity/sample_entropy.py +5 -5
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/complexity/weighted_perm_entropy.py +5 -5
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/ets_rss.py +7 -7
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/falff/_afni_falff.py +1 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/falff/_junifer_falff.py +1 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/falff/falff_base.py +2 -4
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/falff/falff_parcels.py +7 -7
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/falff/falff_spheres.py +6 -6
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/functional_connectivity/crossparcellation_functional_connectivity.py +6 -6
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/functional_connectivity/edge_functional_connectivity_parcels.py +7 -7
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/functional_connectivity/edge_functional_connectivity_spheres.py +6 -6
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/functional_connectivity/functional_connectivity_base.py +10 -10
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/functional_connectivity/functional_connectivity_parcels.py +7 -7
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/functional_connectivity/functional_connectivity_spheres.py +6 -6
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_parcels.py +1 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_spheres.py +1 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_parcels.py +3 -3
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_spheres.py +3 -3
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/parcel_aggregation.py +8 -8
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/reho/_afni_reho.py +1 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/reho/_junifer_reho.py +1 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/reho/reho_base.py +2 -4
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/reho/reho_parcels.py +8 -8
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/reho/reho_spheres.py +7 -7
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/sphere_aggregation.py +8 -8
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/temporal_snr/temporal_snr_base.py +8 -8
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/temporal_snr/temporal_snr_parcels.py +6 -6
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/temporal_snr/temporal_snr_spheres.py +5 -5
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/utils.py +3 -3
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/onthefly/_brainprint.py +2 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/onthefly/read_transform.py +3 -3
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/pipeline/marker_collection.py +4 -4
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/pipeline/pipeline_component_registry.py +5 -4
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/pipeline/pipeline_step_mixin.py +15 -11
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/pipeline/tests/test_pipeline_component_registry.py +2 -3
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/pipeline/tests/test_pipeline_step_mixin.py +19 -19
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/pipeline/tests/test_update_meta_mixin.py +4 -4
- junifer-0.0.6.dev252/junifer/pipeline/update_meta_mixin.py +56 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/pipeline/utils.py +5 -5
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/base.py +10 -10
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/confounds/fmriprep_confound_remover.py +11 -14
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/confounds/tests/test_fmriprep_confound_remover.py +1 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/smoothing/smoothing.py +7 -7
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/warping/_ants_warper.py +26 -6
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/warping/_fsl_warper.py +22 -7
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/warping/space_warper.py +37 -10
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/warping/tests/test_space_warper.py +3 -4
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/stats.py +4 -4
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/storage/base.py +14 -13
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/storage/hdf5.py +21 -20
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/storage/pandas_base.py +12 -11
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/storage/sqlite.py +11 -11
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/storage/tests/test_hdf5.py +1 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/storage/tests/test_sqlite.py +2 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/storage/tests/test_utils.py +8 -7
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/storage/utils.py +7 -7
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/testing/datagrabbers.py +9 -10
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/tests/test_stats.py +2 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/typing/_typing.py +6 -9
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/utils/helpers.py +2 -3
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/utils/logging.py +5 -5
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/utils/singleton.py +3 -3
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer.egg-info/PKG-INFO +2 -2
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer.egg-info/SOURCES.txt +3 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/pyproject.toml +1 -1
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/tools/create_dmcc13_benchmark_example_dataset.py +5 -1
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/tools/create_hcp1200_example_dataset.py +9 -5
- junifer-0.0.6.dev227/junifer/data/utils.py +0 -51
- junifer-0.0.6.dev227/junifer/datagrabber/pattern_validation_mixin.py +0 -388
- junifer-0.0.6.dev227/junifer/pipeline/update_meta_mixin.py +0 -52
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.dockerignore +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.github/ISSUE_TEMPLATE/dataset-request.yml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.github/ISSUE_TEMPLATE/documention-request.yml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.github/ISSUE_TEMPLATE/feature-request.yml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.github/ISSUE_TEMPLATE/marker-request.yml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.github/dependabot.yml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.github/pull_request_template.md +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.github/workflows/ci-docs.yml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.github/workflows/ci.yml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.github/workflows/docker-ci-publish.yml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.github/workflows/docker-docs-publish.yml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.github/workflows/docs-preview.yml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.github/workflows/docs.yml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.github/workflows/lint.yml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.github/workflows/pypi.yml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.gitignore +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.gitmodules +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/.pre-commit-config.yaml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/AUTHORS.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/Dockerfile-ci +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/Dockerfile-docs +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/LICENSE.md +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/README.md +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/codecov.yml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/conda-env.yml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/Makefile +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/_static/css/custom.css +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/_static/js/custom.js +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/_templates/versions.html +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/api/api.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/api/cli.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/api/configs.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/api/data.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/api/datagrabbers.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/api/datareaders.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/api/index.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/api/markers.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/api/nilearn.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/api/onthefly.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/api/pipeline.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/api/preprocessing.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/api/stats.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/api/storage.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/api/testing.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/api/utils.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/builtin.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/contributors.inc +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/.gitignore +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/335.enh +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/354.feature +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/355.misc +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/356.bugfix +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/357.enh +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/358.doc +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/359.doc +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/360.bugfix +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/361.misc +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/362.feature +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/367.enh +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/368.enh +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/369.bugfix +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/370.bugfix +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/372.misc +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/373.misc +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/374.misc +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/380.misc +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/382.misc +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/383.misc +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/384.misc +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/386.bugfix +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/387.change +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/387.feature +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/389.enh +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/391.misc +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/changes/newsfragments/392.feature +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/conf.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/contribution.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/extending/coordinates.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/extending/datagrabber.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/extending/extension.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/extending/index.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/extending/marker.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/extending/masks.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/extending/parcellations.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/extending/preprocessor.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/faq.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/help.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/images/junifer_logo.png +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/index.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/installation.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/links.inc +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/maintaining.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/redirect.html +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/starting.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/understanding/data.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/understanding/datagrabber.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/understanding/datareader.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/understanding/index.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/understanding/marker.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/understanding/pipeline.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/understanding/storage.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/using/codeless.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/using/index.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/using/masks.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/using/queueing.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/using/running.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/docs/whats_new.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/examples/README.rst +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/examples/norun_hcpfc_pearson.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/examples/norun_ukbvm_gmd.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/examples/run_compute_parcel_mean.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/examples/run_datagrabber_bids_datalad.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/examples/run_ets_rss_marker.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/examples/run_junifer_julearn.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/examples/run_run_gmd_mean.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/examples/yamls/gmd_mean.yaml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/examples/yamls/gmd_mean_htcondor.yaml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/examples/yamls/partly_cloudy_agg_mean_tian.yml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/examples/yamls/ukb_gmd_mean.yaml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/ignore_words.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/queue_context/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/queue_context/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/queue_context/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/queue_context/queue_context_adapter.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/afni/3dAFNItoNIFTI +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/afni/3dRSFC +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/afni/3dReHo +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/afni/afni +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/afni/run_afni_docker.sh +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/ants/ResampleImage +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/ants/antsApplyTransforms +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/ants/antsApplyTransformsToPoints +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/ants/run_ants_docker.sh +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/freesurfer/mri_binarize +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/freesurfer/mri_mc +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/freesurfer/mri_pretess +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/freesurfer/mris_convert +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/freesurfer/run_freesurfer_docker.sh +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/fsl/applywarp +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/fsl/flirt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/fsl/img2imgcoord +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/fsl/run_fsl_docker.sh +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/fsl/std2imgcoord +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/run_conda.bash +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/run_conda.zsh +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/run_venv.bash +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/api/res/run_venv.zsh +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/cli/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/cli/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/cli/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/cli/tests/data/gmd_mean.yaml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/cli/tests/data/gmd_mean_htcondor.yaml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/cli/tests/data/partly_cloudy_agg_mean_tian.yml +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/cli/tests/test_cli_utils.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/cli/tests/test_parser.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/configs/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/configs/juseless/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/configs/juseless/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/configs/juseless/datagrabbers/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/configs/juseless/datagrabbers/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/configs/juseless/datagrabbers/aomic_id1000_vbm.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/configs/juseless/datagrabbers/camcan_vbm.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/configs/juseless/datagrabbers/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/configs/juseless/datagrabbers/tests/test_aomic_id1000_vbm.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/configs/juseless/datagrabbers/tests/test_camcan_vbm.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/configs/juseless/datagrabbers/tests/test_ixi_vbm.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/configs/juseless/datagrabbers/tests/test_ukb_vbm.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/configs/juseless/datagrabbers/ukb_vbm.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/configs/juseless/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/conftest.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/VOIs/meta/AutobiographicalMemory_VOIs.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/VOIs/meta/CogAC_VOIs.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/VOIs/meta/CogAR_VOIs.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/VOIs/meta/DMNBuckner_VOIs.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/VOIs/meta/Dosenbach2010_MNI_VOIs.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/VOIs/meta/Empathy_VOIs.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/VOIs/meta/Motor_VOIs.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/VOIs/meta/MultiTask_VOIs.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/VOIs/meta/PhysioStress_VOIs.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/VOIs/meta/Power2011_MNI_VOIs.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/VOIs/meta/Power2013_MNI_VOIs.tsv +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/VOIs/meta/Rew_VOIs.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/VOIs/meta/Somatosensory_VOIs.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/VOIs/meta/ToM_VOIs.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/VOIs/meta/VigAtt_VOIs.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/VOIs/meta/WM_VOIs.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/VOIs/meta/eMDN_VOIs.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/VOIs/meta/eSAD_VOIs.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/VOIs/meta/extDMN_VOIs.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/coordinates/tests/test_coordinates.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/masks/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/masks/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/masks/ukb/UKB_15K_GM_template.nii.gz +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/masks/vickery-patil/CAT12_IXI555_MNI152_TMP_GS_GMprob0.2_clean.nii.gz +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/masks/vickery-patil/CAT12_IXI555_MNI152_TMP_GS_GMprob0.2_clean_3mm.nii.gz +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/masks/vickery-patil/GMprob0.2_cortex_3mm_NA_rm.nii.gz +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/parcellations/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/parcellations/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/data/tests/test_template_spaces.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/aomic/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/aomic/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/aomic/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/hcp1200/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/hcp1200/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/hcp1200/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/pattern_datalad.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/tests/test_base.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/tests/test_multiple.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/tests/test_pattern.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datagrabber/tests/test_pattern_datalad.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datareader/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datareader/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datareader/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/datareader/tests/test_default_reader.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/BrainPrint/brainprint/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/BrainPrint/brainprint/_version.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/BrainPrint/brainprint/asymmetry.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/BrainPrint/brainprint/brainprint.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/BrainPrint/brainprint/surfaces.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/BrainPrint/brainprint/utils/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/BrainPrint/brainprint/utils/_config.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/BrainPrint/brainprint/utils/utils.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/h5io/h5io/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/h5io/h5io/_h5io.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/h5io/h5io/_version.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/h5io/h5io/chunked_array.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/h5io/h5io/chunked_list.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/nilearn/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/nilearn/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/external/nilearn/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/complexity/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/complexity/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/complexity/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/complexity/tests/test_complexity_base.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/complexity/tests/test_hurst_exponent.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/complexity/tests/test_multiscale_entropy_auc.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/complexity/tests/test_perm_entropy.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/complexity/tests/test_range_entropy.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/complexity/tests/test_range_entropy_auc.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/complexity/tests/test_sample_entropy.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/complexity/tests/test_weighted_perm_entropy.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/falff/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/falff/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/falff/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/falff/tests/test_falff_parcels.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/falff/tests/test_falff_spheres.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/functional_connectivity/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/functional_connectivity/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/functional_connectivity/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/functional_connectivity/tests/test_crossparcellation_functional_connectivity.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_base.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/reho/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/reho/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/reho/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/reho/tests/test_reho_parcels.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/reho/tests/test_reho_spheres.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/temporal_snr/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/temporal_snr/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/temporal_snr/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/temporal_snr/tests/test_temporal_snr_base.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/temporal_snr/tests/test_temporal_snr_parcels.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/temporal_snr/tests/test_temporal_snr_spheres.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/tests/test_brainprint.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/tests/test_ets_rss.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/tests/test_marker_utils.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/tests/test_markers_base.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/tests/test_parcel_aggregation.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/markers/tests/test_sphere_aggregation.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/onthefly/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/onthefly/tests/test_read_transform.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/pipeline/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/pipeline/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/pipeline/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/pipeline/tests/test_marker_collection.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/pipeline/tests/test_workdir_manager.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/pipeline/workdir_manager.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/confounds/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/confounds/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/confounds/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/smoothing/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/smoothing/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/smoothing/_afni_smoothing.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/smoothing/_fsl_smoothing.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/smoothing/_nilearn_smoothing.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/smoothing/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/smoothing/tests/test_smoothing.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/tests/test_preprocess_base.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/warping/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/warping/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/preprocess/warping/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/storage/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/storage/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/storage/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/storage/tests/test_pandas_base.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/storage/tests/test_storage_base.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/testing/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/testing/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/testing/data/sub-0001_task-anticipation_acq-seq_desc-confounds_regressors.tsv +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/testing/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/testing/registry.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/testing/tests/test_oasisvmbtesting_datagrabber.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/testing/tests/test_partlycloudytesting_datagrabber.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/testing/tests/test_spmauditory_datagrabber.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/testing/tests/test_testing_registry.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/testing/utils.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/tests/test_main.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/typing/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/typing/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/utils/__init__.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/utils/__init__.pyi +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/utils/_yaml.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/utils/fs.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/utils/py.typed +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/utils/tests/test_fs.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/utils/tests/test_helpers.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer/utils/tests/test_logging.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer.egg-info/dependency_links.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer.egg-info/entry_points.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer.egg-info/requires.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/junifer.egg-info/top_level.txt +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/setup.cfg +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/setup.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/tools/create_aomic1000_example_dataset.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/tools/create_aomicpiop1_example_dataset.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/tools/create_aomicpiop2_example_dataset.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/tools/create_bids_example_dataset.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/tools/create_bids_example_dataset_sessions.py +0 -0
- {junifer-0.0.6.dev227 → junifer-0.0.6.dev252}/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.dev252
|
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>
|
@@ -24,7 +24,7 @@ Classifier: Programming Language :: Python :: 3.10
|
|
24
24
|
Classifier: Programming Language :: Python :: 3.11
|
25
25
|
Classifier: Programming Language :: Python :: 3.12
|
26
26
|
Classifier: Programming Language :: Python :: 3.13
|
27
|
-
Requires-Python: >=3.
|
27
|
+
Requires-Python: >=3.9
|
28
28
|
Description-Content-Type: text/markdown
|
29
29
|
License-File: LICENSE.md
|
30
30
|
License-File: AUTHORS.rst
|
@@ -0,0 +1 @@
|
|
1
|
+
:class:`.SpaceWarper`'s ``using`` now supports ``"auto"`` allowing auto tool selection based on DataGrabber specification by `Synchon Mandal`_
|
@@ -0,0 +1 @@
|
|
1
|
+
Update ``Warp`` data type to be a list of dictionaries and adapt to allow multiple transforms to be specified by `Synchon Mandal`_
|
@@ -0,0 +1 @@
|
|
1
|
+
Update type hints across codebase to be Python>=3.9 compatible by `Synchon Mandal`_
|
@@ -39,7 +39,7 @@ and others who use it will thank you.
|
|
39
39
|
Handling external dependencies from toolboxes
|
40
40
|
---------------------------------------------
|
41
41
|
|
42
|
-
You can also specify dependencies of external toolboxes like
|
42
|
+
You can also specify dependencies of external toolboxes like AFNI, FSL and ANTs,
|
43
43
|
by having a class attribute like so:
|
44
44
|
|
45
45
|
.. code-block:: python
|
@@ -87,6 +87,10 @@ that it shows the problem a bit better and how we solve it:
|
|
87
87
|
"using": "ants",
|
88
88
|
"depends_on": ANTsWarper,
|
89
89
|
},
|
90
|
+
{
|
91
|
+
"using": "auto",
|
92
|
+
"depends_on": [FSLWarper, ANTsWarper],
|
93
|
+
},
|
90
94
|
]
|
91
95
|
|
92
96
|
def __init__(
|
@@ -100,13 +104,20 @@ Here, you see a new class attribute ``_CONDITIONAL_DEPENDENCIES`` which is a
|
|
100
104
|
list of dictionaries with two keys:
|
101
105
|
|
102
106
|
* ``using`` (str) : lowercased name of the toolbox
|
103
|
-
* ``depends_on`` (object) : a class
|
107
|
+
* ``depends_on`` (object or list of objects) : a class or list of classes which \
|
108
|
+
implements the particular tool's use
|
104
109
|
|
105
110
|
It is mandatory to have the ``using`` positional argument in the constructor in
|
106
111
|
this case as the validation starts with this and moves further. It is also
|
107
112
|
mandatory to only allow the value of ``using`` argument to be one of them
|
108
113
|
specified in the ``using`` key of ``_CONDITIONAL_DEPENDENCIES`` entries.
|
109
114
|
|
115
|
+
For some cases, like we have here, it might be worth to have ``"auto"`` for
|
116
|
+
``"using"`` which eases the choice of a particular tool by the user and
|
117
|
+
instead lets ``junifer`` do it automatically. In that case, ``"depends_on"``
|
118
|
+
needs to be a list of the tool implementation classes. This also requires the
|
119
|
+
user to have all the tools in the ``PATH``.
|
120
|
+
|
110
121
|
For brevity, we only show the ``FSLWarper`` here but ``ANTsWarper`` looks very
|
111
122
|
similar. ``FSLWarper`` looks like this (only the relevant part is shown here):
|
112
123
|
|
@@ -146,14 +146,23 @@ Warping to subject's native space
|
|
146
146
|
To warp to subject's native space, the dataset needs to provide ``T1w`` and
|
147
147
|
``Warp`` data types and the DataGrabber needs to at least have
|
148
148
|
``["BOLD", "T1w", "Warp"]`` (if you are warping ``BOLD``) as the ``types``
|
149
|
-
parameter's value.
|
149
|
+
parameter's value.
|
150
|
+
|
151
|
+
The :class:`.SpaceWarper`'s ``reference`` parameter needs
|
150
152
|
to be set to ``T1w``, which means that the ``BOLD`` data will be transformed
|
151
153
|
using the ``T1w`` as reference (it's resampled internally to match the
|
152
|
-
resolution of the ``BOLD``).
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
154
|
+
resolution of the ``BOLD``).
|
155
|
+
|
156
|
+
The ``Warp`` data type provides the warp or transformation file (can be linear,
|
157
|
+
non-linear or linear + non-linear transform) for the purpose. For ``using``
|
158
|
+
parameter, you can pass either ``fsl`` or ``ants`` depending on the warp or
|
159
|
+
transformation file format. You can also provide ``auto`` to ``using`` in which
|
160
|
+
case either ``FSL`` or ``ANTs`` will be used based on the file format provided
|
161
|
+
by the DataGrabber. This also requires that both the tools are in the ``PATH``.
|
162
|
+
|
163
|
+
And finally, you would need to set the ``on`` parameter to ``BOLD`` to make it
|
164
|
+
clear which data type you intend to warp, as the :class:`.SpaceWarper` is also
|
165
|
+
capable of warping ``T1w``.
|
157
166
|
|
158
167
|
An example YAML might look like this:
|
159
168
|
|
@@ -163,6 +172,7 @@ An example YAML might look like this:
|
|
163
172
|
- kind: SpaceWarper
|
164
173
|
using: fsl
|
165
174
|
reference: T1w
|
175
|
+
on: BOLD
|
166
176
|
|
167
177
|
.. _preprocess_warping_template:
|
168
178
|
|
@@ -174,8 +184,8 @@ data type that you want to work on) in ``MNI152NLin6Asym`` template space but
|
|
174
184
|
you would like to compute features in ``MNI152NLin2009cAsym`` template space,
|
175
185
|
you can also use the :class:`.SpaceWarper` by setting the ``reference``
|
176
186
|
parameter to the template space's name, in this case,
|
177
|
-
``reference
|
178
|
-
to ``
|
187
|
+
``reference: MNI152NLin2009cAsym``. The ``using`` parameter needs to be set
|
188
|
+
to ``ants`` as we need it to warp the data.
|
179
189
|
|
180
190
|
.. note::
|
181
191
|
|
@@ -190,3 +200,4 @@ For an YAML example:
|
|
190
200
|
- kind: SpaceWarper
|
191
201
|
using: ants
|
192
202
|
reference: MNI152NLin2009cAsym
|
203
|
+
on: BOLD
|
@@ -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.dev252'
|
16
|
+
__version_tuple__ = version_tuple = (0, 0, 6, 'dev252')
|
@@ -5,7 +5,6 @@
|
|
5
5
|
# Synchon Mandal <s.mandal@fz-juelich.de>
|
6
6
|
# License: AGPL
|
7
7
|
|
8
|
-
from typing import Type
|
9
8
|
|
10
9
|
from ..pipeline import PipelineComponentRegistry
|
11
10
|
from ..typing import DataGrabberLike, MarkerLike, PreprocessorLike, StorageLike
|
@@ -47,7 +46,7 @@ def register_datagrabber(klass: DataGrabberLike) -> DataGrabberLike:
|
|
47
46
|
return klass
|
48
47
|
|
49
48
|
|
50
|
-
def register_datareader(klass:
|
49
|
+
def register_datareader(klass: type) -> type:
|
51
50
|
"""Register DataReader.
|
52
51
|
|
53
52
|
Registers the DataReader so it can be used by name.
|
@@ -8,7 +8,7 @@
|
|
8
8
|
import os
|
9
9
|
import shutil
|
10
10
|
from pathlib import Path
|
11
|
-
from typing import
|
11
|
+
from typing import Optional, Union
|
12
12
|
|
13
13
|
from ..api.queue_context import GnuParallelLocalAdapter, HTCondorAdapter
|
14
14
|
from ..datagrabber import BaseDataGrabber
|
@@ -27,7 +27,7 @@ from ..utils import logger, raise_error, yaml
|
|
27
27
|
__all__ = ["run", "collect", "queue", "reset", "list_elements"]
|
28
28
|
|
29
29
|
|
30
|
-
def _get_datagrabber(datagrabber_config:
|
30
|
+
def _get_datagrabber(datagrabber_config: dict) -> DataGrabberLike:
|
31
31
|
"""Get DataGrabber.
|
32
32
|
|
33
33
|
Parameters
|
@@ -49,7 +49,7 @@ def _get_datagrabber(datagrabber_config: Dict) -> DataGrabberLike:
|
|
49
49
|
)
|
50
50
|
|
51
51
|
|
52
|
-
def _get_preprocessor(preprocessing_config:
|
52
|
+
def _get_preprocessor(preprocessing_config: dict) -> PreprocessorLike:
|
53
53
|
"""Get Preprocessor.
|
54
54
|
|
55
55
|
Parameters
|
@@ -71,7 +71,7 @@ def _get_preprocessor(preprocessing_config: Dict) -> PreprocessorLike:
|
|
71
71
|
)
|
72
72
|
|
73
73
|
|
74
|
-
def _get_marker(marker_config:
|
74
|
+
def _get_marker(marker_config: dict) -> MarkerLike:
|
75
75
|
"""Get Marker.
|
76
76
|
|
77
77
|
Parameters
|
@@ -93,7 +93,7 @@ def _get_marker(marker_config: Dict) -> MarkerLike:
|
|
93
93
|
)
|
94
94
|
|
95
95
|
|
96
|
-
def _get_storage(storage_config:
|
96
|
+
def _get_storage(storage_config: dict) -> StorageLike:
|
97
97
|
"""Get Storage.
|
98
98
|
|
99
99
|
Parameters
|
@@ -117,11 +117,11 @@ def _get_storage(storage_config: Dict) -> StorageLike:
|
|
117
117
|
|
118
118
|
def run(
|
119
119
|
workdir: Union[str, Path],
|
120
|
-
datagrabber:
|
121
|
-
markers:
|
122
|
-
storage:
|
123
|
-
preprocessors: Optional[
|
124
|
-
elements: Union[str,
|
120
|
+
datagrabber: dict,
|
121
|
+
markers: list[dict],
|
122
|
+
storage: dict,
|
123
|
+
preprocessors: Optional[list[dict]] = None,
|
124
|
+
elements: Union[str, list[Union[str, tuple]], tuple, None] = None,
|
125
125
|
) -> None:
|
126
126
|
"""Run the pipeline on the selected element.
|
127
127
|
|
@@ -202,7 +202,7 @@ def run(
|
|
202
202
|
mc.fit(datagrabber_object[t_element])
|
203
203
|
|
204
204
|
|
205
|
-
def collect(storage:
|
205
|
+
def collect(storage: dict) -> None:
|
206
206
|
"""Collect and store data.
|
207
207
|
|
208
208
|
Parameters
|
@@ -224,12 +224,12 @@ def collect(storage: Dict) -> None:
|
|
224
224
|
|
225
225
|
|
226
226
|
def queue(
|
227
|
-
config:
|
227
|
+
config: dict,
|
228
228
|
kind: str,
|
229
229
|
jobname: str = "junifer_job",
|
230
230
|
overwrite: bool = False,
|
231
|
-
elements: Union[str,
|
232
|
-
**kwargs: Union[str, int, bool,
|
231
|
+
elements: Union[str, list[Union[str, tuple]], tuple, None] = None,
|
232
|
+
**kwargs: Union[str, int, bool, dict, tuple, list],
|
233
233
|
) -> None:
|
234
234
|
"""Queue a job to be executed later.
|
235
235
|
|
@@ -316,7 +316,7 @@ def queue(
|
|
316
316
|
elements = dg.get_elements()
|
317
317
|
# Listify elements
|
318
318
|
if not isinstance(elements, list):
|
319
|
-
elements:
|
319
|
+
elements: list[Union[str, tuple]] = [elements]
|
320
320
|
|
321
321
|
# Check job queueing system
|
322
322
|
adapter = None
|
@@ -341,7 +341,7 @@ def queue(
|
|
341
341
|
logger.info("Queue done")
|
342
342
|
|
343
343
|
|
344
|
-
def reset(config:
|
344
|
+
def reset(config: dict) -> None:
|
345
345
|
"""Reset the storage and jobs directory.
|
346
346
|
|
347
347
|
Parameters
|
@@ -380,8 +380,8 @@ def reset(config: Dict) -> None:
|
|
380
380
|
|
381
381
|
|
382
382
|
def list_elements(
|
383
|
-
datagrabber:
|
384
|
-
elements: Union[str,
|
383
|
+
datagrabber: dict,
|
384
|
+
elements: Union[str, list[Union[str, tuple]], tuple, None] = None,
|
385
385
|
) -> str:
|
386
386
|
"""List elements of the datagrabber filtered using `elements`.
|
387
387
|
|
@@ -6,7 +6,7 @@
|
|
6
6
|
import shutil
|
7
7
|
import textwrap
|
8
8
|
from pathlib import Path
|
9
|
-
from typing import
|
9
|
+
from typing import Optional, Union
|
10
10
|
|
11
11
|
from ...utils import logger, make_executable, raise_error, run_ext_cmd
|
12
12
|
from .queue_context_adapter import QueueContextAdapter
|
@@ -60,10 +60,10 @@ class GnuParallelLocalAdapter(QueueContextAdapter):
|
|
60
60
|
job_name: str,
|
61
61
|
job_dir: Path,
|
62
62
|
yaml_config_path: Path,
|
63
|
-
elements:
|
63
|
+
elements: list[Union[str, tuple]],
|
64
64
|
pre_run: Optional[str] = None,
|
65
65
|
pre_collect: Optional[str] = None,
|
66
|
-
env: Optional[
|
66
|
+
env: Optional[dict[str, str]] = None,
|
67
67
|
verbose: str = "info",
|
68
68
|
submit: bool = False,
|
69
69
|
) -> None:
|
@@ -86,7 +86,7 @@ class GnuParallelLocalAdapter(QueueContextAdapter):
|
|
86
86
|
self._run_joblog_path = self._job_dir / f"run_{self._job_name}_joblog"
|
87
87
|
self._elements_file_path = self._job_dir / "elements"
|
88
88
|
|
89
|
-
def _check_env(self, env: Optional[
|
89
|
+
def _check_env(self, env: Optional[dict[str, str]]) -> None:
|
90
90
|
"""Check value of env parameter on init.
|
91
91
|
|
92
92
|
Parameters
|
@@ -6,7 +6,7 @@
|
|
6
6
|
import shutil
|
7
7
|
import textwrap
|
8
8
|
from pathlib import Path
|
9
|
-
from typing import
|
9
|
+
from typing import Optional, Union
|
10
10
|
|
11
11
|
from ...utils import logger, make_executable, raise_error, run_ext_cmd
|
12
12
|
from .queue_context_adapter import QueueContextAdapter
|
@@ -78,10 +78,10 @@ class HTCondorAdapter(QueueContextAdapter):
|
|
78
78
|
job_name: str,
|
79
79
|
job_dir: Path,
|
80
80
|
yaml_config_path: Path,
|
81
|
-
elements:
|
81
|
+
elements: list[Union[str, tuple]],
|
82
82
|
pre_run: Optional[str] = None,
|
83
83
|
pre_collect: Optional[str] = None,
|
84
|
-
env: Optional[
|
84
|
+
env: Optional[dict[str, str]] = None,
|
85
85
|
verbose: str = "info",
|
86
86
|
cpus: int = 1,
|
87
87
|
mem: str = "8G",
|
@@ -115,7 +115,7 @@ class HTCondorAdapter(QueueContextAdapter):
|
|
115
115
|
)
|
116
116
|
self._dag_path = self._job_dir / f"{self._job_name}.dag"
|
117
117
|
|
118
|
-
def _check_env(self, env: Optional[
|
118
|
+
def _check_env(self, env: Optional[dict[str, str]]) -> None:
|
119
119
|
"""Check value of env parameter on init.
|
120
120
|
|
121
121
|
Parameters
|
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
import logging
|
7
7
|
from pathlib import Path
|
8
|
-
from typing import
|
8
|
+
from typing import Optional, Union
|
9
9
|
|
10
10
|
import pytest
|
11
11
|
|
@@ -44,7 +44,7 @@ def test_GnuParallelLocalAdapter_env_shell_error() -> None:
|
|
44
44
|
],
|
45
45
|
)
|
46
46
|
def test_GnuParallelLocalAdapter_elements(
|
47
|
-
elements:
|
47
|
+
elements: list[Union[str, tuple]],
|
48
48
|
expected_text: str,
|
49
49
|
) -> None:
|
50
50
|
"""Test GnuParallelLocalAdapter elements().
|
@@ -177,7 +177,7 @@ def test_GnuParallelLocalAdapter_prepare(
|
|
177
177
|
tmp_path: Path,
|
178
178
|
monkeypatch: pytest.MonkeyPatch,
|
179
179
|
caplog: pytest.LogCaptureFixture,
|
180
|
-
env:
|
180
|
+
env: dict[str, str],
|
181
181
|
) -> None:
|
182
182
|
"""Test GnuParallelLocalAdapter prepare().
|
183
183
|
|
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
import logging
|
7
7
|
from pathlib import Path
|
8
|
-
from typing import
|
8
|
+
from typing import Optional, Union
|
9
9
|
|
10
10
|
import pytest
|
11
11
|
|
@@ -181,7 +181,7 @@ def test_HTCondorAdapter_run_collect(
|
|
181
181
|
],
|
182
182
|
)
|
183
183
|
def test_HTCondor_dag(
|
184
|
-
elements:
|
184
|
+
elements: list[Union[str, tuple]], collect: str, expected_text: str
|
185
185
|
) -> None:
|
186
186
|
"""Test HTCondorAdapter dag().
|
187
187
|
|
@@ -218,7 +218,7 @@ def test_HTCondorAdapter_prepare(
|
|
218
218
|
tmp_path: Path,
|
219
219
|
monkeypatch: pytest.MonkeyPatch,
|
220
220
|
caplog: pytest.LogCaptureFixture,
|
221
|
-
env:
|
221
|
+
env: dict[str, str],
|
222
222
|
) -> None:
|
223
223
|
"""Test HTCondorAdapter prepare().
|
224
224
|
|
@@ -7,7 +7,7 @@
|
|
7
7
|
|
8
8
|
import logging
|
9
9
|
from pathlib import Path
|
10
|
-
from typing import
|
10
|
+
from typing import Optional, Union
|
11
11
|
|
12
12
|
import pytest
|
13
13
|
from ruamel.yaml import YAML
|
@@ -26,7 +26,7 @@ yaml.indent(mapping=2, sequence=4, offset=2)
|
|
26
26
|
|
27
27
|
|
28
28
|
@pytest.fixture
|
29
|
-
def datagrabber() ->
|
29
|
+
def datagrabber() -> dict[str, str]:
|
30
30
|
"""Return a datagrabber as a dictionary."""
|
31
31
|
return {
|
32
32
|
"kind": "PartlyCloudyTestingDataGrabber",
|
@@ -34,7 +34,7 @@ def datagrabber() -> Dict[str, str]:
|
|
34
34
|
|
35
35
|
|
36
36
|
@pytest.fixture
|
37
|
-
def markers() ->
|
37
|
+
def markers() -> list[dict[str, str]]:
|
38
38
|
"""Return markers as a list of dictionary."""
|
39
39
|
return [
|
40
40
|
{
|
@@ -53,7 +53,7 @@ def markers() -> List[Dict[str, str]]:
|
|
53
53
|
|
54
54
|
|
55
55
|
@pytest.fixture
|
56
|
-
def storage() ->
|
56
|
+
def storage() -> dict[str, str]:
|
57
57
|
"""Return a storage as a dictionary."""
|
58
58
|
return {
|
59
59
|
"kind": "SQLiteFeatureStorage",
|
@@ -62,9 +62,9 @@ def storage() -> Dict[str, str]:
|
|
62
62
|
|
63
63
|
def test_run_single_element(
|
64
64
|
tmp_path: Path,
|
65
|
-
datagrabber:
|
66
|
-
markers:
|
67
|
-
storage:
|
65
|
+
datagrabber: dict[str, str],
|
66
|
+
markers: list[dict[str, str]],
|
67
|
+
storage: dict[str, str],
|
68
68
|
) -> None:
|
69
69
|
"""Test run function with single element.
|
70
70
|
|
@@ -97,8 +97,8 @@ def test_run_single_element(
|
|
97
97
|
|
98
98
|
def test_run_single_element_with_preprocessing(
|
99
99
|
tmp_path: Path,
|
100
|
-
markers:
|
101
|
-
storage:
|
100
|
+
markers: list[dict[str, str]],
|
101
|
+
storage: dict[str, str],
|
102
102
|
) -> None:
|
103
103
|
"""Test run function with single element and pre-processing.
|
104
104
|
|
@@ -137,9 +137,9 @@ def test_run_single_element_with_preprocessing(
|
|
137
137
|
|
138
138
|
def test_run_multi_element_multi_output(
|
139
139
|
tmp_path: Path,
|
140
|
-
datagrabber:
|
141
|
-
markers:
|
142
|
-
storage:
|
140
|
+
datagrabber: dict[str, str],
|
141
|
+
markers: list[dict[str, str]],
|
142
|
+
storage: dict[str, str],
|
143
143
|
) -> None:
|
144
144
|
"""Test run function with multi element and multi output.
|
145
145
|
|
@@ -173,9 +173,9 @@ def test_run_multi_element_multi_output(
|
|
173
173
|
|
174
174
|
def test_run_multi_element_single_output(
|
175
175
|
tmp_path: Path,
|
176
|
-
datagrabber:
|
177
|
-
markers:
|
178
|
-
storage:
|
176
|
+
datagrabber: dict[str, str],
|
177
|
+
markers: list[dict[str, str]],
|
178
|
+
storage: dict[str, str],
|
179
179
|
) -> None:
|
180
180
|
"""Test run function with multi element and single output.
|
181
181
|
|
@@ -210,9 +210,9 @@ def test_run_multi_element_single_output(
|
|
210
210
|
|
211
211
|
def test_run_and_collect(
|
212
212
|
tmp_path: Path,
|
213
|
-
datagrabber:
|
214
|
-
markers:
|
215
|
-
storage:
|
213
|
+
datagrabber: dict[str, str],
|
214
|
+
markers: list[dict[str, str]],
|
215
|
+
storage: dict[str, str],
|
216
216
|
) -> None:
|
217
217
|
"""Test run and collect functions.
|
218
218
|
|
@@ -259,9 +259,9 @@ def test_queue_correct_yaml_config(
|
|
259
259
|
tmp_path: Path,
|
260
260
|
monkeypatch: pytest.MonkeyPatch,
|
261
261
|
caplog: pytest.LogCaptureFixture,
|
262
|
-
datagrabber:
|
263
|
-
markers:
|
264
|
-
storage:
|
262
|
+
datagrabber: dict[str, str],
|
263
|
+
markers: list[dict[str, str]],
|
264
|
+
storage: dict[str, str],
|
265
265
|
) -> None:
|
266
266
|
"""Test proper YAML config generation for queueing.
|
267
267
|
|
@@ -426,7 +426,7 @@ def test_queue_with_imports(
|
|
426
426
|
tmp_path: Path,
|
427
427
|
monkeypatch: pytest.MonkeyPatch,
|
428
428
|
caplog: pytest.LogCaptureFixture,
|
429
|
-
with_: Union[str,
|
429
|
+
with_: Union[str, list[str]],
|
430
430
|
) -> None:
|
431
431
|
"""Test queue with `with` imports.
|
432
432
|
|
@@ -477,7 +477,7 @@ def test_queue_with_elements(
|
|
477
477
|
tmp_path: Path,
|
478
478
|
monkeypatch: pytest.MonkeyPatch,
|
479
479
|
caplog: pytest.LogCaptureFixture,
|
480
|
-
elements: Union[str,
|
480
|
+
elements: Union[str, list[Union[str, tuple[str]]], tuple[str]],
|
481
481
|
) -> None:
|
482
482
|
"""Test queue with elements.
|
483
483
|
|
@@ -508,7 +508,7 @@ def test_queue_without_elements(
|
|
508
508
|
tmp_path: Path,
|
509
509
|
monkeypatch: pytest.MonkeyPatch,
|
510
510
|
caplog: pytest.LogCaptureFixture,
|
511
|
-
datagrabber:
|
511
|
+
datagrabber: dict[str, str],
|
512
512
|
) -> None:
|
513
513
|
"""Test queue without elements.
|
514
514
|
|
@@ -536,9 +536,9 @@ def test_queue_without_elements(
|
|
536
536
|
|
537
537
|
def test_reset_run(
|
538
538
|
tmp_path: Path,
|
539
|
-
datagrabber:
|
540
|
-
markers:
|
541
|
-
storage:
|
539
|
+
datagrabber: dict[str, str],
|
540
|
+
markers: list[dict[str, str]],
|
541
|
+
storage: dict[str, str],
|
542
542
|
) -> None:
|
543
543
|
"""Test reset function for run.
|
544
544
|
|
@@ -580,9 +580,9 @@ def test_reset_run(
|
|
580
580
|
def test_reset_queue(
|
581
581
|
tmp_path: Path,
|
582
582
|
monkeypatch: pytest.MonkeyPatch,
|
583
|
-
datagrabber:
|
584
|
-
markers:
|
585
|
-
storage:
|
583
|
+
datagrabber: dict[str, str],
|
584
|
+
markers: list[dict[str, str]],
|
585
|
+
storage: dict[str, str],
|
586
586
|
job_name: str,
|
587
587
|
) -> None:
|
588
588
|
"""Test reset function for queue.
|
@@ -647,8 +647,8 @@ def test_reset_queue(
|
|
647
647
|
],
|
648
648
|
)
|
649
649
|
def test_list_elements(
|
650
|
-
datagrabber:
|
651
|
-
elements: Optional[
|
650
|
+
datagrabber: dict[str, str],
|
651
|
+
elements: Optional[list[str]],
|
652
652
|
) -> None:
|
653
653
|
"""Test elements listing.
|
654
654
|
|
@@ -8,7 +8,7 @@ import pathlib
|
|
8
8
|
import subprocess
|
9
9
|
import sys
|
10
10
|
from pathlib import Path
|
11
|
-
from typing import Optional,
|
11
|
+
from typing import Optional, Union
|
12
12
|
|
13
13
|
import click
|
14
14
|
|
@@ -106,7 +106,7 @@ def cli() -> None: # pragma: no cover
|
|
106
106
|
default="info",
|
107
107
|
)
|
108
108
|
def run(
|
109
|
-
filepath: click.Path, element:
|
109
|
+
filepath: click.Path, element: tuple[str], verbose: Union[str, int]
|
110
110
|
) -> None:
|
111
111
|
"""Run feature extraction.
|
112
112
|
|
@@ -395,7 +395,7 @@ def reset(
|
|
395
395
|
)
|
396
396
|
def list_elements(
|
397
397
|
filepath: click.Path,
|
398
|
-
element:
|
398
|
+
element: tuple[str],
|
399
399
|
output_file: Optional[click.Path],
|
400
400
|
verbose: Union[str, int],
|
401
401
|
) -> None:
|
@@ -8,7 +8,7 @@ import importlib
|
|
8
8
|
import importlib.util
|
9
9
|
import sys
|
10
10
|
from pathlib import Path
|
11
|
-
from typing import
|
11
|
+
from typing import Union
|
12
12
|
|
13
13
|
import pandas as pd
|
14
14
|
|
@@ -18,7 +18,7 @@ from ..utils import logger, raise_error, warn_with_log, yaml
|
|
18
18
|
__all__ = ["parse_yaml", "parse_elements"]
|
19
19
|
|
20
20
|
|
21
|
-
def parse_yaml(filepath: Union[str, Path]) ->
|
21
|
+
def parse_yaml(filepath: Union[str, Path]) -> dict: # noqa: C901
|
22
22
|
"""Parse YAML.
|
23
23
|
|
24
24
|
Parameters
|
@@ -140,7 +140,7 @@ def parse_yaml(filepath: Union[str, Path]) -> Dict: # noqa: C901
|
|
140
140
|
return contents
|
141
141
|
|
142
142
|
|
143
|
-
def parse_elements(element:
|
143
|
+
def parse_elements(element: tuple[str], config: dict) -> Union[list, None]:
|
144
144
|
"""Parse elements from cli.
|
145
145
|
|
146
146
|
Parameters
|
@@ -201,7 +201,7 @@ def parse_elements(element: Tuple[str], config: Dict) -> Union[List, None]:
|
|
201
201
|
return elements
|
202
202
|
|
203
203
|
|
204
|
-
def _parse_elements_file(filepath: Path) ->
|
204
|
+
def _parse_elements_file(filepath: Path) -> list[tuple[str, ...]]:
|
205
205
|
"""Parse elements from file.
|
206
206
|
|
207
207
|
Parameters
|
@@ -5,7 +5,7 @@
|
|
5
5
|
# License: AGPL
|
6
6
|
|
7
7
|
from pathlib import Path
|
8
|
-
from typing import Callable
|
8
|
+
from typing import Callable
|
9
9
|
|
10
10
|
import pytest
|
11
11
|
from click.testing import CliRunner
|
@@ -42,7 +42,7 @@ runner = CliRunner()
|
|
42
42
|
],
|
43
43
|
)
|
44
44
|
def test_run_and_collect_commands(
|
45
|
-
tmp_path: Path, elements:
|
45
|
+
tmp_path: Path, elements: tuple[str, ...]
|
46
46
|
) -> None:
|
47
47
|
"""Test run and collect commands.
|
48
48
|
|
@@ -175,7 +175,7 @@ def test_run_using_element_file(tmp_path: Path, elements: str) -> None:
|
|
175
175
|
],
|
176
176
|
)
|
177
177
|
def test_multi_element_access(
|
178
|
-
tmp_path: Path, elements: str, expected_list:
|
178
|
+
tmp_path: Path, elements: str, expected_list: list[tuple[str, ...]]
|
179
179
|
) -> None:
|
180
180
|
"""Test mulit-element parsing.
|
181
181
|
|
@@ -306,7 +306,7 @@ def test_reset(
|
|
306
306
|
],
|
307
307
|
)
|
308
308
|
def test_list_elements_stdout(
|
309
|
-
elements:
|
309
|
+
elements: tuple[str, ...],
|
310
310
|
) -> None:
|
311
311
|
"""Test elements listing to stdout.
|
312
312
|
|
@@ -344,7 +344,7 @@ def test_list_elements_stdout(
|
|
344
344
|
)
|
345
345
|
def test_list_elements_output_file(
|
346
346
|
tmp_path: Path,
|
347
|
-
elements:
|
347
|
+
elements: tuple[str, ...],
|
348
348
|
) -> None:
|
349
349
|
"""Test elements listing to output file.
|
350
350
|
|