FSL 6.0.7.3, 5th September 2023
fsleyes 1.8.1 -> 1.8.3
- New
--cmapCycle
command-line option, which automatically assigns a different colour map to each volume overlay (!402). - Fixed an issue with overlays being interleaved when overlapping slices in the lightbox view.
- Fixed some bugs in edit mode - crashes could occur when drawing/selecting voxels in highly anisotropic images, and the cursor size could vary for images with floating point imprecision in their pixdims.
- Fixed an issue with loading built-in plugins - the atlas panel (amongst others) was not being loaded.
Detailed history
- CI: Adjust pipeline rules - test 3.10 on MRs, test all pyvers on release branches
- BF: Fix a couple of subtle bugs a) anisotropic voxels, and b) images with floating point drift in their pixdims (e.g. nifti2)
- BF: fix log statement - display is no longer defined here
- TEST: regression test for slice overlap issue
- BF: Fix display artifact in lightbox view when overlapping slices, and drawing more than one overlay - the slices/overlays were being interleaved according to draw order. The only work around is to draw in order of slices, so that each slice completely overlaps previously drawn slices.
- DOC: install page updates
- CI: fslpy default branch is now called main
- TEST: Test --cmapCycle
- CI: Default branch renamed to main
- ENH: New --cmapCycle option to automatically assign colour maps
- DOC: Fix super script formatting
- MNT: Add log statement back in
- TEST: Regression test for loading builtin plugins in submodules
- DOC: Explain atlas panel value discrepancy
fslpy 3.13.3 -> 3.14.1
- BF: Accidentally removed tbss from fsl.wrappers namespace
- Mnt/doc
Fix sphinx formatting/build issues
- ENH: New option to compose function
allowing order of scale/origin translate to be changed, with the effect that the position of the origin will not be changed by the scaling parameters
- MNT: Allow Notifier callback functions to accept no arguments
-
ENH,MNT: Automatically set sform for FNIRT displacement fields which do not have their sform set. Replace setup.py with pyproject.toml
-
Automatically set sform for FNIRT displacement fields which do not have their sform set.
- Replace setup.py with pyproject.toml
-
Move
tests
intofsl/tests
-
Enh/flip
New fsl.transform.affine.flip
function, for applying a flip/inversion to the axes of an affine transformation.
- CI: id_doc_deploy no longer used
Documentation publishing is now via gitlab pages, and not via SSH key-based login to a remote host.
- MNT: Adjust
immv
/imcp
so that they supportFSLOUTPUTTYPE=ANALYZE
- MNT: Remove some obsolete warning suppression logic, and suppress nibabel warning when converting to NIFTI2
- REL: 3.14.0
- REL: 3.14.0
- REL: 3.14.0
- REL: 3.14.0
- REL: 3.14.1
Detailed history
- BF: Accidentally removed tbss from fsl.wrappers namespace
- DOC: Sphinx fixes
- DOC: Fix references, mock dill in doc build environment
- DOC: Changelog
- ENH: New option to compose function allowing order of scale/origin translate to be changed, with the effect that the position of the origin will not be changed by the scaling parameters
- CI: Allow tests to be skipped via SKIP_TESTS env var
- TEST: Test origin preservation
- DOC: Changelog, apidocs
- MNT: Notifier callback functions can now be no-args
- DOC: Changelog
- TEST: Test noargs callback function
- MNT: Automatically set sform for FNIRT displacement fields which do not have their sform set
- MNT: Replace setup.py with pyproject.toml
- CI: update doc/dist build commands, remove some cruft
- MNT: Remove coveragerc
- CI: id_git no longer exists
- MNT: no more setup.py
- MNT: pass args directly to pytest, another setup.py ref
- TEST: Move tests into fsl package
- CI: update test paths
- MNT: Move conftest to root. Don't include tests in built wheels
- TEST: More updated test paths
- TEST: Change pytest import mode so that pytest does not mess with sys.path
- MNT: wrong path
- CI: sphinx-build, not sphinx build
- MNT: Wrong path again
- BF: Did not mean to add this
- DOC: Changelog
- CI: rename default branch to main
- MNT: Use atlasquery not atlasq in cli help
- ENH: New afffine.flip function; make scaleOffsetXform args optional
- DOC: Update readme r.e. move to pyproject.toml
- DOC: Changelog
- MNT: Don't apply boundary offset
- TEST: Basic teSt for affine.flip
- CI: id_doc_deploy no longer used
- MNT: change to f-strings
- MNT: Add file type enumeration to Image class, and fileType function which infers type of a file. Adjust immv/imcp so that they support FSLOUTPUTTYPE=ANALYZE
- TEST: Don't set FSLOUTPUTTYPE in env
- TEST: Make sure that immv/imcp performs file type conversions correctly
- DOC: Changelog
- DOC: CHangelog
- MNT: Remove some obsolete warning suppression. Suppress nibabel warning when converting to NIFTI2
- DOC: additional entry in changelog regarding immv/imcp
- MNT: Version
- CI: Wrong venv path
- CI: Wrong docker image for doc build
- CI: fix images/commands used for pypi dist build job
- BF: Image setitem notifier was returning the un-normalised slice object, instead of the normalised one (with trailing dimensions of length 1 removed)
- DOC: Changelog
- TEST: Regression test for setitem callback value
- CI: Don't run tests on upstream/main, as they will have already been run on the MR branch
- MNT: Post-release version bump
- CI: allow tests to be skipped via commit message [skip-tests]
fsl-avwutils 2209.1 -> 2209.2
- RF: Change
fslchfiletype
to rely onimcp
doing the type conversion
In FSL 5.0.11, the imcp
and immv
commands were updated to honour the $FSLOUTPUTTYPE
environment variable and to potentially convert image files, rather than just copying them.
Unfortunately at that time we failed to notice that fslchfiletype
relied on immv
performing a naive copy, and so since then fslchfiletype
has not worked correctly in some circumstances.
This MR updates fslchfiletype
so that it performs the file conversion by setting $FSLOUTPUTTYPE
and then calling imcp
. A small suite of unit tests are also included, to validate the behaviour of fslchfiletype
.
The binary fslchfiletype.cc
executable (installed to fslchfiletype_exe
) as been removed, but a copy of the fslchfiletype
script is installed to fslchfiletype_exe
in case anybody was directly calling the binary.
Detailed history
- RF: Change fslchfiletype to rely on immv doing the type conversion
- MNT,TEST: Remove fslchfiletype binary as it is no longer used. Add fslchfiletype unit tests
- TEST: Add additional tests to check fslchpixdim copy/inplace semantics
- TEST: enumerate over file types for copy/inplace semantics tests
fsl-installer 3.5.5 -> 3.5.6
- BF: Context.admin_password was returning None on first call
Detailed history
- BF: admin_password was returning None on first call
- DOC: changelog
- MNT: replace setup.py with pyproject.toml
- CI: Rename default branch to main
- RF: Make Context.admin_password trigger evalution of need_admin. Make sure destdir is abspathed when specified at Context creation
- TEST: fix dir in pyproject, add context test
- TEST: Mark test which will fail if run by root user
- CI: Run noroottests as non-root user
fsl-newimage 2203.10 -> 2203.11
- BF: Fix NIfTI file format identifier names
It seems that file format identifier names were inadvertently changed in a search+replace mishap. This would have affected uses of the fslchfiletype
command, with the NIFTI_PAIR
, NIFTI_PAIR_GZ
, NIFTI2_PAIR_GZ
, or NIFTI2_PAIR_GZ
identifiers.
Detailed history
- BF: It seems that file format identifier names were inadvertently changed in a search+replace mishap
- TEST: Regression test for file formats