junifer 0.0.3.dev186__tar.gz → 0.0.4__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.4/.github/dependabot.yml +10 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/.github/workflows/ci-docs.yml +6 -5
- {junifer-0.0.3.dev186 → junifer-0.0.4}/.github/workflows/ci.yml +42 -7
- {junifer-0.0.3.dev186 → junifer-0.0.4}/.github/workflows/docs-preview.yml +19 -5
- {junifer-0.0.3.dev186 → junifer-0.0.4}/.github/workflows/docs.yml +20 -6
- {junifer-0.0.3.dev186 → junifer-0.0.4}/.github/workflows/lint.yml +4 -4
- {junifer-0.0.3.dev186 → junifer-0.0.4}/.github/workflows/pypi.yml +4 -9
- {junifer-0.0.3.dev186 → junifer-0.0.4}/.pre-commit-config.yaml +8 -7
- {junifer-0.0.3.dev186 → junifer-0.0.4}/PKG-INFO +65 -12
- {junifer-0.0.3.dev186 → junifer-0.0.4}/README.md +22 -5
- junifer-0.0.4/conda-env.yml +33 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/api/api.rst +8 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/api/data.rst +8 -0
- junifer-0.0.4/docs/api/markers.rst +14 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/builtin.rst +140 -25
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/changes/contributors.inc +1 -0
- junifer-0.0.4/docs/changes/newsfragments/320.fix +1 -0
- junifer-0.0.4/docs/changes/newsfragments/321.fix +1 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/conf.py +3 -1
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/contribution.rst +5 -3
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/extending/coordinates.rst +21 -18
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/extending/datagrabber.rst +116 -54
- junifer-0.0.4/docs/extending/dependencies.rst +141 -0
- junifer-0.0.4/docs/extending/extension.rst +35 -0
- junifer-0.0.4/docs/extending/index.rst +32 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/extending/marker.rst +53 -56
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/extending/masks.rst +27 -21
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/extending/parcellations.rst +41 -33
- junifer-0.0.4/docs/extending/preprocessor.rst +246 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/index.rst +1 -1
- junifer-0.0.4/docs/installation.rst +165 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/links.inc +1 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/maintaining.rst +21 -21
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/starting.rst +18 -18
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/understanding/data.rst +4 -1
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/understanding/datagrabber.rst +8 -8
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/understanding/datareader.rst +4 -4
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/understanding/index.rst +7 -7
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/understanding/marker.rst +3 -3
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/understanding/pipeline.rst +7 -7
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/understanding/preprocess.rst +72 -6
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/understanding/storage.rst +3 -3
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/using/codeless.rst +37 -36
- junifer-0.0.4/docs/using/index.rst +35 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/using/masks.rst +3 -4
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/using/queueing.rst +17 -13
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/using/running.rst +49 -1
- junifer-0.0.4/docs/whats_new.rst +603 -0
- junifer-0.0.4/examples/run_compute_parcel_mean.py +57 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/examples/run_datagrabber_bids_datalad.py +8 -2
- junifer-0.0.4/examples/yamls/partly_cloudy_agg_mean_tian.yml +16 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/ignore_words.txt +2 -0
- junifer-0.0.4/junifer/_version.py +16 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/api/cli.py +162 -17
- junifer-0.0.4/junifer/api/functions.py +363 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/api/parser.py +24 -0
- junifer-0.0.4/junifer/api/queue_context/__init__.py +8 -0
- junifer-0.0.4/junifer/api/queue_context/gnu_parallel_local_adapter.py +258 -0
- junifer-0.0.4/junifer/api/queue_context/htcondor_adapter.py +365 -0
- junifer-0.0.4/junifer/api/queue_context/queue_context_adapter.py +60 -0
- junifer-0.0.4/junifer/api/queue_context/tests/test_gnu_parallel_local_adapter.py +192 -0
- junifer-0.0.4/junifer/api/queue_context/tests/test_htcondor_adapter.py +257 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/api/res/afni/run_afni_docker.sh +6 -6
- junifer-0.0.4/junifer/api/res/ants/ResampleImage +3 -0
- junifer-0.0.4/junifer/api/res/ants/antsApplyTransforms +3 -0
- junifer-0.0.4/junifer/api/res/ants/antsApplyTransformsToPoints +3 -0
- junifer-0.0.4/junifer/api/res/ants/run_ants_docker.sh +39 -0
- junifer-0.0.4/junifer/api/res/fsl/applywarp +3 -0
- junifer-0.0.4/junifer/api/res/fsl/flirt +3 -0
- junifer-0.0.4/junifer/api/res/fsl/img2imgcoord +3 -0
- junifer-0.0.4/junifer/api/res/fsl/run_fsl_docker.sh +39 -0
- junifer-0.0.4/junifer/api/res/fsl/std2imgcoord +3 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/api/res/run_conda.sh +4 -4
- junifer-0.0.4/junifer/api/res/run_venv.sh +22 -0
- junifer-0.0.4/junifer/api/tests/data/partly_cloudy_agg_mean_tian.yml +16 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/api/tests/test_api_utils.py +21 -3
- junifer-0.0.4/junifer/api/tests/test_cli.py +329 -0
- junifer-0.0.4/junifer/api/tests/test_functions.py +639 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/api/tests/test_parser.py +1 -1
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/configs/juseless/datagrabbers/aomic_id1000_vbm.py +6 -1
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/configs/juseless/datagrabbers/camcan_vbm.py +6 -1
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/configs/juseless/datagrabbers/ixi_vbm.py +6 -1
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/configs/juseless/datagrabbers/tests/test_ucla.py +8 -8
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/configs/juseless/datagrabbers/ucla.py +44 -26
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/configs/juseless/datagrabbers/ukb_vbm.py +6 -1
- junifer-0.0.4/junifer/data/VOIs/meta/AutobiographicalMemory_VOIs.txt +23 -0
- junifer-0.0.4/junifer/data/VOIs/meta/Power2013_MNI_VOIs.tsv +264 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/__init__.py +4 -0
- junifer-0.0.4/junifer/data/coordinates.py +417 -0
- junifer-0.0.4/junifer/data/masks.py +699 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/parcellations.py +621 -188
- junifer-0.0.4/junifer/data/template_spaces.py +190 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/tests/test_coordinates.py +34 -3
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/tests/test_data_utils.py +1 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/tests/test_masks.py +202 -86
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/tests/test_parcellations.py +266 -55
- junifer-0.0.4/junifer/data/tests/test_template_spaces.py +104 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/utils.py +4 -2
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datagrabber/__init__.py +1 -0
- junifer-0.0.4/junifer/datagrabber/aomic/id1000.py +167 -0
- junifer-0.0.4/junifer/datagrabber/aomic/piop1.py +250 -0
- junifer-0.0.4/junifer/datagrabber/aomic/piop2.py +234 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datagrabber/aomic/tests/test_id1000.py +27 -27
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datagrabber/aomic/tests/test_piop1.py +27 -27
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datagrabber/aomic/tests/test_piop2.py +27 -27
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datagrabber/base.py +62 -10
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datagrabber/datalad_base.py +0 -2
- junifer-0.0.4/junifer/datagrabber/dmcc13_benchmark.py +372 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datagrabber/hcp1200/datalad_hcp1200.py +5 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datagrabber/hcp1200/hcp1200.py +30 -13
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datagrabber/pattern.py +133 -27
- junifer-0.0.4/junifer/datagrabber/pattern_datalad.py +151 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datagrabber/tests/test_base.py +57 -6
- junifer-0.0.4/junifer/datagrabber/tests/test_datagrabber_utils.py +218 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datagrabber/tests/test_datalad_base.py +0 -6
- junifer-0.0.4/junifer/datagrabber/tests/test_dmcc13_benchmark.py +256 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datagrabber/tests/test_multiple.py +43 -10
- junifer-0.0.4/junifer/datagrabber/tests/test_pattern.py +255 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datagrabber/tests/test_pattern_datalad.py +44 -25
- junifer-0.0.4/junifer/datagrabber/utils.py +230 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datareader/default.py +36 -10
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/external/nilearn/junifer_nifti_spheres_masker.py +6 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/base.py +25 -16
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/collection.py +35 -16
- junifer-0.0.4/junifer/markers/complexity/__init__.py +27 -0
- junifer-0.0.4/junifer/markers/complexity/complexity_base.py +149 -0
- junifer-0.0.4/junifer/markers/complexity/hurst_exponent.py +136 -0
- junifer-0.0.4/junifer/markers/complexity/multiscale_entropy_auc.py +140 -0
- junifer-0.0.4/junifer/markers/complexity/perm_entropy.py +132 -0
- junifer-0.0.4/junifer/markers/complexity/range_entropy.py +136 -0
- junifer-0.0.4/junifer/markers/complexity/range_entropy_auc.py +145 -0
- junifer-0.0.4/junifer/markers/complexity/sample_entropy.py +134 -0
- junifer-0.0.4/junifer/markers/complexity/tests/test_complexity_base.py +19 -0
- junifer-0.0.4/junifer/markers/complexity/tests/test_hurst_exponent.py +69 -0
- junifer-0.0.4/junifer/markers/complexity/tests/test_multiscale_entropy_auc.py +68 -0
- junifer-0.0.4/junifer/markers/complexity/tests/test_perm_entropy.py +68 -0
- junifer-0.0.4/junifer/markers/complexity/tests/test_range_entropy.py +69 -0
- junifer-0.0.4/junifer/markers/complexity/tests/test_range_entropy_auc.py +69 -0
- junifer-0.0.4/junifer/markers/complexity/tests/test_sample_entropy.py +68 -0
- junifer-0.0.4/junifer/markers/complexity/tests/test_weighted_perm_entropy.py +68 -0
- junifer-0.0.4/junifer/markers/complexity/weighted_perm_entropy.py +133 -0
- junifer-0.0.4/junifer/markers/falff/_afni_falff.py +153 -0
- junifer-0.0.4/junifer/markers/falff/_junifer_falff.py +142 -0
- junifer-0.0.4/junifer/markers/falff/falff_base.py +193 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/falff/falff_parcels.py +61 -45
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/falff/falff_spheres.py +64 -48
- junifer-0.0.4/junifer/markers/falff/tests/test_falff_parcels.py +126 -0
- junifer-0.0.4/junifer/markers/falff/tests/test_falff_spheres.py +129 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/functional_connectivity/crossparcellation_functional_connectivity.py +1 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/functional_connectivity/edge_functional_connectivity_parcels.py +1 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/functional_connectivity/functional_connectivity_base.py +1 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/functional_connectivity/tests/test_crossparcellation_functional_connectivity.py +46 -44
- junifer-0.0.4/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_parcels.py +55 -0
- junifer-0.0.4/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_spheres.py +61 -0
- junifer-0.0.4/junifer/markers/functional_connectivity/tests/test_functional_connectivity_parcels.py +88 -0
- junifer-0.0.4/junifer/markers/functional_connectivity/tests/test_functional_connectivity_spheres.py +147 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/parcel_aggregation.py +60 -38
- junifer-0.0.4/junifer/markers/reho/_afni_reho.py +192 -0
- junifer-0.0.4/junifer/markers/reho/_junifer_reho.py +281 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/reho/reho_base.py +69 -34
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/reho/reho_parcels.py +26 -16
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/reho/reho_spheres.py +23 -9
- junifer-0.0.4/junifer/markers/reho/tests/test_reho_parcels.py +119 -0
- junifer-0.0.4/junifer/markers/reho/tests/test_reho_spheres.py +120 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/sphere_aggregation.py +54 -9
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/temporal_snr/temporal_snr_base.py +1 -0
- junifer-0.0.4/junifer/markers/temporal_snr/tests/test_temporal_snr_parcels.py +55 -0
- junifer-0.0.4/junifer/markers/temporal_snr/tests/test_temporal_snr_spheres.py +59 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/tests/test_collection.py +43 -42
- junifer-0.0.4/junifer/markers/tests/test_ets_rss.py +72 -0
- junifer-0.0.4/junifer/markers/tests/test_parcel_aggregation.py +743 -0
- junifer-0.0.4/junifer/markers/tests/test_sphere_aggregation.py +288 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/utils.py +2 -40
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/onthefly/read_transform.py +13 -6
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/pipeline/__init__.py +1 -0
- junifer-0.0.4/junifer/pipeline/pipeline_step_mixin.py +229 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/pipeline/registry.py +17 -0
- junifer-0.0.4/junifer/pipeline/singleton.py +45 -0
- junifer-0.0.4/junifer/pipeline/tests/test_pipeline_step_mixin.py +260 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/pipeline/tests/test_update_meta_mixin.py +1 -0
- junifer-0.0.4/junifer/pipeline/tests/test_workdir_manager.py +104 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/pipeline/update_meta_mixin.py +8 -2
- junifer-0.0.4/junifer/pipeline/utils.py +247 -0
- junifer-0.0.4/junifer/pipeline/workdir_manager.py +246 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/preprocess/__init__.py +3 -0
- junifer-0.0.4/junifer/preprocess/ants/__init__.py +4 -0
- junifer-0.0.4/junifer/preprocess/ants/ants_apply_transforms_warper.py +185 -0
- junifer-0.0.4/junifer/preprocess/ants/tests/test_ants_apply_transforms_warper.py +56 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/preprocess/base.py +96 -69
- junifer-0.0.4/junifer/preprocess/bold_warper.py +265 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/preprocess/confounds/fmriprep_confound_remover.py +91 -134
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/preprocess/confounds/tests/test_fmriprep_confound_remover.py +106 -111
- junifer-0.0.4/junifer/preprocess/fsl/__init__.py +4 -0
- junifer-0.0.4/junifer/preprocess/fsl/apply_warper.py +179 -0
- junifer-0.0.4/junifer/preprocess/fsl/tests/test_apply_warper.py +45 -0
- junifer-0.0.4/junifer/preprocess/tests/test_bold_warper.py +159 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/preprocess/tests/test_preprocess_base.py +6 -6
- junifer-0.0.4/junifer/preprocess/warping/__init__.py +6 -0
- junifer-0.0.4/junifer/preprocess/warping/_ants_warper.py +167 -0
- junifer-0.0.4/junifer/preprocess/warping/_fsl_warper.py +109 -0
- junifer-0.0.4/junifer/preprocess/warping/space_warper.py +213 -0
- junifer-0.0.4/junifer/preprocess/warping/tests/test_space_warper.py +198 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/stats.py +18 -4
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/storage/base.py +9 -1
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/storage/hdf5.py +8 -3
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/storage/pandas_base.py +2 -1
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/storage/sqlite.py +1 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/storage/tests/test_hdf5.py +2 -1
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/storage/tests/test_sqlite.py +8 -8
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/storage/tests/test_utils.py +6 -6
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/storage/utils.py +1 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/testing/datagrabbers.py +11 -7
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/testing/utils.py +1 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/tests/test_stats.py +2 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/utils/__init__.py +1 -0
- junifer-0.0.4/junifer/utils/helpers.py +53 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/utils/logging.py +14 -3
- junifer-0.0.4/junifer/utils/tests/test_helpers.py +35 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer.egg-info/PKG-INFO +65 -12
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer.egg-info/SOURCES.txt +69 -28
- junifer-0.0.4/junifer.egg-info/requires.txt +47 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/pyproject.toml +46 -28
- junifer-0.0.4/tools/create_dmcc13_benchmark_example_dataset.py +163 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/tools/create_hcp1200_example_dataset.py +33 -12
- {junifer-0.0.3.dev186 → junifer-0.0.4}/tox.ini +6 -4
- junifer-0.0.3.dev186/conda-env.yml +0 -33
- junifer-0.0.3.dev186/docs/api/markers.rst +0 -6
- junifer-0.0.3.dev186/docs/changes/newsfragments/132.change +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/132.enh +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/173.feature +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/184.feature +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/220.doc +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/222.change +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/222.enh +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/223.bugfix +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/223.enh +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/225.feature +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/226.enh +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/227.enh +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/228.misc +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/229.misc +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/230.misc +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/232.misc +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/234.enh +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/235.bugfix +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/236.change +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/236.enh +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/237.feature +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/238.misc +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/241.misc +0 -1
- junifer-0.0.3.dev186/docs/changes/newsfragments/242.doc +0 -1
- junifer-0.0.3.dev186/docs/extending/extension.rst +0 -34
- junifer-0.0.3.dev186/docs/extending/index.rst +0 -30
- junifer-0.0.3.dev186/docs/installation.rst +0 -121
- junifer-0.0.3.dev186/docs/using/index.rst +0 -35
- junifer-0.0.3.dev186/docs/whats_new.rst +0 -289
- junifer-0.0.3.dev186/examples/run_compute_parcel_mean.py +0 -61
- junifer-0.0.3.dev186/junifer/_version.py +0 -4
- junifer-0.0.3.dev186/junifer/api/functions.py +0 -695
- junifer-0.0.3.dev186/junifer/api/tests/test_cli.py +0 -106
- junifer-0.0.3.dev186/junifer/api/tests/test_functions.py +0 -867
- junifer-0.0.3.dev186/junifer/data/coordinates.py +0 -150
- junifer-0.0.3.dev186/junifer/data/masks.py +0 -367
- junifer-0.0.3.dev186/junifer/datagrabber/aomic/id1000.py +0 -126
- junifer-0.0.3.dev186/junifer/datagrabber/aomic/piop1.py +0 -187
- junifer-0.0.3.dev186/junifer/datagrabber/aomic/piop2.py +0 -171
- junifer-0.0.3.dev186/junifer/datagrabber/pattern_datalad.py +0 -53
- junifer-0.0.3.dev186/junifer/datagrabber/tests/test_datagrabber_utils.py +0 -90
- junifer-0.0.3.dev186/junifer/datagrabber/tests/test_pattern.py +0 -308
- junifer-0.0.3.dev186/junifer/datagrabber/utils.py +0 -95
- junifer-0.0.3.dev186/junifer/markers/falff/falff_base.py +0 -186
- junifer-0.0.3.dev186/junifer/markers/falff/falff_estimator.py +0 -334
- junifer-0.0.3.dev186/junifer/markers/falff/tests/test_falff_estimator.py +0 -238
- junifer-0.0.3.dev186/junifer/markers/falff/tests/test_falff_parcels.py +0 -158
- junifer-0.0.3.dev186/junifer/markers/falff/tests/test_falff_spheres.py +0 -164
- junifer-0.0.3.dev186/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_parcels.py +0 -60
- junifer-0.0.3.dev186/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_spheres.py +0 -73
- junifer-0.0.3.dev186/junifer/markers/functional_connectivity/tests/test_functional_connectivity_parcels.py +0 -96
- junifer-0.0.3.dev186/junifer/markers/functional_connectivity/tests/test_functional_connectivity_spheres.py +0 -133
- junifer-0.0.3.dev186/junifer/markers/reho/reho_estimator.py +0 -515
- junifer-0.0.3.dev186/junifer/markers/reho/tests/test_reho_estimator.py +0 -260
- junifer-0.0.3.dev186/junifer/markers/reho/tests/test_reho_parcels.py +0 -118
- junifer-0.0.3.dev186/junifer/markers/reho/tests/test_reho_spheres.py +0 -118
- junifer-0.0.3.dev186/junifer/markers/temporal_snr/tests/test_temporal_snr_parcels.py +0 -54
- junifer-0.0.3.dev186/junifer/markers/temporal_snr/tests/test_temporal_snr_spheres.py +0 -63
- junifer-0.0.3.dev186/junifer/markers/tests/test_ets_rss.py +0 -80
- junifer-0.0.3.dev186/junifer/markers/tests/test_parcel_aggregation.py +0 -624
- junifer-0.0.3.dev186/junifer/markers/tests/test_sphere_aggregation.py +0 -236
- junifer-0.0.3.dev186/junifer/pipeline/pipeline_step_mixin.py +0 -165
- junifer-0.0.3.dev186/junifer/pipeline/tests/test_pipeline_step_mixin.py +0 -172
- junifer-0.0.3.dev186/junifer/pipeline/utils.py +0 -108
- junifer-0.0.3.dev186/junifer.egg-info/requires.txt +0 -30
- {junifer-0.0.3.dev186 → junifer-0.0.4}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/.github/ISSUE_TEMPLATE/dataset-request.yml +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/.github/ISSUE_TEMPLATE/documention-request.yml +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/.github/ISSUE_TEMPLATE/feature-request.yml +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/.github/ISSUE_TEMPLATE/marker-request.yml +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/.github/pull_request_template.md +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/.gitignore +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/.gitmodules +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/AUTHORS.rst +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/LICENSE.md +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/codecov.yml +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/Makefile +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/_static/css/custom.css +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/_static/js/custom.js +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/_templates/versions.html +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/api/configs.rst +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/api/datagrabbers.rst +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/api/datareaders.rst +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/api/index.rst +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/api/nilearn.rst +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/api/onthefly.rst +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/api/pipeline.rst +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/api/preprocessing.rst +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/api/stats.rst +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/api/storage.rst +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/api/testing.rst +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/api/utils.rst +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/changes/newsfragments/.gitignore +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/faq.rst +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/help.rst +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/images/junifer_logo.png +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/redirect.html +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/docs/sphinxext/gh_substitutions.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/examples/README.rst +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/examples/norun_hcpfc_pearson.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/examples/norun_ukbvm_gmd.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/examples/run_ets_rss_marker.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/examples/run_junifer_julearn.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/examples/run_run_gmd_mean.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/examples/yamls/gmd_mean.yaml +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/examples/yamls/gmd_mean_htcondor.yaml +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/examples/yamls/ukb_gmd_mean.yaml +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/api/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/api/decorators.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/api/res/afni/3dAFNItoNIFTI +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/api/res/afni/3dRSFC +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/api/res/afni/3dReHo +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/api/res/afni/afni +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/api/tests/data/gmd_mean.yaml +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/api/tests/data/gmd_mean_htcondor.yaml +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/api/utils.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/configs/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/configs/juseless/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/configs/juseless/datagrabbers/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/configs/juseless/datagrabbers/tests/test_aomic_id1000_vbm.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/configs/juseless/datagrabbers/tests/test_camcan_vbm.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/configs/juseless/datagrabbers/tests/test_ixi_vbm.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/configs/juseless/datagrabbers/tests/test_ukb_vbm.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/VOIs/meta/CogAC_VOIs.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/VOIs/meta/CogAR_VOIs.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/VOIs/meta/DMNBuckner_VOIs.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/VOIs/meta/Dosenbach2010_MNI_VOIs.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/VOIs/meta/Empathy_VOIs.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/VOIs/meta/Motor_VOIs.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/VOIs/meta/MultiTask_VOIs.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/VOIs/meta/PhysioStress_VOIs.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/VOIs/meta/Power2011_MNI_VOIs.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/VOIs/meta/Rew_VOIs.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/VOIs/meta/Somatosensory_VOIs.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/VOIs/meta/ToM_VOIs.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/VOIs/meta/VigAtt_VOIs.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/VOIs/meta/WM_VOIs.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/VOIs/meta/eMDN_VOIs.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/VOIs/meta/eSAD_VOIs.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/VOIs/meta/extDMN_VOIs.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/masks/vickery-patil/CAT12_IXI555_MNI152_TMP_GS_GMprob0.2_clean.nii.gz +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/masks/vickery-patil/CAT12_IXI555_MNI152_TMP_GS_GMprob0.2_clean_3mm.nii.gz +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/data/masks/vickery-patil/GMprob0.2_cortex_3mm_NA_rm.nii.gz +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datagrabber/aomic/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datagrabber/hcp1200/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datagrabber/hcp1200/tests/test_hcp1200.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datagrabber/multiple.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datareader/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/datareader/tests/test_default_reader.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/external/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/external/h5io/h5io/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/external/h5io/h5io/_h5io.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/external/h5io/h5io/_version.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/external/h5io/h5io/chunked_array.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/external/h5io/h5io/chunked_list.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/external/nilearn/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/external/nilearn/tests/test_junifer_nifti_spheres_masker.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/ets_rss.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/falff/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/functional_connectivity/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/functional_connectivity/edge_functional_connectivity_spheres.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/functional_connectivity/functional_connectivity_parcels.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/functional_connectivity/functional_connectivity_spheres.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_base.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/reho/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/temporal_snr/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/temporal_snr/temporal_snr_parcels.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/temporal_snr/temporal_snr_spheres.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/temporal_snr/tests/test_temporal_snr_base.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/tests/test_marker_utils.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/markers/tests/test_markers_base.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/onthefly/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/onthefly/tests/test_read_transform.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/pipeline/tests/test_registry.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/preprocess/confounds/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/storage/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/storage/tests/test_pandas_base.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/storage/tests/test_storage_base.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/testing/__init__.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/testing/data/sub-0001_task-anticipation_acq-seq_desc-confounds_regressors.tsv +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/testing/registry.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/testing/tests/test_oasisvmbtesting_datagrabber.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/testing/tests/test_partlycloudytesting_datagrabber.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/testing/tests/test_spmauditory_datagrabber.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/testing/tests/test_testing_registry.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/tests/test_main.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/utils/fs.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/utils/tests/test_fs.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer/utils/tests/test_logging.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer.egg-info/dependency_links.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer.egg-info/entry_points.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/junifer.egg-info/top_level.txt +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/setup.cfg +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/setup.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/tools/create_aomic1000_example_dataset.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/tools/create_aomicpiop1_example_dataset.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/tools/create_aomicpiop2_example_dataset.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/tools/create_bids_example_dataset.py +0 -0
- {junifer-0.0.3.dev186 → junifer-0.0.4}/tools/create_bids_example_dataset_sessions.py +0 -0
@@ -15,7 +15,7 @@ jobs:
|
|
15
15
|
strategy:
|
16
16
|
fail-fast: false
|
17
17
|
matrix:
|
18
|
-
python-version: ['3.8', '3.9', '3.10', '3.11']
|
18
|
+
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12']
|
19
19
|
steps:
|
20
20
|
- run: 'echo "No build required"'
|
21
21
|
- name: Create mock coverage.xml file
|
@@ -40,11 +40,12 @@ jobs:
|
|
40
40
|
echo '</package>' >> coverage.xml
|
41
41
|
echo '</packages>' >> coverage.xml
|
42
42
|
echo '</coverage>' >> coverage.xml
|
43
|
-
if: matrix.python-version == 3.
|
43
|
+
if: matrix.python-version == 3.11
|
44
44
|
- name: Upload mock coverage to Codecov
|
45
|
-
uses: codecov/codecov-action@
|
45
|
+
uses: codecov/codecov-action@v4
|
46
46
|
with:
|
47
47
|
token: ${{ secrets.CODECOV_TOKEN }}
|
48
|
-
|
48
|
+
# Allow coverage upload failure
|
49
|
+
fail_ci_if_error: false
|
49
50
|
flags: docs
|
50
|
-
if: success() && matrix.python-version == 3.
|
51
|
+
if: success() && matrix.python-version == 3.11
|
@@ -16,7 +16,7 @@ jobs:
|
|
16
16
|
strategy:
|
17
17
|
fail-fast: false
|
18
18
|
matrix:
|
19
|
-
python-version: ['3.8', '3.9', '3.10', '3.11']
|
19
|
+
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12']
|
20
20
|
|
21
21
|
steps:
|
22
22
|
- name: Set up system
|
@@ -29,11 +29,11 @@ jobs:
|
|
29
29
|
git config --global user.email "runner@github.com"
|
30
30
|
git config --global user.name "GitHub Runner"
|
31
31
|
- name: Checkout repository
|
32
|
-
uses: actions/checkout@
|
32
|
+
uses: actions/checkout@v4
|
33
33
|
with:
|
34
34
|
submodules: true
|
35
35
|
- name: Set up Python ${{ matrix.python-version }}
|
36
|
-
uses: actions/setup-python@
|
36
|
+
uses: actions/setup-python@v5
|
37
37
|
with:
|
38
38
|
python-version: ${{ matrix.python-version }}
|
39
39
|
- name: Install Python dependencies
|
@@ -65,18 +65,53 @@ jobs:
|
|
65
65
|
curl -O https://afni.nimh.nih.gov/pub/dist/bin/misc/@update.afni.binaries
|
66
66
|
sudo tcsh @update.afni.binaries -package linux_ubuntu_16_64 -bindir /afni
|
67
67
|
echo "/afni" >> $GITHUB_PATH
|
68
|
-
if: matrix.python-version == 3.
|
68
|
+
if: matrix.python-version == 3.11
|
69
69
|
- name: Check AFNI
|
70
70
|
run: |
|
71
71
|
echo "Using AFNI : $(afni --version)"
|
72
|
-
if: matrix.python-version == 3.
|
72
|
+
if: matrix.python-version == 3.11
|
73
|
+
- name: Install ANTs
|
74
|
+
run: |
|
75
|
+
sudo apt-get install -y -qq unzip
|
76
|
+
curl -fsSL -o ants.zip https://github.com/ANTsX/ANTs/releases/download/v2.5.1/ants-2.5.1-ubuntu-22.04-X64-gcc.zip
|
77
|
+
unzip ants.zip -d /opt
|
78
|
+
mv /opt/ants-2.5.1/bin/* /opt/ants-2.5.1
|
79
|
+
rm ants.zip
|
80
|
+
echo "/opt/ants-2.5.1" >> $GITHUB_PATH
|
81
|
+
if: matrix.python-version == 3.11
|
82
|
+
- name: Check ANTs
|
83
|
+
run: |
|
84
|
+
echo "Using ANTs : $(antsRegistration --version)"
|
85
|
+
if: matrix.python-version == 3.11
|
86
|
+
- name: Install FSL
|
87
|
+
run: |
|
88
|
+
sudo apt-get install -y -qq python3
|
89
|
+
curl -fsSL https://fsl.fmrib.ox.ac.uk/fsldownloads/fslconda/releases/fslinstaller.py | python3 - -d /opt/fsl-6.0.6.4 -V 6.0.6.4
|
90
|
+
FSLOUTPUTTYPE="NIFTI_GZ"
|
91
|
+
FSLMULTIFILEQUIT="TRUE"
|
92
|
+
FSLTCLSH="/opt/fsl-6.0.6.4/bin/fsltclsh"
|
93
|
+
FSLWISH="/opt/fsl-6.0.6.4/bin/fslwish"
|
94
|
+
FSLLOCKDIR=""
|
95
|
+
FSLMACHINELIST=""
|
96
|
+
FSLREMOTECALL=""
|
97
|
+
FSLGECUDAQ="cuda.q"
|
98
|
+
echo "/opt/fsl-6.0.6.4" >> $GITHUB_PATH
|
99
|
+
if: matrix.python-version == 3.11
|
100
|
+
# Bypass FSL installation failure
|
101
|
+
continue-on-error: true
|
102
|
+
- name: Check FSL
|
103
|
+
run: |
|
104
|
+
echo "Using FSL : $(flirt -version)"
|
105
|
+
if: matrix.python-version == 3.11
|
106
|
+
# Bypass FSL installation failure
|
107
|
+
continue-on-error: true
|
73
108
|
- name: Test with tox
|
74
109
|
run: |
|
75
110
|
tox
|
76
111
|
- name: Upload coverage to Codecov
|
77
|
-
uses: codecov/codecov-action@
|
112
|
+
uses: codecov/codecov-action@v4
|
78
113
|
with:
|
79
114
|
token: ${{ secrets.CODECOV_TOKEN }}
|
80
115
|
fail_ci_if_error: true
|
81
116
|
flags: junifer
|
82
|
-
if: success() && matrix.python-version == 3.
|
117
|
+
if: success() && matrix.python-version == 3.11
|
@@ -20,14 +20,14 @@ jobs:
|
|
20
20
|
runs-on: ubuntu-latest
|
21
21
|
steps:
|
22
22
|
- name: Checkout source
|
23
|
-
uses: actions/checkout@
|
23
|
+
uses: actions/checkout@v4
|
24
24
|
with:
|
25
25
|
fetch-depth: 0
|
26
26
|
submodules: true
|
27
|
-
- name: Set up Python 3.
|
28
|
-
uses: actions/setup-python@
|
27
|
+
- name: Set up Python 3.11
|
28
|
+
uses: actions/setup-python@v5
|
29
29
|
with:
|
30
|
-
python-version: '3.
|
30
|
+
python-version: '3.11'
|
31
31
|
- name: Check for sudo
|
32
32
|
shell: bash
|
33
33
|
run: |
|
@@ -39,11 +39,25 @@ jobs:
|
|
39
39
|
$SUDO apt-get update -qq
|
40
40
|
$SUDO apt-get install git-annex-standalone
|
41
41
|
python -m pip install --upgrade pip setuptools wheel
|
42
|
-
python -m pip install -e .[docs]
|
42
|
+
python -m pip install -e ".[docs,neurokit2]"
|
43
43
|
- name: Configure git for datalad
|
44
44
|
run: |
|
45
45
|
git config --global user.email "runner@github.com"
|
46
46
|
git config --global user.name "GITHUB CI Runner"
|
47
|
+
- name: Install ANTs
|
48
|
+
run: |
|
49
|
+
echo "++ Add universe repo"
|
50
|
+
sudo add-apt-repository -y universe
|
51
|
+
|
52
|
+
echo "++ Update package manager info"
|
53
|
+
sudo apt-get update -qq
|
54
|
+
|
55
|
+
echo "++ Downloading ANTs"
|
56
|
+
curl -fsSL -o ants.zip https://github.com/ANTsX/ANTs/releases/download/v2.5.1/ants-2.5.1-ubuntu-22.04-X64-gcc.zip
|
57
|
+
unzip ants.zip -d /opt
|
58
|
+
mv /opt/ants-2.5.1/bin/* /opt/ants-2.5.1
|
59
|
+
rm ants.zip
|
60
|
+
echo "/opt/ants-2.5.1" >> $GITHUB_PATH
|
47
61
|
- name: Test build docs
|
48
62
|
run: |
|
49
63
|
BUILDDIR=_build/main make -C docs/ local
|
@@ -14,15 +14,15 @@ jobs:
|
|
14
14
|
runs-on: ubuntu-latest
|
15
15
|
steps:
|
16
16
|
- name: Checkout source
|
17
|
-
uses: actions/checkout@
|
17
|
+
uses: actions/checkout@v4
|
18
18
|
with:
|
19
19
|
# require all of history to see all tagged versions' docs
|
20
20
|
fetch-depth: 0
|
21
21
|
submodules: true
|
22
|
-
- name: Set up Python 3.
|
23
|
-
uses: actions/setup-python@
|
22
|
+
- name: Set up Python 3.11
|
23
|
+
uses: actions/setup-python@v5
|
24
24
|
with:
|
25
|
-
python-version: '3.
|
25
|
+
python-version: '3.11'
|
26
26
|
- name: Check for sudo
|
27
27
|
shell: bash
|
28
28
|
run: |
|
@@ -34,16 +34,30 @@ jobs:
|
|
34
34
|
$SUDO apt-get update -qq
|
35
35
|
$SUDO apt-get install git-annex-standalone
|
36
36
|
python -m pip install --upgrade pip setuptools wheel
|
37
|
-
python -m pip install -e .[docs]
|
37
|
+
python -m pip install -e ".[docs,neurokit2]"
|
38
38
|
python -m pip install git+https://github.com/dls-controls/sphinx-multiversion@only-arg
|
39
39
|
- name: Configure git for datalad
|
40
40
|
run: |
|
41
41
|
git config --global user.email "runner@github.com"
|
42
42
|
git config --global user.name "GITHUB CI Runner"
|
43
|
+
- name: Install ANTs
|
44
|
+
run: |
|
45
|
+
echo "++ Add universe repo"
|
46
|
+
sudo add-apt-repository -y universe
|
47
|
+
|
48
|
+
echo "++ Update package manager info"
|
49
|
+
sudo apt-get update -qq
|
50
|
+
|
51
|
+
echo "++ Downloading ANTs"
|
52
|
+
curl -fsSL -o ants.zip https://github.com/ANTsX/ANTs/releases/download/v2.5.1/ants-2.5.1-ubuntu-22.04-X64-gcc.zip
|
53
|
+
unzip ants.zip -d /opt
|
54
|
+
mv /opt/ants-2.5.1/bin/* /opt/ants-2.5.1
|
55
|
+
rm ants.zip
|
56
|
+
echo "/opt/ants-2.5.1" >> $GITHUB_PATH
|
43
57
|
- name: Checkout gh-pages
|
44
58
|
# As we already did a deploy of gh-pages above, it is guaranteed to be there
|
45
59
|
# so check it out so we can selectively build docs below
|
46
|
-
uses: actions/checkout@
|
60
|
+
uses: actions/checkout@v4
|
47
61
|
with:
|
48
62
|
ref: gh-pages
|
49
63
|
path: docs/_build
|
@@ -8,16 +8,16 @@ jobs:
|
|
8
8
|
lint:
|
9
9
|
runs-on: ubuntu-latest
|
10
10
|
steps:
|
11
|
-
- uses: actions/checkout@
|
11
|
+
- uses: actions/checkout@v4
|
12
12
|
- name: Install Python
|
13
|
-
uses: actions/setup-python@
|
13
|
+
uses: actions/setup-python@v5
|
14
14
|
with:
|
15
15
|
python-version: "3.11"
|
16
16
|
- name: Install dependencies
|
17
17
|
run: |
|
18
18
|
python -m pip install --upgrade pip
|
19
|
-
python -m pip install tox ruff
|
19
|
+
python -m pip install tox "ruff>=0.1.0"
|
20
20
|
- name: Run ruff
|
21
|
-
run: ruff check --format=github .
|
21
|
+
run: ruff check --output-format=github .
|
22
22
|
- name: Run codespell
|
23
23
|
run: tox -e codespell
|
@@ -11,25 +11,20 @@ jobs:
|
|
11
11
|
runs-on: ubuntu-latest
|
12
12
|
steps:
|
13
13
|
- name: Checkout source
|
14
|
-
uses: actions/checkout@
|
14
|
+
uses: actions/checkout@v4
|
15
15
|
with:
|
16
16
|
fetch-depth: 0
|
17
17
|
submodules: true
|
18
|
-
- name: Set up Python 3.
|
19
|
-
uses: actions/setup-python@
|
18
|
+
- name: Set up Python 3.11
|
19
|
+
uses: actions/setup-python@v5
|
20
20
|
with:
|
21
|
-
python-version: '3.
|
21
|
+
python-version: '3.11'
|
22
22
|
- name: Install build
|
23
23
|
run:
|
24
24
|
pip install build
|
25
25
|
- name: Build a binary wheel and a source tarball
|
26
26
|
run:
|
27
27
|
python -m build --sdist --wheel --outdir dist/ .
|
28
|
-
# - name: Publish distribution 📦 to Test PyPI
|
29
|
-
# uses: pypa/gh-action-pypi-publish@master
|
30
|
-
# with:
|
31
|
-
# password: ${{ secrets.testpypi_token }}
|
32
|
-
# repository_url: https://test.pypi.org/legacy/
|
33
28
|
- name: Publish distribution 📦 to PyPI
|
34
29
|
uses: pypa/gh-action-pypi-publish@release/v1
|
35
30
|
with:
|
@@ -4,7 +4,7 @@ ci:
|
|
4
4
|
|
5
5
|
repos:
|
6
6
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
7
|
-
rev: v4.
|
7
|
+
rev: v4.5.0
|
8
8
|
hooks:
|
9
9
|
- id: check-ast
|
10
10
|
- id: check-docstring-first
|
@@ -17,23 +17,24 @@ repos:
|
|
17
17
|
- id: trailing-whitespace
|
18
18
|
args: [--markdown-linebreak-ext=md]
|
19
19
|
- repo: https://github.com/abravalheri/validate-pyproject
|
20
|
-
rev: v0.
|
20
|
+
rev: v0.16
|
21
21
|
hooks:
|
22
22
|
- id: validate-pyproject
|
23
23
|
- repo: https://github.com/psf/black
|
24
|
-
rev:
|
24
|
+
rev: 24.1.1
|
25
25
|
hooks:
|
26
26
|
- id: black
|
27
27
|
exclude: ^(docs/|examples/|tools/)
|
28
28
|
args: [--check]
|
29
|
-
- repo: https://github.com/
|
30
|
-
rev: v0.
|
29
|
+
- repo: https://github.com/astral-sh/ruff-pre-commit
|
30
|
+
rev: v0.1.15
|
31
31
|
hooks:
|
32
32
|
- id: ruff
|
33
|
+
types_or: [python, jupyter]
|
33
34
|
exclude: ^(__init__.py)
|
34
|
-
args: [--format, grouped, --show-fixes]
|
35
|
+
args: [--output-format, grouped, --show-fixes]
|
35
36
|
- repo: https://github.com/codespell-project/codespell
|
36
|
-
rev: v2.2.
|
37
|
+
rev: v2.2.6
|
37
38
|
hooks:
|
38
39
|
- id: codespell
|
39
40
|
exclude: ^(.github/|docs/)
|
@@ -1,13 +1,14 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: junifer
|
3
|
-
Version: 0.0.
|
3
|
+
Version: 0.0.4
|
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>
|
7
7
|
License: AGPL-3.0-only
|
8
|
-
Project-URL:
|
9
|
-
Project-URL:
|
10
|
-
Project-URL:
|
8
|
+
Project-URL: Changelog, https://juaml.github.io/junifer/main/whats_new.html
|
9
|
+
Project-URL: Documentation, https://juaml.github.io/junifer
|
10
|
+
Project-URL: Homepage, https://juaml.github.io/junifer
|
11
|
+
Project-URL: Source, https://github.com/juaml/junifer
|
11
12
|
Keywords: neuroimaging
|
12
13
|
Classifier: Development Status :: 4 - Beta
|
13
14
|
Classifier: Intended Audience :: Science/Research
|
@@ -22,13 +23,48 @@ Classifier: Programming Language :: Python :: 3.8
|
|
22
23
|
Classifier: Programming Language :: Python :: 3.9
|
23
24
|
Classifier: Programming Language :: Python :: 3.10
|
24
25
|
Classifier: Programming Language :: Python :: 3.11
|
26
|
+
Classifier: Programming Language :: Python :: 3.12
|
25
27
|
Requires-Python: >=3.8
|
26
28
|
Description-Content-Type: text/markdown
|
27
|
-
Provides-Extra: dev
|
28
|
-
Provides-Extra: docs
|
29
|
-
Provides-Extra: onthefly
|
30
29
|
License-File: LICENSE.md
|
31
30
|
License-File: AUTHORS.rst
|
31
|
+
Requires-Dist: click<8.2,>=8.1.3
|
32
|
+
Requires-Dist: numpy<1.27,>=1.24
|
33
|
+
Requires-Dist: scipy<=1.11.4,>=1.9.0
|
34
|
+
Requires-Dist: datalad<0.20,>=0.15.4
|
35
|
+
Requires-Dist: pandas<2.2,>=1.4.0
|
36
|
+
Requires-Dist: nibabel<5.11,>=3.2.0
|
37
|
+
Requires-Dist: nilearn<=0.10.2,>=0.9.0
|
38
|
+
Requires-Dist: sqlalchemy<=2.1.0,>=1.4.27
|
39
|
+
Requires-Dist: ruamel.yaml<0.18,>=0.17
|
40
|
+
Requires-Dist: h5py>=3.10
|
41
|
+
Requires-Dist: httpx[http2]==0.26.0
|
42
|
+
Requires-Dist: tqdm==4.66.1
|
43
|
+
Requires-Dist: templateflow>=23.0.0
|
44
|
+
Requires-Dist: importlib_metadata; python_version < "3.10"
|
45
|
+
Requires-Dist: looseversion==1.3.0; python_version >= "3.12"
|
46
|
+
Provides-Extra: all
|
47
|
+
Requires-Dist: bctpy==0.6.0; extra == "all"
|
48
|
+
Requires-Dist: neurokit2>=0.1.7; extra == "all"
|
49
|
+
Provides-Extra: bct
|
50
|
+
Requires-Dist: bctpy==0.6.0; extra == "bct"
|
51
|
+
Provides-Extra: onthefly
|
52
|
+
Requires-Dist: bctpy==0.6.0; extra == "onthefly"
|
53
|
+
Provides-Extra: neurokit2
|
54
|
+
Requires-Dist: neurokit2>=0.1.7; extra == "neurokit2"
|
55
|
+
Provides-Extra: dev
|
56
|
+
Requires-Dist: tox; extra == "dev"
|
57
|
+
Requires-Dist: pre-commit; extra == "dev"
|
58
|
+
Provides-Extra: docs
|
59
|
+
Requires-Dist: seaborn<0.13,>=0.11.2; extra == "docs"
|
60
|
+
Requires-Dist: sphinx<7.3,>=5.3.0; extra == "docs"
|
61
|
+
Requires-Dist: sphinx-gallery<0.15.0,>=0.11.0; extra == "docs"
|
62
|
+
Requires-Dist: furo<2023.10.0,>=2022.9.29; extra == "docs"
|
63
|
+
Requires-Dist: numpydoc<1.6,>=1.5.0; extra == "docs"
|
64
|
+
Requires-Dist: julearn<0.4,>=0.3.0; extra == "docs"
|
65
|
+
Requires-Dist: sphinx-copybutton<0.5.3,>=0.5.1; extra == "docs"
|
66
|
+
Requires-Dist: towncrier<23.7,>=22.12.0; extra == "docs"
|
67
|
+
Requires-Dist: sphinxcontrib-mermaid<0.10,>=0.8.1; extra == "docs"
|
32
68
|
|
33
69
|

|
34
70
|
|
@@ -43,10 +79,12 @@ License-File: AUTHORS.rst
|
|
43
79
|
[](https://github.com/psf/black)
|
44
80
|
[](https://github.com/charliermarsh/ruff)
|
45
81
|
[](https://github.com/pre-commit/pre-commit)
|
82
|
+
[](https://doi.org/10.5281/zenodo.8176570)
|
83
|
+
[](https://fairsoftwarechecklist.net/v0.2?f=31&a=32113&i=32322&r=133)
|
46
84
|
|
47
85
|
## About
|
48
86
|
|
49
|
-
junifer is a data handling and feature extraction library targeted towards neuroimaging data specifically functional MRI data.
|
87
|
+
`junifer` is a data handling and feature extraction library targeted towards neuroimaging data specifically functional MRI data.
|
50
88
|
|
51
89
|
It is currently being developed and maintained at the [Applied Machine Learning](https://www.fz-juelich.de/en/inm/inm-7/research-groups/applied-machine-learning-aml) group at [Forschungszentrum Juelich](https://www.fz-juelich.de/en), Germany. Although the library is designed for people working at [Institute of Neuroscience and Medicine - Brain and Behaviour (INM-7)](https://www.fz-juelich.de/en/inm/inm-7), it is designed to be as modular as possible thus enabling others to extend it easily.
|
52
90
|
|
@@ -69,7 +107,7 @@ The documentation is available at [https://juaml.github.io/junifer](https://juam
|
|
69
107
|
* `preprocess`: Preprocessing module.
|
70
108
|
* `storage`: Storage module.
|
71
109
|
* `testing`: Testing components module.
|
72
|
-
* `utils`: Utilities module (e.g. logging)
|
110
|
+
* `utils`: Utilities module (e.g. logging).
|
73
111
|
|
74
112
|
## Installation
|
75
113
|
|
@@ -85,14 +123,29 @@ You can also install via `conda`, like so:
|
|
85
123
|
conda install -c conda-forge junifer
|
86
124
|
```
|
87
125
|
|
126
|
+
### Optional dependencies
|
127
|
+
|
128
|
+
`junifer` supports a few optional dependencies to enable certain features. You can
|
129
|
+
install them by specifying a comma separated list within square brackets, like so:
|
130
|
+
|
131
|
+
```
|
132
|
+
pip install "junifer[bct,dev]"
|
133
|
+
```
|
134
|
+
|
135
|
+
* `bct` installs [bctpy](https://github.com/aestrivex/bctpy) to enable use of `onthefly` module.
|
136
|
+
* `neurokit2` installs [neurokit2](https://github.com/neuropsychology/NeuroKit) to enable use of [complexity markers](https://juaml.github.io/junifer/main/api/markers.html#module-junifer.markers.complexity).
|
137
|
+
* `all` includes all of the above.
|
138
|
+
* `dev` installs packages needed for development.
|
139
|
+
* `docs` installs packages needed for building documentation.
|
140
|
+
|
88
141
|
## Citation
|
89
142
|
|
90
|
-
If you use junifer in a scientific publication, we would appreciate if you cite our work. Currently, we do not have a publication, so feel free to use the project [URL](https://
|
143
|
+
If you use `junifer` in a scientific publication, we would appreciate if you cite our work. Currently, we do not have a publication, so feel free to use the project's [Zenodo URL](https://doi.org/10.5281/zenodo.8176569).
|
91
144
|
|
92
145
|
## Funding
|
93
146
|
|
94
147
|
We thank the [Helmholtz Imaging Platform](https://helmholtz-imaging.de/) and
|
95
|
-
[SMHB](https://www.fz-juelich.de/en/smhb) for supporting development of
|
148
|
+
[SMHB](https://www.fz-juelich.de/en/smhb) for supporting development of `junifer`.
|
96
149
|
(The funding sources had no role in the design, implementation and evaluation of the pipeline.)
|
97
150
|
|
98
151
|
## Contribution
|
@@ -104,7 +157,7 @@ Contributions are welcome and greatly appreciated. Please read the [guidelines](
|
|
104
157
|
junifer is released under the AGPL v3 license:
|
105
158
|
|
106
159
|
junifer, FZJuelich AML neuroimaging feature extraction library.
|
107
|
-
Copyright (C)
|
160
|
+
Copyright (C) 2023, authors of junifer.
|
108
161
|
|
109
162
|
This program is free software: you can redistribute it and/or modify
|
110
163
|
it under the terms of the GNU Affero General Public License as published by
|
@@ -11,10 +11,12 @@
|
|
11
11
|
[](https://github.com/psf/black)
|
12
12
|
[](https://github.com/charliermarsh/ruff)
|
13
13
|
[](https://github.com/pre-commit/pre-commit)
|
14
|
+
[](https://doi.org/10.5281/zenodo.8176570)
|
15
|
+
[](https://fairsoftwarechecklist.net/v0.2?f=31&a=32113&i=32322&r=133)
|
14
16
|
|
15
17
|
## About
|
16
18
|
|
17
|
-
junifer is a data handling and feature extraction library targeted towards neuroimaging data specifically functional MRI data.
|
19
|
+
`junifer` is a data handling and feature extraction library targeted towards neuroimaging data specifically functional MRI data.
|
18
20
|
|
19
21
|
It is currently being developed and maintained at the [Applied Machine Learning](https://www.fz-juelich.de/en/inm/inm-7/research-groups/applied-machine-learning-aml) group at [Forschungszentrum Juelich](https://www.fz-juelich.de/en), Germany. Although the library is designed for people working at [Institute of Neuroscience and Medicine - Brain and Behaviour (INM-7)](https://www.fz-juelich.de/en/inm/inm-7), it is designed to be as modular as possible thus enabling others to extend it easily.
|
20
22
|
|
@@ -37,7 +39,7 @@ The documentation is available at [https://juaml.github.io/junifer](https://juam
|
|
37
39
|
* `preprocess`: Preprocessing module.
|
38
40
|
* `storage`: Storage module.
|
39
41
|
* `testing`: Testing components module.
|
40
|
-
* `utils`: Utilities module (e.g. logging)
|
42
|
+
* `utils`: Utilities module (e.g. logging).
|
41
43
|
|
42
44
|
## Installation
|
43
45
|
|
@@ -53,14 +55,29 @@ You can also install via `conda`, like so:
|
|
53
55
|
conda install -c conda-forge junifer
|
54
56
|
```
|
55
57
|
|
58
|
+
### Optional dependencies
|
59
|
+
|
60
|
+
`junifer` supports a few optional dependencies to enable certain features. You can
|
61
|
+
install them by specifying a comma separated list within square brackets, like so:
|
62
|
+
|
63
|
+
```
|
64
|
+
pip install "junifer[bct,dev]"
|
65
|
+
```
|
66
|
+
|
67
|
+
* `bct` installs [bctpy](https://github.com/aestrivex/bctpy) to enable use of `onthefly` module.
|
68
|
+
* `neurokit2` installs [neurokit2](https://github.com/neuropsychology/NeuroKit) to enable use of [complexity markers](https://juaml.github.io/junifer/main/api/markers.html#module-junifer.markers.complexity).
|
69
|
+
* `all` includes all of the above.
|
70
|
+
* `dev` installs packages needed for development.
|
71
|
+
* `docs` installs packages needed for building documentation.
|
72
|
+
|
56
73
|
## Citation
|
57
74
|
|
58
|
-
If you use junifer in a scientific publication, we would appreciate if you cite our work. Currently, we do not have a publication, so feel free to use the project [URL](https://
|
75
|
+
If you use `junifer` in a scientific publication, we would appreciate if you cite our work. Currently, we do not have a publication, so feel free to use the project's [Zenodo URL](https://doi.org/10.5281/zenodo.8176569).
|
59
76
|
|
60
77
|
## Funding
|
61
78
|
|
62
79
|
We thank the [Helmholtz Imaging Platform](https://helmholtz-imaging.de/) and
|
63
|
-
[SMHB](https://www.fz-juelich.de/en/smhb) for supporting development of
|
80
|
+
[SMHB](https://www.fz-juelich.de/en/smhb) for supporting development of `junifer`.
|
64
81
|
(The funding sources had no role in the design, implementation and evaluation of the pipeline.)
|
65
82
|
|
66
83
|
## Contribution
|
@@ -72,7 +89,7 @@ Contributions are welcome and greatly appreciated. Please read the [guidelines](
|
|
72
89
|
junifer is released under the AGPL v3 license:
|
73
90
|
|
74
91
|
junifer, FZJuelich AML neuroimaging feature extraction library.
|
75
|
-
Copyright (C)
|
92
|
+
Copyright (C) 2023, authors of junifer.
|
76
93
|
|
77
94
|
This program is free software: you can redistribute it and/or modify
|
78
95
|
it under the terms of the GNU Affero General Public License as published by
|
@@ -0,0 +1,33 @@
|
|
1
|
+
name: junifer-dev
|
2
|
+
channels:
|
3
|
+
- conda-forge
|
4
|
+
- defaults
|
5
|
+
dependencies:
|
6
|
+
- python>=3.10,<=3.11
|
7
|
+
- click=8.1.*
|
8
|
+
- numpy>=1.22,<1.27
|
9
|
+
- pandas>=1.4.0,<2.2
|
10
|
+
- nibabel>=3.2.0,<5.2
|
11
|
+
- nilearn>=0.9.0,<=0.10.1
|
12
|
+
- sqlalchemy>=1.4.27,<= 2.0.21
|
13
|
+
- ruamel.yaml=0.17.*
|
14
|
+
- h5py>=3.8,<=3.9
|
15
|
+
- seaborn>=0.11,<=0.13
|
16
|
+
- sphinx>=5.3,<7.3
|
17
|
+
- sphinx-gallery>=0.11.0,<0.15.0
|
18
|
+
- furo>=2022.9.29,<2023.10.0
|
19
|
+
- numpydoc>=1.5.0,<1.6
|
20
|
+
- sphinx-copybutton>=0.5.1,<0.5.3
|
21
|
+
- towncrier>=22.12.0,<23.7
|
22
|
+
- sphinxcontrib-mermaid>=0.8.1,<0.10
|
23
|
+
- tox
|
24
|
+
- ipykernel
|
25
|
+
- pytest-cov
|
26
|
+
- pytest
|
27
|
+
- black
|
28
|
+
- ruff
|
29
|
+
- codespell
|
30
|
+
- pip
|
31
|
+
- pip:
|
32
|
+
- datalad>=0.15.4,<0.20
|
33
|
+
- julearn==0.3.0
|
@@ -4,6 +4,7 @@ Parcellations
|
|
4
4
|
.. automodule:: junifer.data.parcellations
|
5
5
|
:members:
|
6
6
|
|
7
|
+
|
7
8
|
Coordinates
|
8
9
|
===========
|
9
10
|
|
@@ -16,3 +17,10 @@ Masks
|
|
16
17
|
|
17
18
|
.. automodule:: junifer.data.masks
|
18
19
|
:members:
|
20
|
+
|
21
|
+
|
22
|
+
Template Spaces
|
23
|
+
===============
|
24
|
+
|
25
|
+
.. automodule:: junifer.data.template_spaces
|
26
|
+
:members:
|