From e64a139f7023d3211dbcef59c4ae29481bdf996e Mon Sep 17 00:00:00 2001 From: Synchon Mandal Date: Tue, 20 Dec 2022 15:00:55 +0100 Subject: [PATCH 1/5] docs: improve installation.rst --- docs/installation.rst | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/docs/installation.rst b/docs/installation.rst index 470b19415..3ed3ed335 100644 --- a/docs/installation.rst +++ b/docs/installation.rst @@ -65,16 +65,16 @@ find a list of all external dependencies that are required for specific markers. AFNI ---- -To install AFNI, you can always follow the `AFNI official instructions +To install AFNI, you can always follow the `AFNI official instructions `_. Additionally, you can also follow the following steps to install and configure the AFNI Docker container in your local system. -.. important:: +.. important:: - The AFNI Docker container wrappers add the commands required by Junifer. Using this commands have - some limitations, mostly related to handling files and paths. Junifer knows about this and uses this - commands in the proper way. Keep this in mind if you try to use the AFNI Docker wrappers outside of junifer. This - caveats and limitations are not documented. + The AFNI Docker container wrappers add the commands required by junifer. Using these commands have + some limitations, mostly related to handling files and paths. Junifer knows about this and uses these + commands in the proper way. Keep this in mind if you try to use the AFNI Docker wrappers outside of junifer. + These caveats and limitations are not documented. 1. Install Docker. You can follow the `Docker official instructions `_. 2. Pull the AFNI Docker image from `Docker Hub `_: @@ -89,7 +89,7 @@ the following steps to install and configure the AFNI Docker container in your l junifer setup afni-docker -Take the last line and copy it to your ``.bashrc`` or ``.zshrc`` file. +Take the last line and copy it to your ``.bashrc`` or ``.zshrc`` file. Or, alternatively, you can exceute this command which will update the ``~/.bashrc`` for you: From feea08a4f4fef3b6a7ca71ed06cf088e42e35057 Mon Sep 17 00:00:00 2001 From: Synchon Mandal Date: Tue, 20 Dec 2022 15:01:31 +0100 Subject: [PATCH 2/5] docs: add 0.0.1.inc and adapt links --- docs/changes/0.0.1.inc | 115 ++++++++++++++++++++++++++++++++++++++++ docs/changes/latest.inc | 95 +-------------------------------- docs/whats_new.rst | 3 +- 3 files changed, 118 insertions(+), 95 deletions(-) create mode 100644 docs/changes/0.0.1.inc diff --git a/docs/changes/0.0.1.inc b/docs/changes/0.0.1.inc new file mode 100644 index 000000000..7c0e294cf --- /dev/null +++ b/docs/changes/0.0.1.inc @@ -0,0 +1,115 @@ +v0.0.1 +------ + +Enhancements +~~~~~~~~~~~~ + +- Create the repository based on the mockup by `Fede Raimondo`_. + +- Implement :class:`junifer.testing.datagrabbers.SPMAuditoryTestingDatagrabber` datagrabber + (:gh:`52` by `Fede Raimondo`_). + +- Add comments to :class:`junifer.datagrabber.DataladDataGrabber` datagrabber and change to + use ``datalad-clone`` instead of ``datalad-install`` (:gh:`55` by `Benjamin Poldrack`_). + +- Add an example how to use junifer and julearn in one pipeline to extract features + and do machine learning (:gh:`40` by `Leonard Sasse`_, `Nicolas Nieto`_, and `Sami Hamdan`_). + +- Implement matrix storage in SQliteFeatureStorage (:gh:`42` by `Fede Raimondo`_). + +- Implement :class:`junifer.markers.FunctionalConnectivityParcels` marker for functional + connectivity using a parcellation (:gh:`41` by `Amir Omidvarnia`_ and `Kaustubh R. Patil`_). + +- Add documentation for the datagrabbers (by `Leonard Sasse`_, + `Nicolas Nieto`_, and `Sami Hamdan`_). + +- Implement coordinate register, list and load (:gh:`11` by `Fede Raimondo`_). + +- Add :class:`junifer.datagrabber.DataladAOMICID1000` datagrabber for AOMIC ID1000 dataset + including tests and creation of mock dataset for testing (:gh:`60` by `Vera Komeyer`_, `Xuan Li`_). + +- Add support to access other input in the data object in the ``compute`` method + (by `Fede Raimondo`_). + +- Implement :class:`junifer.markers.RSSETSMarker` marker (:gh:`51` by `Leonard Sasse`_, + `Nicolas Nieto`_, `Sami Hamdan`_). + +- Implement :class:`junifer.markers.SphereAggregation` marker (by `Fede Raimondo`_). + +- Implement :class:`junifer.datagrabber.DataladAOMICPIOP1` and + :class:`junifer.datagrabber.DataladAOMICPIOP2` datagrabbers for AOMIC PIOP1 and PIOP2 datasets + respectively and refactor :class:`junifer.datagrabber.DataladAOMICID1000` slightly + (:gh:`94` by `Leonard Sasse`_) + +- Implement :class:`junifer.configs.juseless.datagrabbers.JuselessDataladCamCANVBM` datagrabber + (:gh:`99` by `Leonard Sasse`_) + +- Implement :class:`junifer.configs.juseless.datagrabbers.JuselessDataladIXIVBM` CAT output + datagrabber for juseless (:gh:`48` by `Leonard Sasse`_). + +- Upgrade storage interface for storage-like objects (:gh:`84` by `Synchon Mandal`_). + +- Add missing type annotations (:gh:`74` by `Synchon Mandal`_). + +- Add ``junifer wtf`` to report environment details (:gh:`33` by `Synchon Mandal`_). + +- Add ``junifer selftest`` to report environment details (:gh:`9` by `Synchon Mandal`_). + +- Refactor markers ``on`` attribute and ``get_valid_inputs`` to verify that the marker can + be computed on the input data types (by `Fede Raimondo`_) + +- Implement :class:`junifer.configs.juseless.datagrabbers.JuselessDataladAOMICID1000VBM` + datagrabber for accessing AOMIC ID1000 VBM from juseless (:gh:`57` by `Felix Hoffstaedter`_ + and `Synchon Mandal`_) + +- Add test for :class:`junifer.datagrabber.DataladHCP1200` datagrabber (:gh:`93` by `Synchon Mandal`_). + +- Change documentation template to furo. Fix references and standardize documentation (:gh:`114` by `Fede Raimondo`_). + +- Add :class:`junifer.preprocess.fMRIPrepConfoundRemover` (:gh:`111` by `Fede Raimondo`_ and `Leonard Sasse`_). + +- Implement :class:`junifer.markers.CrossParcellationFC` marker (:gh:`85` by `Leonard Sasse`_ + and `Kaustubh R. Patil`_) + +- Add :class:`junifer.configs.juseless.datagrabbers.JuselessUCLA` datagrabber for the UCLA dataset + available on juseless (:gh:`118` by `Leonard Sasse`_). + +- Rename "atlas" to "parcellation" (:gh:`116` by `Fede Raimondo`_). + +- Refactor the :class:`junifer.datagrabber.BaseDataGrabber` class to allow for easier subclassing (:gh:`123` by `Fede Raimondo`_). + +- Allow custom aggregation method for :class:`junifer.markers.SphereAggregation` (:gh:`102` by `Synchon Mandal`_). + +- Add support for "masks" (:gh:`79` by `Fede Raimondo`_). + +- Allow :class:`junifer.markers.ParcelAggregation` to apply multiple parcellations at once (:gh:`131` by `Fede Raimondo`_). + +- Introduce a singleton decorator for marker computations (:gh:`151` by `Synchon Mandal`_). + +- Refactor :class:`junifer.pipeline.PipelineStepMixin` to improve its implementation and validation for pipeline steps + (:gh:`152` by `Synchon Mandal`_). + +- Implement :class:`junifer.markers.ReHoParcels` and :class:`junifer.markers.ReHoSpheres` markers (:gh:`36` by `Synchon Mandal`_). + +- Implement :class:`junifer.markers.AmplitudeLowFrequencyFluctuationParcels` and + :class:`junifer.markers.AmplitudeLowFrequencyFluctuationSpheres` markers (:gh:`35` by `Fede Raimondo`_). + +Bugs +~~~~ + +- Fix a bug in which a :class:`junifer.datagrabber.PatternDataGrabber` would now work with relative ``datadir`` paths. + (:gh:`96` by `Leonard Sasse`_, fixed in :gh:`98` by `Fede Raimondo`_). + +- Fix a bug in which :class:`junifer.datagrabber.DataladAOMICPIOP2` datagrabber did not use user input to + constrain elements based on tasks (:gh:`105` by `Leonard Sasse`_) + +- Fix a bug in which a datalad dataset could remove a user-cloned dataset (:gh:`53` by `Fede Raimondo`_) + +- Fix a bug in which CLI command would not work using elements with more than one field (by `Fede Raimondo`_). + +- Fix a bug in which the generated DAG for HTCondor will not work (:gh:`143` by `Fede Raimondo`_). + +API changes +~~~~~~~~~~~ + +- Change the ``single_output`` default parameter in storage classes from ``False`` to ``True`` (:gh:`134` by `Fede Raimondo`_). diff --git a/docs/changes/latest.inc b/docs/changes/latest.inc index f8c3d88ed..39c44a3a3 100644 --- a/docs/changes/latest.inc +++ b/docs/changes/latest.inc @@ -14,107 +14,14 @@ .. _current: -Current (0.0.0.dev) +Current (0.0.2.dev) ------------------- Enhancements ~~~~~~~~~~~~ -- Created a the repository based on the mockup by `Fede Raimondo`_. - -- Implemented SPM Auditory testing datagrabber X (:gh:`52` by `Fede Raimondo`_). - -- Added comments to datalad grabber and changed to use datalad-clone instead of - datalad-install (:gh:`55` by `Benjamin Poldrack`_). - -- Added an example how to use junifer and julearn (:gh:`40` by `Leonard Sasse`_, - `Nicolas Nieto`_, and `Sami Hamdan`_) in one pipeline to extract features - and do machine learning. - -- Implement matrix storage in SQliteFeatureStorage (:gh:`42` by `Fede Raimondo`_). - -- Marker for functional connectivity using a parcellation (:gh:`41` by - `Amir Omidvarnia`_ and `Kaustubh R. Patil`_). - -- Added documentation for the datagrabbers (by `Leonard Sasse`_, - `Nicolas Nieto`_, and `Sami Hamdan`_). - -- Implement coordinate register, list and load (:gh:`11` by `Fede Raimondo`_). - -- Added datagrabber for AOMIC1000 dataset including tests and creation of mock - dataset for testing (:gh:`60` by `Vera Komeyer`_, `Xuan Li`_). - -- Added support to access other input in the data object in the `compute` method - (by `Fede Raimondo`_). - -- Implemented the edge time series RSS marker (:gh:`51` by `Leonard Sasse`_, - `Nicolas Nieto`_, `Sami Hamdan`_). - -- Implement SphereAggregation marker (by `Fede Raimondo`_). - -- Implement PIOP1 and PIOP2 AOMIC datasets and refactor AOMICID1000 slightly - (:gh:`94` by `Leonard Sasse`_) - -- Implement a JuselessDataladCamCANVBM datagrabber class (:gh:`99` by `Leonard Sasse`_) - -- Implement IXI CAT output datagrabber for juseless (:gh:`48` by `Leonard Sasse`_). - -- Upgrade storage interface for storage-like objects (:gh:`84` by `Synchon Mandal`_). - -- Add missing type annotations (:gh:`74` by `Synchon Mandal`_). - -- Add ``junifer wtf`` to report environment details (:gh:`33` by `Synchon Mandal`_). - -- Add ``junifer selftest`` to report environment details (:gh:`9` by `Synchon Mandal`_). - -- Refactor markers ``on`` attribute and ``get_valid_inputs`` to verify that the marker can be computed on the input data types (by `Fede Raimondo`_) - -- Implement JuselessDataladAOMICID1000VBM datagrabber for accessing AOMIC ID 1000 VBM from juseless (:gh:`57` by `Felix Hoffstaedter`_ and `Synchon Mandal`_) - -- Add test for DataladHCP1200 datagrabber (:gh:`93` by `Synchon Mandal`_). - -- Change documentation template to furo. Fix references and standardize documentation (:gh:`114` by `Fede Raimondo`_). - -- Add :class:`junifer.preprocess.fMRIPrepConfoundRemover` (:gh:`111` by `Fede Raimondo`_ and `Leonard Sasse`_). - -- Implement CrossParcellationFC marker (:gh:`85` by `Leonard Sasse`_ and `Kaustubh R. Patil`_) - -- Add datagrabber implementation for the UCLA dataset available on juseless (:gh:`118` by `Leonard Sasse`_). - -- Rename "atlas" to "parcellation" (:gh:`116` by `Fede Raimondo`_). - -- Refactor the :class:`junifer.datagrabber.BaseDataGrabber` class to allow for easier subclassing (:gh:`123` by `Fede Raimondo`_). - -- Allow custom aggregation method for :class:`junifer.markers.SphereAggregation` (:gh:`102` by `Synchon Mandal`_). - -- Add support for "masks" (:gh:`79` by `Fede Raimondo`_). - -- Allow :class:`junifer.markers.ParcelAggregation` to apply multiple parcellations at once (:gh:`131` by `Fede Raimondo`_). - -- Introduce a singleton decorator for marker computations (:gh:`151` by `Synchon Mandal`_). - -- Refactor :class:`junifer.pipeline.PipelineStepMixin` to improve its implementation and validation for pipeline steps - (:gh:`152` by `Synchon Mandal`_). - -- Implement :class:`junifer.markers.ReHoParcels` and :class:`junifer.markers.ReHoSpheres` markers (:gh:`36` by `Synchon Mandal`_). - -- Implement :class:`junifer.markers.AmplitudeLowFrequencyFluctuationParcels` and :class:`junifer.markers.AmplitudeLowFrequencyFluctuationSpheres` markers (:gh:`35` by `Fede Raimondo`_). - Bugs ~~~~ -- Fix a bug in which a PatternDatagrabber would now work with relative `datadir` paths. - (:gh:`96` by `Leonard Sasse`_, fixed in :gh:`98` by `Fede Raimondo`_). - -- Fix a bug in which AOMIC PIOP2 datagrabber did not use user input to constrain elements based on tasks (:gh:`105` by `Leonard Sasse`_) - -- Fix a bug in which a datalad dataset could remove a user-cloned dataset (:gh:`53` by `Fede Raimondo`_) - -- Fix a bug in which CLI command would not work using elements with more than one field (by `Fede Raimondo`_). - -- Fix a bug in which the generated DAG for HTCondor will not work (:gh:`143` by `Fede Raimondo`_). - API changes ~~~~~~~~~~~ - -- Change the ``single_output`` default parameter in storage classes from ``False`` to ``True`` (:gh:`134` by `Fede Raimondo`_). diff --git a/docs/whats_new.rst b/docs/whats_new.rst index 8f8f285d6..944efe434 100644 --- a/docs/whats_new.rst +++ b/docs/whats_new.rst @@ -4,5 +4,6 @@ What's new ========== .. include:: changes/latest.inc +.. include:: changes/0.0.1.inc .. include:: changes/contributors.inc -.. include:: links.inc \ No newline at end of file +.. include:: links.inc From 67865140ec1eaf14848ab8079a723db7c2573561 Mon Sep 17 00:00:00 2001 From: Synchon Mandal Date: Tue, 20 Dec 2022 15:01:52 +0100 Subject: [PATCH 3/5] docs: add alt text for junifer logo in README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b8079569b..9f4a9508e 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -![Junifer logo](docs/images/junifer_logo.png) +![Junifer logo](docs/images/junifer_logo.png "junifer logo") # junifer - JUelich NeuroImaging FEature extractoR From 45b14c7a6e0b8cc3512828f19fc94dc6602a4d48 Mon Sep 17 00:00:00 2001 From: Synchon Mandal Date: Tue, 20 Dec 2022 15:02:09 +0100 Subject: [PATCH 4/5] docs: add funding information in README.md and docs/index.rst --- README.md | 6 ++++++ docs/index.rst | 8 ++++++++ 2 files changed, 14 insertions(+) diff --git a/README.md b/README.md index 9f4a9508e..43150b113 100644 --- a/README.md +++ b/README.md @@ -46,6 +46,12 @@ pip install junifer 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://juaml.github.io/junifer). +## Funding + +We thank the [Helmholtz Imaging Platform](https://helmholtz-imaging.de/) and +[SMHB](https://www.fz-juelich.de/en/smhb) for supporting development of Junifer. +(The funding sources had no role in the design, implementation and evaluation of the pipeline.) + ## Contribution Contributions are welcome and greatly appreciated. Please read the [guidelines](https://juaml.github.io/junifer/main/contributing.html) to get started. diff --git a/docs/index.rst b/docs/index.rst index ea8634ccb..001285b42 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -41,3 +41,11 @@ Indices and tables * :ref:`genindex` * :ref:`modindex` * :ref:`search` + + +Funding +======= + +We thank the `Helmholtz Imaging Platform `_ and +`SMHB `_ for supporting development of Junifer. +(The funding sources had no role in the design, implementation and evaluation of the pipeline.) From c939d219b5e45c1131bf4a4965b05b70facb4957 Mon Sep 17 00:00:00 2001 From: Synchon Mandal Date: Tue, 20 Dec 2022 15:06:26 +0100 Subject: [PATCH 5/5] docs: improve maintaining.rst --- docs/maintaining.rst | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/maintaining.rst b/docs/maintaining.rst index b7c631593..b2c771bfb 100644 --- a/docs/maintaining.rst +++ b/docs/maintaining.rst @@ -18,7 +18,7 @@ pre-release. The CI scripts will publish every tag with the format *v.X.Y.Z* to Pypi as version "X.Y.Z". Additionally, for every push to main, it will be published -as pre-release to TestPypi. +as pre-release to PyPI. Releasing a new version ----------------------- @@ -64,4 +64,3 @@ release. git tag -a vD.E.0.dev -m "Set next release to D.E.0" git push origin --follow-tags -