Skip to content

Releases: gallantlab/pycortex

v1.3.2

11 May 15:48
a10f381

Choose a tag to compare

What's Changed

Bug fixes

  • FIX WebGL viewer hover/click readout for Vertex2D / Volume2D (#634) by @mvdoc in #635
  • FIX DataView.loaded race causing blank canvas in multi-data viewers (#637) by @mvdoc in #638

Maintenance

  • TST harden headless tests against CI timeouts by @mvdoc in #639

Full Changelog: v1.3.1...v1.3.2

v1.3.1

10 May 16:38
6c37dd7

Choose a tag to compare

What's Changed

Bug fixes

  • FIX use PIL instead of ImageMagick to trim headless view whitespace by @mvdoc in #607
  • FIX deprecated scipy APIs by @kroq-gar78 in #609
  • Fix docs version display and update copyright to Gallant Lab by @Copilot in #614
  • FIX NaN values in Volume/Vertex rendering as black instead of transparent by @Copilot in #612
  • FIX typo that caused webgl shaders not to be set by @kroq-gar78 in #620
  • FIX Inkscape version detection when diagnostic messages precede version output by @Copilot in #624
  • FIX Vertex objects without NaNs rendering as fully transparent (#626) by @mvdoc in #627
  • FIX dataset dropdown auto-resizes to fit long dataset names by @mvdoc in #630
  • Split 'r' hotkey: fold-only vs full view reset by @Copilot in #617
  • Disable flatmap tilt by default; respect allow_tilt checkbox in controls by @Copilot in #618
  • FIX VertexRGB/VolumeRGB alpha attenuation in WebGL viewer by @mvdoc in #632

Maintenance

  • MNT CI and README maintenance by @mvdoc in #605
  • TST add comprehensive headless WebGL rendering tests by @mvdoc in #606
  • Bump codecov/codecov-action from 5 to 6 by @dependabot[bot] in #615
  • CI: cancel stale PR runs and improve Playwright cache reuse by @mvdoc in #633

Full Changelog: v1.3.0...v1.3.1

v1.3.0

22 Mar 00:02
9d07c81

Choose a tag to compare

v1.3.0

This release brings major improvements to pycortex's rendering and RGB visualization workflows. The new headless webviewer lets you generate 3D brain snapshots entirely from scripts, notebooks, and CI pipelines; no browser window required. The RGB color range API has been overhauled to support per-channel vmin/vmax control, giving you much finer control over how multi-channel data is displayed. Several long-standing issues with the webviewer crashing Jupyter kernels have also been resolved.

Enhancements

  • Headless webviewer for automated save_3d_views (#604, @kroq-gar78). Playwright-backed headless rendering lets you run cortex.export.save_3d_views and cortex.export.plot_panels without a browser window. It works in CI, scripts, and Jupyter notebooks. Install with pip install pycortex[headless].
  • Unified VolumeRGB / VertexRGB signatures (#599, @mvdoc). Fixes #579.
  • More useful error message for missing surfaces (#593, @kroq-gar78).
  • Type annotations for the frontend (#597, @kroq-gar78).

⚠️ Breaking change

VolumeRGB / VertexRGB: new color range API (#603). The arguments shared_range, shared_vmin, and shared_vmax have been replaced with autorange, vmin, and vmax.

Before (v1.2.x):

cortex.VolumeRGB(red, green, blue, shared_range=True, shared_vmin=-3, shared_vmax=3)

After (v1.3.0):

cortex.VolumeRGB(red, green, blue, autorange="shared", vmin=-3, vmax=3)

autorange accepts "shared" or "individual". vmin/vmax now accept either a single float (applied to all channels) or a 3-tuple for per-channel control. When vmin/vmax are provided, they override autorange. See #603 for details.

Bug fixes

Maintenance

Full Changelog: v1.2.14...v1.3.0

v1.2.14

27 Jan 02:12
5602ec7

Choose a tag to compare

MNT fixing release action

Full Changelog: v1.2.13...v1.2.14

v1.2.13

27 Jan 02:07
e50b11f

Choose a tag to compare

What's Changed

  • FIX error if unsupported kwargs in make_figure by @kroq-gar78 in #585
  • FIX pass freesurfer_subject_dir to get_surf() in cut_surface() (#591) by @mvdoc in #592
  • MNT Automate version management with setuptools-scm and simplify release workflow by @Copilot in #587
  • Bump actions/checkout from 5 to 6 by @dependabot[bot] in #582
  • Bump JamesIves/github-pages-deploy-action from 4.7.3 to 4.7.4 by @dependabot[bot] in #581
  • Bump JamesIves/github-pages-deploy-action from 4.7.4 to 4.7.6 by @dependabot[bot] in #589
  • Bump actions/cache from 4 to 5 by @dependabot[bot] in #588
  • Bump JamesIves/github-pages-deploy-action from 4.7.6 to 4.8.0 by @dependabot[bot] in #590

Full Changelog: 1.2.12...v1.2.13

1.2.12

13 Dec 00:08

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 1.2.11...1.2.12

1.2.11

07 Feb 21:52

Choose a tag to compare

What's Changed

  • NF: add config option for uniform lighting by @MShinkle in #561
  • FIX: Python 3.13 compatibility, and upgrade to Cython 3 by @kroq-gar78 in #564

Dependabot

  • Bump JamesIves/github-pages-deploy-action from 4.6.3 to 4.6.4 by @dependabot in #554
  • Bump JamesIves/github-pages-deploy-action from 4.6.4 to 4.6.8 by @dependabot in #555
  • Bump JamesIves/github-pages-deploy-action from 4.6.8 to 4.6.9 by @dependabot in #558
  • Bump codecov/codecov-action from 4 to 5 by @dependabot in #559
  • Bump JamesIves/github-pages-deploy-action from 4.6.9 to 4.7.2 by @dependabot in #562

Full Changelog: 1.2.10...1.2.11

1.2.10

01 Sep 19:07

Choose a tag to compare

What's Changed

Full Changelog: 1.2.9...1.2.10

1.2.9

30 Aug 20:53

Choose a tag to compare

What's Changed

  • MNT,FIX test code on python 3.11, fix matplotlib register cmap by @mvdoc in #536
  • Bump JamesIves/github-pages-deploy-action from 4.6.0 to 4.6.1 by @dependabot in #537
  • NF Add functions to project volume data to surface while dealing with NaNs. by @mvdoc in #539
  • FIX np.product is deprecated in favor of np.prod by @mvdoc in #541
  • ENH better handling of temp directory for downloading subjects by @mvdoc in #540
  • FIX avoid using wget and use urllib by @mvdoc in #542
  • MNT use codecov action with token by @mvdoc in #543
  • FIX avoid using jQuery for getting numpy arrays by @mvdoc in #544
  • Bump JamesIves/github-pages-deploy-action from 4.6.1 to 4.6.3 by @dependabot in #546
  • NF add functions to compute mappers from freesurfer to WebGL by @mvdoc in #547
  • NF,DOC improve docstring for show and make_static by @mvdoc in #548
  • NF display values at vertex in webgl viewer by @mvdoc in #549
  • ENH Add option to specify which sulci to show. by @cchen23 in #550

Full Changelog: 1.2.8...1.2.9

1.2.8

26 Apr 23:21

Choose a tag to compare

What's Changed

  • FIX pass overlay_file arg when creating cutout. by @cchen23 in #496
  • FIX update URL of retinotopy dataset by @mvdoc in #499
  • ENH allow setting curvature values when starting webgl viewer by @mvdoc in #498
  • FIX ensure correct datatype for mri_surf2surf by @mvdoc in #502
  • FIX check if shapes exist before setting the labels in the WebGL viewer by @mvdoc in #501
  • FIX do not use a default layout selection for multiple volumes by @mvdoc in #503
  • FIX Improve masks returned by get_roi_masks and correctly split into left/right hemispheres by @mvdoc in #504
  • Add codespell: workflow, config and fix typos it finds by @yarikoptic in #506
  • FIX save surf2surf matrix with surface_type in filename by @mvdoc in #510
  • FIX do not register colormap if already done by @Matlmr in #512
  • MNT specify when to run actions by @mvdoc in #513
  • ADD add multiple data at the same time if data is a list by @Matlmr in #514
  • ENH,EXA add function to upsample from fsaverageX to fsaverage by @mvdoc in #519
  • ENH Add more options for freesurfer's automatic alignment, move code for FSL's automatic alignment by @mvdoc in #528
  • FIX,DOC make sure cmap filename ends with png by @mvdoc in #529
  • ENH sort subject list and improve repr of transforms by @mvdoc in #530
  • DOC Update README.md by @FrancisVila in #527
  • FIX,MNT import surfaces generated from volumes with any voxel size by @mvdoc in #531
  • FIX allow any character in mask name by @mvdoc in #533

New Contributors

Full Changelog: 1.2.7...1.2.8