Thanks Chris,

 

Good point. We can get on this. I’ll investigate putting in a quick fix.

 

The requirement for numpy<2 stems from complications with building cython utilities. I think we should ditch these utilities and instead rely on prebuilt tools (eg scipy). It sacrifices some minor runtime, but will relieve major distribution headache. That project is a bit more involved but hopefully we can get to it soon.

 

Andrew

 

 

From: Rorden, Chris <RORDEN@mailbox.sc.edu>
Date: Thursday, August 14, 2025 at 12:22 PM
To: freesurfer@nmr.mgh.harvard.edu <freesurfer@nmr.mgh.harvard.edu>, Hoopes, Andrew <AHOOPES@mgh.harvard.edu>
Subject: Surfa update

        External Email - Use Caution       

Hello


Would it be possible to release a version of surfa that uses numpy 2? For examples, the original version of synthsr and the one included with FreeSurfer rely on Python versions that are end of life. I upgraded this to use up to Python 3.13 (latest version supported by TensorFlow), but the Surfa support demand for numpy 1 requires special environment so it does not play well with other tools (surfa pyproject.toml notes 'numpy<2.0’).

I really do not want to maintain a separate fork, and if we could upgrade surfa the maintained FreeSurfer project could include versions of these scripts that support maintained versions of Python.

For the time being, here is my fork:
  https://secure-web.cisco.com/1Tj_72h5VBPhEzQKtS8Wnrte2Od2rEUMf2iVThbaWZrFxeDdpTGCAxq-8EdWpWtAjdhA7wJusTOsLCwaH8QnkEQ-G-sB2a_A3tnIV93ZT2HXBaLKVcel_rTlHIeRqU1szS9mKPa61yuAX70nNFXsEyVBhZ9Rsy3skZlGQKzEhtr6DBW877X7kyKt_LmIfw40eXWSDmiD7yzT4Ms5S9szaQ8_rcX4uZHUWWmDwtSBMTbaW3PhuItQq8eskaY5qRd1OYEyLyqK_q5--Lp74-upgrM4vGKGqdZYtcn_yz1MOnYwCQx5vVWV3QVFF28Jgi1v4/https%3A%2F%2Fgithub.com%2Fneurolabusc%2Fpy_synthsr


Thanks for all your work,

-chris