Skip to content

Commit c5adcd0

Browse files
committed
Merge remote-tracking branch 'upstream/master' into rel/23.2.0
2 parents dc92a1c + dfa59db commit c5adcd0

28 files changed

+405
-105
lines changed

.github/workflows/pre-release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727
strategy:
2828
matrix:
2929
os: ['ubuntu-latest']
30-
python-version: ['3.10', '3.11']
30+
python-version: ['3.10', '3.11', '3.12']
3131
install: ['pip']
3232
check: ['tests']
3333
pip-flags: ['PRE_PIP_FLAGS']

.github/workflows/stable.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ jobs:
3030
strategy:
3131
matrix:
3232
os: ['ubuntu-latest']
33-
python-version: ['3.10', '3.11']
33+
python-version: ['3.10', '3.11', '3.12']
3434
install: ['pip']
3535
check: ['tests']
3636
pip-flags: ['']

docker/files/freesurfer7.3.2-exclude.txt

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -766,8 +766,6 @@ freesurfer/lib/tktools
766766
freesurfer/lib/vtk
767767
freesurfer/matlab
768768
freesurfer/mni-1.4
769-
freesurfer/mni/bin/autocrop
770-
freesurfer/mni/bin/check_scale
771769
freesurfer/mni/bin/correct_field
772770
freesurfer/mni/bin/crispify
773771
freesurfer/mni/bin/dcm2mnc
@@ -783,7 +781,6 @@ freesurfer/mni/bin/make_phantom
783781
freesurfer/mni/bin/make_template
784782
freesurfer/mni/bin/mincaverage
785783
freesurfer/mni/bin/mincbbox
786-
freesurfer/mni/bin/mincblur
787784
freesurfer/mni/bin/minccalc
788785
freesurfer/mni/bin/mincchamfer
789786
freesurfer/mni/bin/mincconcat
@@ -801,7 +798,6 @@ freesurfer/mni/bin/mincmakevector
801798
freesurfer/mni/bin/mincmath
802799
freesurfer/mni/bin/minc_modify_header
803800
freesurfer/mni/bin/mincpik
804-
freesurfer/mni/bin/mincresample
805801
freesurfer/mni/bin/mincreshape
806802
freesurfer/mni/bin/mincstats
807803
freesurfer/mni/bin/minctoecat
@@ -827,7 +823,6 @@ freesurfer/mni/bin/sharpen_volume
827823
freesurfer/mni/bin/spline_smooth
828824
freesurfer/mni/bin/transformtags
829825
freesurfer/mni/bin/upet2mnc
830-
freesurfer/mni/bin/volume_cog
831826
freesurfer/mni/bin/volume_hist
832827
freesurfer/mni/bin/volume_stats
833828
freesurfer/mni/bin/voxeltoworld

docs/_static/OHBM2017-poster.png

-524 KB
Loading
-55 KB
Loading

docs/_static/OHBM2018-poster.png

-465 KB
Loading
-53.3 KB
Loading
-98.9 KB
Loading

docs/outputs.rst

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -285,7 +285,7 @@ mid-thickness surface mesh::
285285
func/
286286
sub-<subject_label>_[specifiers]_space-T1w_desc-aparcaseg_dseg.nii.gz
287287
sub-<subject_label>_[specifiers]_space-T1w_desc-aseg_dseg.nii.gz
288-
sub-<subject_label>_[specifiers]_space-<space_label>_hemi-[LR]_bold.func.gii
288+
sub-<subject_label>_[specifiers]_hemi-[LR]_space-<space_label>_bold.func.gii
289289

290290
Surface output spaces include ``fsnative`` (full density subject-specific mesh),
291291
``fsaverage`` and the down-sampled meshes ``fsaverage6`` (41k vertices) and
@@ -375,6 +375,8 @@ to perform more advanced denoising or alternative combination strategies.
375375
slice as reference).
376376
Alternatively, you could manually adjust the volume onsets (e.g. as mentioned in
377377
the example above from [0, 2, 4] to [1, 3, 5]) or the event onsets accordingly.
378+
In contrast to volume onsets, event onsets need to be shifted *backward* by half a TR,
379+
for example, from [5, 10, 15] to [4, 9, 14].
378380

379381
Further information on this issue is found at
380382
`this blog post (with thanks to Russell Poldrack and Jeanette Mumford)

docs/sphinxext/github_link.py

Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,24 @@
11
"""
2-
This script comes from scikit-learn:
2+
This vendored script comes from scikit-learn:
33
https://github.com/scikit-learn/scikit-learn/blob/master/doc/sphinxext/github_link.py
44
"""
5-
from operator import attrgetter
65
import inspect
7-
import subprocess
86
import os
7+
import subprocess
98
import sys
109
from functools import partial
10+
from operator import attrgetter
1111

12-
REVISION_CMD = 'git rev-parse --short HEAD'
12+
REVISION_CMD = "git rev-parse --short HEAD"
1313

1414

1515
def _get_git_revision():
1616
try:
1717
revision = subprocess.check_output(REVISION_CMD.split()).strip()
1818
except (subprocess.CalledProcessError, OSError):
19-
print('Failed to execute git to get revision')
19+
print("Failed to execute git to get revision")
2020
return None
21-
return revision.decode('utf-8')
21+
return revision.decode("utf-8")
2222

2323

2424
def _linkcode_resolve(domain, info, package, url_fmt, revision):
@@ -30,25 +30,26 @@ def _linkcode_resolve(domain, info, package, url_fmt, revision):
3030
>>> _linkcode_resolve('py', {'module': 'tty',
3131
... 'fullname': 'setraw'},
3232
... package='tty',
33-
... url_fmt='https://hg.python.org/cpython/file/'
33+
... url_fmt='http://hg.python.org/cpython/file/'
3434
... '{revision}/Lib/{package}/{path}#L{lineno}',
3535
... revision='xxxx')
36-
'https://hg.python.org/cpython/file/xxxx/Lib/tty/tty.py#L18'
36+
'http://hg.python.org/cpython/file/xxxx/Lib/tty/tty.py#L18'
3737
"""
3838

3939
if revision is None:
4040
return
41-
if domain not in ('py', 'pyx'):
41+
if domain not in ("py", "pyx"):
4242
return
43-
if not info.get('module') or not info.get('fullname'):
43+
if not info.get("module") or not info.get("fullname"):
4444
return
4545

46-
class_name = info['fullname'].split('.')[0]
47-
if type(class_name) != str:
48-
# Python 2 only
49-
class_name = class_name.encode('utf-8')
50-
module = __import__(info['module'], fromlist=[class_name])
51-
obj = attrgetter(info['fullname'])(module)
46+
class_name = info["fullname"].split(".")[0]
47+
module = __import__(info["module"], fromlist=[class_name])
48+
obj = attrgetter(info["fullname"])(module)
49+
50+
# Unwrap the object to get the correct source
51+
# file in case that is wrapped by a decorator
52+
obj = inspect.unwrap(obj)
5253

5354
try:
5455
fn = inspect.getsourcefile(obj)
@@ -62,14 +63,12 @@ def _linkcode_resolve(domain, info, package, url_fmt, revision):
6263
if not fn:
6364
return
6465

65-
fn = os.path.relpath(fn,
66-
start=os.path.dirname(__import__(package).__file__))
66+
fn = os.path.relpath(fn, start=os.path.dirname(__import__(package).__file__))
6767
try:
6868
lineno = inspect.getsourcelines(obj)[1]
6969
except Exception:
70-
lineno = ''
71-
return url_fmt.format(revision=revision, package=package,
72-
path=fn, lineno=lineno)
70+
lineno = ""
71+
return url_fmt.format(revision=revision, package=package, path=fn, lineno=lineno)
7372

7473

7574
def make_linkcode_resolve(package, url_fmt):
@@ -84,5 +83,6 @@ def make_linkcode_resolve(package, url_fmt):
8483
'{path}#L{lineno}')
8584
"""
8685
revision = _get_git_revision()
87-
return partial(_linkcode_resolve, revision=revision, package=package,
88-
url_fmt=url_fmt)
86+
return partial(
87+
_linkcode_resolve, revision=revision, package=package, url_fmt=url_fmt
88+
)

0 commit comments

Comments
 (0)