Releases: scilus/scilpy
Release list
2.3.0
🚀 scilpy 2.3.0 is out!
We're happy to announce the release of scilpy 2.3.0!
This release brings a solid mix of bug fixes, quality-of-life improvements, performance enhancements, and several new features across the toolkit. While this is a relatively incremental release, it lays important groundwork for what's coming next.
Highlights
✨ New Features
Added GPU-accelerated local deterministic tracking
New RAP parameter switching method
Added surface-related functionality
New BundleParc release
Added SF amplitude thresholding for mask creation
New visualization commands and documentation improvements
⚡ Performance & Infrastructure
Updated to DIPY 1.12/1.13
Refactored identical streamline detection using DIPY FastStreamlineSearch (FSS) and connected components
Updated GitHub Actions and dependency management
🐛 Bug Fixes & Improvements
Fixed issues affecting:
mean fixel AFD computation from HDF5
BIDS datasets with estimated total readout time
streamline ID sizing inconsistencies
visualization coloring from anatomy
FreeWater/NODDI processing edge cases
eddy/topup options
🙌 New Contributors
A warm welcome to our new contributors:
Thank you to everyone who contributed code, reviews, testing, documentation, and feedback for this release.
Full Changelog
2.2.2
Welcome to our new scilpy release
Let's be clear this one was not planned 😆
We will quickly move to a new release as soon dipy team release their new version.
Never the less we welcome this release and hope you like it as it is: an improved and less buggy scilpy version.
Enjoy and see you very soon 😉
What's Changed
- Fix documentation by @EmmaRenauld in #1273
- [ENH] Add more info for noddi priors by @arnaudbore in #1278
- ENH: Add option to keep original json structure for one input roi by @levje in #1281
- [ENH] Add no empty option by @arnaudbore in #1283
- [WIP] Functional graph measures added by @mdesco in #1286
- Change default NODDI by @arnaudbore in #1291
- FIX: BundleParc -- min_blob_size and keep_biggest were not used by @AntoineTheb in #1287
- Update paper figures with better resolution by @EmmaRenauld in #1296
- Add maximum operation to scil_volume_math by @CHrlS98 in #1293
- Small changes from my tests by @EmmaRenauld in #1297
- [ENH] Fix test - uv issue by @arnaudbore in #1299
- Unit test segment streamlines by @EmmaRenauld in #1301
- Ignore fake scripts from doc building in .gitignore by @EmmaRenauld in #1300
- streamlines_to_voxel_coordinates requires float32 by @frheault in #1276
- Fix and update commit by @arnaudbore in #1279
- Fix loading dps from hdf5 by @gagnonanthony in #1306
- FIX: Can't resample a 4d volume using a reference by @AntoineTheb in #1307
- Unit test: segment_tractogram by @EmmaRenauld in #1290
- Match multiple T1s with matching run entity by @levje in #1309
Full Changelog: 2.2.1...2.2.2
2.2.1
Welcome to our new scilpy release 2.2.1 🥳
Most of the work completed for this release was carried out in preparation for the publication of the SCILPY paper.
It's minor revision that includes a lot of fixes and a major upgrade of our documentation.
You should definitively visit our brand new documentation: https://scilpy.readthedocs.io/en/latest/
Enjoy and see you soon 😉
What's Changed
- Fix inversed tests files by @EmmaRenauld in #1240
- Update documentation by @arnaudbore in #1243
- [ENH][DOC] new organization documentation by @arnaudbore in #1246
- Vocab and screenshot fixes for tutorial (paper) by @frheault in #1244
- Copy-paste text associated with figures 2 - 5 from scilpy paper by @EmmaRenauld in #1247
- ENH: reconst tutorial by @AntoineTheb in #1248
- Add instructions for ssst and msmt fODFs by @karanphil in #1249
- Docs for Q-ball and asymmetric ODF by @CHrlS98 in #1251
- Add MTI documentation to scilpy by @Manonedde in #1252
- Doc add section and fix documentation compile errors by @EmmaRenauld in #1255
- [FIX] Removing some warnings in the doc by @EmmaRenauld in #1256
- Doc: prevent changes on disk by @EmmaRenauld in #1259
- Fix of codecov components paths by @AlexVCaron in #1245
- Doc reorganize by @EmmaRenauld in #1261
- DOC: Working with Arnaud by @EmmaRenauld in #1263
- Doc add bash equivalents by @EmmaRenauld in #1257
- scil_search_keywords .hidden missing file verification by @guichoquette in #1253
- Doc add tutorial figure3 by @EmmaRenauld in #1260
- Doc add tutorial figure2 by @EmmaRenauld in #1262
- ENH: tractometer-style volume compare by @AntoineTheb in #1242
- First unit tests in tractoanalysis module by @EmmaRenauld in #1235
- Fix links by @EmmaRenauld in #1268
- Prevent input=output in tractogram compress by @EmmaRenauld in #1269
- Adding script to restride data and bvecs by @karanphil in #1254
- Adding option in custom-color for coverage by @EmmaRenauld in #1271
- Nicer print_info. Now ~ the same for all data types! by @EmmaRenauld in #1272
New Contributors
- @guichoquette made their first contribution in #1253
Full Changelog: 2.2.0...2.2.1
2.2.0
Release 2.2.0
Here it is — the brand new shiny Scilpy 2.2.0! 🎉🥳
This release is a big step forward: we’re saying goodbye to the old script names and the outdated code organization.
We’re also closer than ever to reaching our 75% code coverage goal, and of course, we squashed a few bugs 🐛 🐛 along the way.
Thank you everybody !
Let's go !
What's Changed
- [HOTFIX] Install vtk-osmesa in workflow, not provided by runner anymore by @AlexVCaron in #1202
- Feature/python 3.12 by @frheault in #1196
- Handle empty labels by @frheault in #1200
- Ignore some cov viz by @EmmaRenauld in #1137
- harmonzie labels for longitudinal lesions by @frheault in #1039
- [BG] tractogram_filter_by _roi - fix filtering_list by @arnaudbore in #1205
- Unit tests connectivity + FIX MAP_COORDINATES USAGE by @EmmaRenauld in #1102
- [ENH] Change repo organization by @arnaudbore in #1201
- Update test-ml by @arnaudbore in #1215
- [FIX] Still save empty file for scil_tractogram_math.py by @levje in #1212
- Add final viz tests (after PR1137) by @EmmaRenauld in #1213
- [FIX] Erroneous normalization of bvecs on rows by @AlexVCaron in #1211
- Bundles: part 1 by @EmmaRenauld in #1214
- [ENH] Road to scilpy 2.2.0 by @arnaudbore in #1210
- [BF] Fix check when resampling with a ref by @arnaudbore in #1219
- Fixing doc string of scil_tractogram_dps_math by @karanphil in #1224
- Update to most recent Pop Average atlas by @EmmaRenauld in #1225
- [FIX] Fix issue when testing search keywords by @arnaudbore in #1228
- Adding mask and median options to fodf max in ventricles script by @karanphil in #1221
- Bump deepdiff from 6.3.0 to 8.6.1 by @dependabot[bot] in #1223
- Update runners by @AlexVCaron in #1232
- [ENH] Remove old mention of .py scripts by @arnaudbore in #1234
- Bundles: part 2 by @EmmaRenauld in #1216
- Clarified bundle scoring scripts. Added options by @EmmaRenauld in #1231
- Avoid numerical shenanigans by @frheault in #1237
- volume_math Add warning and always convert to fload IF slope/intercept by @frheault in #1226
- Saving DPS and DPP in BundleSeg by @frheault in #1233
- ENH: BundleParc - continuous and distance-based parcellation by @AntoineTheb in #1194
Full Changelog: 2.1.2...2.2.0
2.1.2
2.2.0rc1
pre-release 2.2.0rc1
First try at our new Scilpy release. RC1
What's Changed
- [HOTFIX] Install vtk-osmesa in workflow, not provided by runner anymore by @AlexVCaron in #1202
- Feature/python 3.12 by @frheault in #1196
- Handle empty labels by @frheault in #1200
- Ignore some cov viz by @EmmaRenauld in #1137
- harmonzie labels for longitudinal lesions by @frheault in #1039
- [BG] tractogram_filter_by _roi - fix filtering_list by @arnaudbore in #1205
- Unit tests connectivity + FIX MAP_COORDINATES USAGE by @EmmaRenauld in #1102
- [ENH] Change repo organization by @arnaudbore in #1201
- Update test-ml by @arnaudbore in #1215
- [FIX] Still save empty file for scil_tractogram_math.py by @levje in #1212
- Add final viz tests (after PR1137) by @EmmaRenauld in #1213
- [FIX] Erroneous normalization of bvecs on rows by @AlexVCaron in #1211
- Bundles: part 1 by @EmmaRenauld in #1214
- [ENH] Road to scilpy 2.2.0 by @arnaudbore in #1210
- [BF] Fix check when resampling with a ref by @arnaudbore in #1219
Full Changelog: 2.1.1...2.2.0rc1
2.1.1
Minor modification for a new release 🎉
- Fix scil_bundle_label_map.py
- New BundleParc v2
What's Changed
- ENH: BundleParc v2 by @AntoineTheb in #1179
- ENH: shorten scil_fodf_bundleparc.py --help by @AntoineTheb in #1189
- ENH: Add miscellaneous tractogram extensions to header check by @jhlegarreta in #1191
- Test energy_comparison by @karanphil in #1190
- NF - Region-Adaptive Propagation (RAP) tractography by @gabknight in #1192
- [BF] Improve scil_bundle_label_map add filtering by @arnaudbore in #1197
- Update version + typo by @arnaudbore in #1198
Full Changelog: 2.1.0...2.1.1
2.1.0
Release 2.1.0
It's here, it's shiny and it comes with a ton of new features 🎉 and less bugs 🐛 .
Don't hesitate to take a look at the API.
Thank you everybody !
What's Changed
- Tractogram scripts parts4 by @EmmaRenauld in #961
- Tractogram scripts part 5 by @EmmaRenauld in #983
- Tractogram scripts part6 by @EmmaRenauld in #991
- Tractogram scripts part7: segmentation scripts by @EmmaRenauld in #993
- [FIX] 10 colors in BASE10 colors for visualization by @AlexVCaron in #999
- [FIX] Empty remaining indices when filtering for a bundle by @levje in #1002
- Removing xform from convert script by @frheault in #1001
- Generate HDF5 from TRKs by @frheault in #985
- [FIX] Typo in scil_dti_metrics script by @AlexVCaron in #1000
- Update COMMIT AMICO - use args.processes by @arnaudbore in #998
- ENH: tractogram add dps by @AntoineTheb in #1006
- Update to work with Trimeshpy 0.0.4 by @frheault in #1003
- ENH: rework
scil_tractogram_cut_streamlines+scil_labels_from_maskby @AntoineTheb in #1009 - Add create surface by @arnaudbore in #1005
- [FIX] Missing parameter for background viz by @levje in #1012
- [ENH] Add script normalize bvec by @arnaudbore in #1011
- [BF] Fix surfaces lib by @arnaudbore in #1014
- [ENH] Bundle fixel analysis script by @karanphil in #1004
- Removing unused argument in scil_bundle_fixel_analysis.py by @karanphil in #1018
- Alter tractogram (trim, cut, replace, subsample, transform) by @frheault in #992
- Modify lesions_info to support labels instead of mask by @frheault in #1020
- New script to compute similarity between mask and atlas (nii) by @frheault in #994
- [ENH] Uniformize surface apply transformation by @arnaudbore in #1015
- Distance map by @frheault in #1023
- Fix tests by @arnaudbore in #1028
- Tractograms: more unit tests by @EmmaRenauld in #1027
- ENH: Pad or crop volume using
scil_volume_reshape.pyby @AntoineTheb in #1019 - WIP "Fake" ambiant occlusion for MI-Brain by @frheault in #1030
- Nawm generation based on distance map by @frheault in #1026
- return option min_vol_lesion by @ThoumyreStanislas in #1036
- [BF] Fix save FODF add header info from i_dwi by @arnaudbore in #1037
- ENH: cut streamlines min length by @AntoineTheb in #1040
- [ENH][BF] Update json conversion to excel used in tractometry_flow by @arnaudbore in #1041
- [FIX] pyproject.toml and right build dependencies. by @levje in #1048
- Denoise nl_means script by @EmmaRenauld in #972
- Scilpy bot v2 by @frheault in #1033
- ENH: better bundle endpoints maps by @AntoineTheb in #1047
- Add no norm option to scil_bundle_fixel_analysis by @karanphil in #1032
- [ENH] Add mrds scripts part 3 by @arnaudbore in #1046
- Keep old space by @frheault in #1050
- [ENH] Add mrds scripts part 1 by @arnaudbore in #1021
- [ENH] Add mrds scripts part 2 by @arnaudbore in #1022
- FIX:
ratioarg in volume pairwise comparison by @AntoineTheb in #1051 - Fibertube Tracking by @VincentBeaud in #971
- Connectivity: compute_matrices script by @EmmaRenauld in #1031
- Improve coverage in multiprocessing cases by @EmmaRenauld in #1053
- Fix doc by @EmmaRenauld in #1056
- [ENH] Fix resample local_tracking_dev accepts close iso voxels by @arnaudbore in #1055
- [ENH] Add precision to FRF scripts by @AlexVCaron in #1057
- Create new script compute_simple_matrix by @EmmaRenauld in #1045
- ENH: add interpolation to
scil_volume_apply_transformby @AntoineTheb in #1065 - [BF] Tractogram filter by multiples ROIs - Crash by @arnaudbore in #1052
- Add Fibertube_tracking.rst to the read-the-docs by @CHrlS98 in #1070
- Fibertube tracking - New endpoint scoring by @VincentBeaud in #1064
- New Endpoint Scoring - Charles' suggestions by @VincentBeaud in #1075
- Script dps math by @VincentBeaud in #1066
- Add test single shell NODDI by @karanphil in #1080
- Adding ref to scil_freewater_maps by @karanphil in #1083
- Clarify doc to differentiate dpp_math with dps mode and dps_math by @VincentBeaud in #1081
- Avoid scalar with dim > 0 by squeezing. Passes test and pep8 no warning. by @VincentBeaud in #1078
- Fix merge queue by @AlexVCaron in #1109
- Tracking local custom seeds by @VincentBeaud in #1069
- [FIX]: Return rejected streamlines with empty sft by @levje in #1076
- [DOC] Add documentation for grid_intersections by @CHrlS98 in #1079
- Switch to loops simple connectivity by @frheault in #1082
- FIX: Filter streamlines by length, use the "save rejection" argument. by @levje in #1090
- Fix the hdf5 error when dpp are present by @gagnonanthony in #1092
- Fix Fury upcoming deprecation call by @AlexVCaron in #1085
- BF for asymmetric peaks by @CHrlS98 in #1077
- Move plot residuals into viz - plot by @zinelya in #1088
- Fixing bug in gradients_generate_sampling by @karanphil in #1094
- DOC - fixed updated script name by @gabknight in #1107
- Next connectivity scripts by @EmmaRenauld in #1063
- FIX: Division by 0 in
scil_dti_metricsby @AntoineTheb in #1089 - Update script scil_viz_gradients_screenshot by @karanphil in #1097
- Condense distance matrix that was not. Pep8 + test pass by @VincentBeaud in #1084
- Cleaning the connectivity pairwise agreement script by @EmmaRenauld in #1087
- update to dipy 1.10 by @arnaudbore in #1114
- Fixing the skip_b0_check function by @karanphil in #1113
- Cythonization warnings by @CHrlS98 in #1101
- [BF] NODDI map catch error by @arnaudbore in #1115
- [ENH] Allow extra option for topup and eddy by @arnaudbore in #1117
- Adding support for list of lists of paths in assert_inputs_exist by @karanphil in #1086
- Final connectivity scripts PR by @EmmaRenauld in #1099
- Small fix (issue 1123) by @EmmaRenauld in #1126
- Support .tck for commit by @EmmaRenauld in #1125
- RF - Input to volume stats scripts by @gabknight in #1068
- Add script to validate gradient tables by @karanphil in #1110
- Fibertube Density by @VincentBeaud in #1112
- Add Scilpy version - part 1 by @zinelya in #1100
- Add Scilpy version - part 2 by @zinelya in #1106
- BF - fixed voxel bundary conditions in uncompress streamlines by @gabknight in #1098
- Delete script fix_trk by @EmmaRenauld in #984
- [ENH] Add positionnal arguments by @arnaudbore in #1118
- DOC - renamed the uncompress fct to streamlines_to_voxel_coordinates by @gabknight in #1103
- bids_validate func get_data -> changed clean: Boolean definition from… by @Desk3505 in https://gi...
2.1.0rc1
New scilpy release coming up
First release candidate - published on pypi
2.0.2
SCILPY release 2.0.2 🎉
I didn't think I'd be back here so quickly.
Again a couple of issues have been fixed .
See you soon—I hope it's not too soon, though.
What's Changed
- [FIX] fixed typo in surface convert script by @grahamlittlephd in #989
- [BF] Fix mask type - dwi apply bias field by @arnaudbore in #990
Full Changelog: 2.0.1...2.0.2