# Release notes for DIPY version 1.8

GitHub stats for 2023/04/23 - 2023/12/13 (tag: 1.7.0)

These lists are automatically generated, and may be incomplete or contain duplicates.

The following 28 authors contributed 733 commits.

- Ariel Rokem

- Atharva Shah

- Bramsh Qamar

- Charles Poirier

- Dimitri Papadopoulos

- Eleftherios Garyfallidis

- Emmanuelle Renauld

- Eric Larson

- Francois Rheault

- Gabriel Girard

- Javier Guaje

- John Kruper

- Jon Haitz Legarreta Gorroño

- Jong Sung Park

- Maharshi Gor

- Michael R. Crusoe

- Nicolas Delinte

- Paul Camacho

- Philippe Karan

- Rafael Neto Henriques

- Sam Coveney

- Samuel St-Jean

- Serge Koudoro

- Shilpi Prasad

- Theodore Ni

- Vara Lakshmi Bayanagari

- dependabot[bot]

- Étienne Mollier

We closed a total of 327 issues, 130 pull requests and 197 regular issues; this is the full list (generated with the script `tools/github_stats.py`):

Pull Requests (129):

- PR #3009: [DOC] Update installation instruction [ci skip]

- PR #2999: TEST: Set explicitly CLARABEL as the CVXPY solver

- PR #2943: BF: Fix bundlewarp shape analysis profile values for all False mask

- PR #2992: RGB support for images

- PR #2989: BF: Mask 1 values in leveraged, residual matrix computation

- PR #3007: [RF] Define minimum version for some optional packages

- PR #3006: [NF] Introduce minimum version in optional_package

- PR #3002: [RF] Improve scripts and import management

- PR #3005: Bump actions/setup-python from 4 to 5

- PR #3004: TEST: Check and filter PCA dimensionality problem warning

- PR #2996: RF: Fix b0 threshold warnings

- PR #2995: [MTN] remove custom module _importlib

- PR #2998: TEST: Filter SciPy 0.18.0 1-D affine transform array warning in test

- PR #3001: RF: Create PCA denoising utils methods

- PR #3000: RF: Prefer raising sklearn package warnings when required

- PR #2997: TEST: Filter warning about resorting to OLS fitting method

- PR #2991: MTN: fix byte swap ordering for numpy 2.0

- PR #2987: STYLE: Make cvxpy-dependent test checking consistent in test_mcsd

- PR #2990: STYLE: Use .astype() on uninitialized array casting

- PR #2984: DOC: Miscellaneous documentation improvements

- PR #2988: STYLE: Remove unused import in dipy/core/gradients.py

- PR #2985: Bump conda-incubator/setup-miniconda from 2 to 3

- PR #2986: DOC: Fix typos and grammar in lcr_matrix function documentation

- PR #2983: STYLE: Fix boolean variable negation warnings

- PR #2981: [MTN] replace the deprecated sctypes

- PR #2980: [FIX] int_t to npy_intp

- PR #2978: DOC: Fix issue template [ci skip]

- PR #2976: [MTN] Update index url for PRE-Wheels dependencies

- PR #2975: connectivity_matrix code speed up

- PR #2715: Enable building DIPY with Meson

- PR #2964: RF: Moving to numpy.random.Generator from numpy.random

- PR #2963: NF: Updating EVAC+ model and adding util function

- PR #2974: [MTN] Disable github check annotations

- PR #2956: Adding support for btens to multi_shell_fiber_response function

- PR #2969: bugfix for –force issue

- PR #2967: Feature/opacity checkbox

- PR #2966: volume slider fix

- PR #2958: TEST: Filter legacy SH bases warnings in bootstrap direction getter test

- PR #2944: [DOC] Remove ..figure directive in examples

- PR #2961: fixes for pep8 in previous PR

- PR #2922: synchronized-slicers for same size

- PR #2924: Additional check for horizon

- PR #2957: STYLE: Fix typo in msdki reconstruction test name

- PR #2941: TEST: Fix NumPy array to scalar value conversion warning

- PR #2932: OPT - Optimized pmfgen

- PR #2929: Stabilizing some test functions with set random seeds

- PR #2954: TEST: Bring back Python 3.8 testing to GHA workflows

- PR #2946: RF: Refactor duplicate code in qtdmri to mapmri coeff computation

- PR #2947: RF - BootDirectionGetter

- PR #2945: DOC: Fix miscellaneous docstrings

- PR #2940: TEST: Filter legacy SH bases warnings in PTT direction getter test

- PR #2938: TEST: Adding random generator with seed to icm tests

- PR #2942: OPT: Delegate to NumPy creating a random matrix

- PR #2939: DOC: Update jhlegarreta affiliation in developers

- PR #2933: fixed bug with fit extra returns

- PR #2930: Update of the tutorial apply image-based registration to streamlines

- PR #2759: TRX integration

- PR #2923: [DOC] Large documentation update

- PR #2825: NF - add initial directions to local tracking

- PR #2892: BF - fixed random generator seed value too large to convert to int error

- PR #2926: ENH: MSMT CSD module unique b-val tolerance parameter improvements

- PR #2927: DOC: Fix package name in documentation config file comment

- PR #2925: STYLE: Fix miscellaneous Numpy warnings

- PR #2781: Small fixes in functions

- PR #2910: STYLE: f-strings

- PR #2921: [FIX] tiny fix to HBN fetcher to also grab T1 for each subject

- PR #2906: [FIX] Pin scipy for the conda failing CI’s

- PR #2920: Mark Python3 files as such

- PR #2919: fix various grammar errors

- PR #2915: DOC: http:// → https://

- PR #2916: Build(deps): Bump codespell-project/actions-codespell from 1 to 2

- PR #2914: GitHub Actions

- PR #2816: Correlation Tensor Imaging

- PR #2912: MAINT: the symbol for second is s, not sec.

- PR #2902: Short import for horizon

- PR #2904: Apply refurb suggestions

- PR #2899: DOC: Fix typos newly found by codespell

- PR #2891: Apply pyupgrade suggestions

- PR #2898: Remove zip operation in transform_tracking_output

- PR #2897: BF: Bug when downloading hbn data.

- PR #2893: Remove consecutive duplicate words

- PR #2894: Get rid of trailing spaces in text files

- PR #2889: Apply pyupgrade suggestions

- PR #2888: Fix typos newly found by codespell

- PR #2887: Update shm.py

- PR #2814: [Fix] Horizon: Binary image loading

- PR #2885: [ENH] Add minimum length to streamline generator

- PR #2875: Increased PTT performances

- PR #2879: Add fetcher for a sample CTI dataset

- PR #2882: Change license_file to license_files in setup.cfg

- PR #2804: Adding diffusion data descriptions from references to reconstruction table

- PR #2730: Fix weighted Jacobians, return extra fit data, add adjacency function

- PR #2821: NF - added pft min wm parameter

- PR #2876: Introduction of pydata theme for sphinx

- PR #2846: Vara’s Week 8 & Week 9 blog

- PR #2870: Vara’s Week 12 and Week 13 blog

- PR #2865: Shilpi’s Week0&Week1 combined

- PR #2868: Submitting Week13.rst file

- PR #2871: Corrected paths to static files

- PR #2863: Shilpi’s Week12 Blog.

- PR #2856: Adding Week 11 Blog

- PR #2849: Shilpi’s 10th Blog

- PR #2847: Pushing Week 8 + 9 blog

- PR #2836: Shilpi’s Week 5 blog

- PR #2864: Change internal space/origin when using sft.to_x() with an empty sft.

- PR #2806: BF - initial backward orientation of local tracking

- PR #2862: Vara’s Week 10 & Week 11 blog

- PR #2843: Pushing 7th_blog

- PR #2841: Vara’s Week 6 & Week 7 blog

- PR #2835: Vara’s week 5 blog

- PR #2829: Pushing 3rd blog

- PR #2828: Vara’s week 3 blog

- PR #2860: Updates HCP fetcher dataset_description to be compatible with current BIDS

- PR #2831: Vara’s week 4 blog

- PR #2833: Pushing 4thBlog

- PR #2840: Shilpi’s Week6 Blog

- PR #2839: make order_from_ncoef return an int

- PR #2844: doc/tools/: fix trailing dot in version number.

- PR #2832: BundleWarp: added tutorial and fixed a small bug

- PR #2818: Vara’s week 0 blog

- PR #2823: submitting clearn PR for 2nd blog

- PR #2813: First Blog

- PR #2808: [DOC] Fix cross referencing

- PR #2798: Move evac+ to new module nn

- PR #2797: remove Nibabel InTemporaryDirectory

- PR #2800: Remove the Deprecating nisext

- PR #2795: bump dependencies minimal version

- PR #2792: Add patch_radius parameter to Patch2Self denoise workflow

- PR #2761: [UPCOMING] Release 1.7.0 - workshop release

Issues (197):

- #3009: [DOC] Update installation instruction [ci skip]

- #2999: TEST: Set explicitly CLARABEL as the CVXPY solver

- #2943: BF: Fix bundlewarp shape analysis profile values for all False mask

- #2992: RGB support for images

- #2989: BF: Mask 1 values in leveraged, residual matrix computation

- #3007: [RF] Define minimum version for some optional packages

- #3006: [NF] Introduce minimum version in optional_package

- #1256: script path can not be found on OSX

- #3002: [RF] Improve scripts and import management

- #3005: Bump actions/setup-python from 4 to 5

- #3004: TEST: Check and filter PCA dimensionality problem warning

- #2996: RF: Fix b0 threshold warnings

- #2995: [MTN] remove custom module _importlib

- #2998: TEST: Filter SciPy 0.18.0 1-D affine transform array warning in test

- #3001: RF: Create PCA denoising utils methods

- #3000: RF: Prefer raising sklearn package warnings when required

- #2997: TEST: Filter warning about resorting to OLS fitting method

- #2979: Prerelease wheels not NumPy 2.0.0.dev compatible

- #2991: MTN: fix byte swap ordering for numpy 2.0

- #2987: STYLE: Make cvxpy-dependent test checking consistent in test_mcsd

- #2990: STYLE: Use .astype() on uninitialized array casting

- #2984: DOC: Miscellaneous documentation improvements

- #2988: STYLE: Remove unused import in dipy/core/gradients.py

- #2985: Bump conda-incubator/setup-miniconda from 2 to 3

- #2986: DOC: Fix typos and grammar in lcr_matrix function documentation

- #2905: base tests

- #2983: STYLE: Fix boolean variable negation warnings

- #2981: [MTN] replace the deprecated sctypes

- #2980: [FIX] int_t to npy_intp

- #2978: DOC: Fix issue template [ci skip]

- #2976: [MTN] Update index url for PRE-Wheels dependencies

- #2975: connectivity_matrix code speed up

- #2514: Reshape our packaging system

- #2715: Enable building DIPY with Meson

- #2964: RF: Moving to numpy.random.Generator from numpy.random

- #2736: dipy_horizon needs –force option if there is tmp.png

- #2960: add type annotation in io module

- #2803: Type annotations integration

- #2963: NF: Updating EVAC+ model and adding util function

- #2974: [MTN] Disable github check annotations

- #2956: Adding support for btens to multi_shell_fiber_response function

- #2969: bugfix for –force issue

- #2967: Feature/opacity checkbox

- #2965: Pip installation issues with python 3.12

- #2968: Pip installation issues with python 3.12

- #2966: volume slider fix

- #2958: TEST: Filter legacy SH bases warnings in bootstrap direction getter test

- #2801: Some left-overs from sphinx-gallery conversion

- #2944: [DOC] Remove ..figure directive in examples

- #2961: fixes for pep8 in previous PR

- #2922: synchronized-slicers for same size

- #2878: DIPY reinstall doesn’t automatically update needed dependencies

- #2924: Additional check for horizon

- #2957: STYLE: Fix typo in msdki reconstruction test name

- #2941: TEST: Fix NumPy array to scalar value conversion warning

- #2932: OPT - Optimized pmfgen

- #2929: Stabilizing some test functions with set random seeds

- #2954: TEST: Bring back Python 3.8 testing to GHA workflows

- #2953: [WIP] Nlmeans update

- #2946: RF: Refactor duplicate code in qtdmri to mapmri coeff computation

- #2955: set_number_of_points function not found for dipy 1.7.0

- #2947: RF - BootDirectionGetter

- #2952: Delete dipy/denoise/nlmeans.py

- #2949: HBN fetcher failed

- #2945: DOC: Fix miscellaneous docstrings

- #718: Create an example of multi b-value SFM

- #2523: Doc generation failed

- #2940: TEST: Filter legacy SH bases warnings in PTT direction getter test

- #2928: test_icm_square failing on and off

- #2938: TEST: Adding random generator with seed to icm tests

- #2942: OPT: Delegate to NumPy creating a random matrix

- #2939: DOC: Update jhlegarreta affiliation in developers

- #2933: fixed bug with fit extra returns

- #2936: Automatic Fiber Bundle Extraction with RecoBundles in DIPY 1.7 broken?

- #2934: demo code not working

- #2787: Adds a pyproject file.

- #2786: “Image based streamlines_registration: unable to warp streamlines into template”

- #2400: Applying image-based deformations to streamlines example

- #2703: Image based streamlines_registration: unable to warp streamlines into template space

- #2930: Update of the tutorial apply image-based registration to streamlines

- #2759: TRX integration

- #2931: Add caption to sphinx gallery figure

- #2560: MCSD Tutorial failed with cvxpy>=1.1.15

- #2794: Add a search box to the DIPY documentation

- #2815: Reconstruction table of content doesn’t connect to MAP+

- #2923: [DOC] Large documentation update

- #2790: DTI fitting function with NLLS method raises an error.

- #2872: Website image (not showing up or wrong tag showing)

- #2884: WIP: trx integration

- #2825: NF - add initial directions to local tracking

- #2892: BF - fixed random generator seed value too large to convert to int error

- #2926: ENH: MSMT CSD module unique b-val tolerance parameter improvements

- #2927: DOC: Fix package name in documentation config file comment

- #2925: STYLE: Fix miscellaneous Numpy warnings

- #2777: Error using dipy_motion_correct

- #2781: Small fixes in functions

- #2648: Issues with dipy_align_syn

- #2900: format → f-strings?

- #2910: STYLE: f-strings

- #2921: [FIX] tiny fix to HBN fetcher to also grab T1 for each subject

- #2906: [FIX] Pin scipy for the conda failing CI’s

- #2920: Mark Python3 files as such

- #2919: fix various grammar errors

- #2915: DOC: http:// → https://

- #2896: Interactive examples for dipy

- #2901: patch2self question

- #2916: Build(deps): Bump codespell-project/actions-codespell from 1 to 2

- #2914: GitHub Actions

- #2816: Correlation Tensor Imaging

- #2912: MAINT: the symbol for second is s, not sec.

- #2913: DOC: fix links

- #2902: Short import for horizon

- #2908: Voxel correspondence between Non-Linearly aligned Volumes

- #2890: Attempt to fix error in conda jobs

- #2907: Temp - Gab PR

- #2904: Apply refurb suggestions

- #2903: Typo in the skills required section (Project 2) of Project Ideas

- #2899: DOC: Fix typos newly found by codespell

- #2891: Apply pyupgrade suggestions

- #2898: Remove zip operation in transform_tracking_output

- #2897: BF: Bug when downloading hbn data.

- #2893: Remove consecutive duplicate words

- #2894: Get rid of trailing spaces in text files

- #2889: Apply pyupgrade suggestions

- #2888: Fix typos newly found by codespell

- #2887: Update shm.py

- #2814: [Fix] Horizon: Binary image loading

- #2885: [ENH] Add minimum length to streamline generator

- #1372: Change direction getter dictionary keys from floats[3] to int

- #2805: Incorrect initial direction for the backward segment of local tracking

- #2875: Increased PTT performances

- #2883: Adding last,Week14Blog

- #2879: Add fetcher for a sample CTI dataset

- #2769: DOC example for data_per_streamline usage

- #2774: Added a tutorial in doc folder for saving labels.

- #2882: Change license_file to license_files in setup.cfg

- #2881: Adding fetcher in the test_file for #2879

- #2867: Bug in PFT when changing the random function

- #2804: Adding diffusion data descriptions from references to reconstruction table

- #2820: fixed bug for nlls fitting

- #2746: Weighted Non-Linear Fitting may be wrong

- #2730: Fix weighted Jacobians, return extra fit data, add adjacency function

- #2821: NF - added pft min wm parameter

- #2876: Introduction of pydata theme for sphinx

- #2846: Vara’s Week 8 & Week 9 blog

- #2870: Vara’s Week 12 and Week 13 blog

- #2865: Shilpi’s Week0&Week1 combined

- #2868: Submitting Week13.rst file

- #2871: Corrected paths to static files

- #2873: Motion estimate

- #2863: Shilpi’s Week12 Blog.

- #2856: Adding Week 11 Blog

- #2849: Shilpi’s 10th Blog

- #2847: Pushing Week 8 + 9 blog

- #2836: Shilpi’s Week 5 blog

- #2864: Change internal space/origin when using sft.to_x() with an empty sft.

- #2806: BF - initial backward orientation of local tracking

- #2862: Vara’s Week 10 & Week 11 blog

- #2843: Pushing 7th_blog

- #2841: Vara’s Week 6 & Week 7 blog

- #2835: Vara’s week 5 blog

- #2829: Pushing 3rd blog

- #2828: Vara’s week 3 blog

- #2860: Updates HCP fetcher dataset_description to be compatible with current BIDS

- #2831: Vara’s week 4 blog

- #1883: Interesting dataset for linear, planar, spherical encoding

- #2491: ENH: Extend Horizon to visualize 2 volumes simultaneously

- #2812: Patch2self denoising followed by topup and eddy corrections worsens distortions in the orbitofrontal region

- #2833: Pushing 4thBlog

- #2858: Odffp

- #2857: Odffp

- #2840: Shilpi’s Week6 Blog

- #2838: Reconstruction issues using MAP-MRI model (RTOP, RTAP, RTPP)

- #2845: MAP ODF issues

- #2851: How to use “synb0” in Dipy for preprocessing

- #2839: make order_from_ncoef return an int

- #2844: doc/tools/: fix trailing dot in version number.

- #2827: BundleWarp CLI Tutorial - Missing from Website

- #2832: BundleWarp: added tutorial and fixed a small bug

- #1627: WIP - NF - Tracking with Initial Directions and other tracking parameters

- #2818: Vara’s week 0 blog

- #2823: submitting clearn PR for 2nd blog

- #2822: Pushing 2nd blog,

- #2813: First Blog

- #2808: [DOC] Fix cross referencing

- #2798: Move evac+ to new module nn

- #2797: remove Nibabel InTemporaryDirectory

- #2706: FYI: Deprecating nisext in nibabel

- #2800: Remove the Deprecating nisext

- #2689: Installing DIPY fails with current conda version

- #2718: StatefulTractogram

- #2795: bump dependencies minimal version

- #2747: Cannot set dipy as a dependency

- #2791: Update Patch2Self CLI

- #2792: Add patch_radius parameter to Patch2Self denoise workflow

- #2771: BUG: Missing Python 3.11 macOS wheels

- #2761: [UPCOMING] Release 1.7.0 - workshop release