Release notes v2.0.0#

Quick Overview#

  • First stable release of FURY built on pygfx/wgpu, replacing the legacy VTK-based rendering pipeline.

  • Added a migration guide to help users transition from FURY 0.12.x to v2.0.0.

  • Completed the UI framework port to the v2 architecture: TextBox2D, ComboBox2D, ListBox2D, Card2D, TabUI, ImageContainer2D, RangeSlider, LineDoubleSlider2D, RingSlider2D, PlaybackPanel, and Radio Button/Checkbox components.

  • Ported the Animation Timeline and Camera Animation systems from VTK to pygfx.

  • Added new actors and features, including Network Visualization, per-instance geometry parameters for actors, and a chunked Vector Field actor for large datasets.

  • Revamped the FURY website with a new homepage, light/dark theming, community page, and improved documentation footer.

  • Added new demos and examples: Flight Simulator, Solar System Animation, and an interactive science domain showcase.

  • Numerous bug fixes and stability improvements across actors, UI event handling, and the documentation build pipeline.

Details#

GitHub stats for 2026/04/03 - 2026/08/03 (tag: v2.0.0a7)

These lists are automatically generated, and may be incomplete or contain duplicates.

The following 7 authors contributed 254 commits.

  • Aditya Gupta

  • JigyasuRajput

  • Maharshi Gor

  • Medha Bhardwaj

  • Praneeth Shetty

  • Serge Koudoro

  • williamcancodee

We closed a total of 123 issues, 99 pull requests and 24 regular issues; this is the full list (generated with the script tools/github_stats.py):

Pull Requests (99):

  • #1302: Add migration guide for FURY 0.12.x to v2.0.0

  • #1316: Update pre-commit hooks

  • #1314: Seo optimization cherrypick

  • #1315: BF: backreference warning fix

  • #1312: Revamp FURY website

  • #1313: RF: Update the code to set unset env variables without needing to set…

  • #1310: BF: macOS glfw warning fix

  • #1305: NF: Porting Radio button and check box.

  • #1309: Update pre-commit hooks

  • #1308: Bump actions/setup-python from 6 to 7 in the actions group

  • #1306: BF: Fix phantom sphere in the case of imposter (billboard) Sphere.

  • #1299: Week 7: Rounded Rectangle Research and Website Enhancements

  • #1304: Update pre-commit hooks

  • #1297: Demo: Adding Flight Simulator

  • #1303: UI: Combobox expands on TextBlock clicks

  • #1296: Week 6: Combobox UI Component and Global Theme Integration

  • #1298: Update pre-commit hooks

  • #1295: Aligns FURY text in line with the logo

  • #1259: Feat: Adding UI Event Recorder

  • #1286: BF: Dev doc builds were not generating the examples.

  • #1293: Community page (both light and dark mode)

  • #1290: MNT: Added analyze-snapshot test cases.

  • #1289: NF: Polyxios Integration.

  • #1292: Week 5: Advancing the FURY Homepage Revamp

  • #1287: UI/normalize uniform color

  • #1291: Update pre-commit hooks

  • #1288: Bump actions/cache from 5 to 6 in the actions group

  • #1284: Adds FURY next to logo in homepage in navbar

  • #1282: Override Default CSS with Custom Styles to Update Doc Page Colors

  • #1271: Introduces Combobox

  • #1280: RF: Updated the package name.

  • #1285: BF: Fixed chipping of text.

  • #1281: Implements global light mode theme for internal pages (same as homepage)

  • #1279: Week 4: UI Components and Website Homepage Revamp

  • #1272: NF: Record functionality properly added.

  • #1278: Implements global dark mode theme for internal pages (same as homepage)

  • #1274: Bump actions/checkout from 6 to 7 in the actions group

  • #1277: Update pre-commit hooks

  • #1276: Extracts shared navbar/footer styles into fury_theme.css and scope homepage.css to home.html

  • #1275: Migrate images to PNG and update logo card styling

  • #1267: refactor: enhance homepage responsiveness and refine mobile UI components

  • #1266: Implement and integrate custom documentation footer

  • #1265: Adds community and support section to homepage

  • #1270: RF: Title available in show method.

  • #1264: Adds examples gallery and installation section to the homepage

  • #1263: RF: Animation Timeline 3rd part.

  • #1268: docs: add new examples to valid list

  • #1262: Add interactive science domain showcase section to homepage (light and dark mode)

  • #1260: Adds interactive features to homepage (both dark and light mode)

  • #1258: Improve copy-to-clipboard functionality with improved UI feedback and minor refactor

  • #1257: Week 3: Expanding UI Components and Automated GIF Recording

  • #1261: CI: skip deploy and cron jobs on forks

  • #1223: Feat: Adding Network Visualization

  • #1134: Ports Textbox2d to v2 architecture

  • #1255: Update pre-commit hooks

  • #1256: Implement dark mode for the homepage on top of light mode

  • #1254: Implement custom homepage layout with hero section and navigation overrides (light mode)

  • #1241: Introduces Rangeslider and LineDoubleSlider2D

  • #1248: Introduces ListBox2D

  • #1243: Add automated GIF recording support for animation examples

  • #1250: Introduces Card 2d

  • #1253: Remove legacy custom doc UI and restore default PyData Sphinx theme

  • #1228: Feat: Adding Demos and Examples

  • #1251: Week 2: Fixing Doc Build Warnings and Improving Documentation Pipeline

  • #1252: RF: Camera Animation Port

  • #1249: Update pre-commit hooks

  • #1246: RF: Initial Animation Port from vtk to pygfx.

  • #1245: BF: Fixed missing post and release notes.

  • #1236: Tab UI Introduced

  • #1239: ImageContainer2D Introduced

  • #1227: Feat: Adding Solar System Animation Example

  • #1244: Enables strict documentation builds with warnings treated as errors

  • #1233: Integrate Version Switcher, Add Local Docs Server and Fix Version Redirection

  • #1242: Week 1: Fixing Doc Build Warnings and Introducing RingSlider

  • #1240: Update pre-commit hooks

  • #1235: Week 0 Blog

  • #1237: Fix GL01 and address SS06 warnings (after removing as exceptions from toml)

  • #1234: Update pre-commit hooks

  • #1230: MTN: Update the master with 0.12.0 release notes

  • #1232: Fix: fetch_viz_icons for icomoon icons

  • #1225: Fix: Block UI Events to not propagate to 3D Controllers

  • #1164: Fix documentation build warnings

  • #1229: MTN: Cleanup for the v2 branch.

  • #1121: Ports RingSlider2D to v2 architecture

  • #1226: Update pre-commit hooks

  • #1142: UI: Adding PlaybackPanel UI

  • #1171: ENH: Add normalize_colors() utility for standardized color input (#1089)

  • #1170: ENH: Support per-instance geometry parameters for actors

  • #1220: Update pre-commit hooks

  • #1156: Fix: Panel2D crashes when used without borders (#1155)

  • #1101: Allow create_text to accept multiple texts and materials fixes #1012

  • #1215: NF: Vector Field Actor chunked based on device limits.

  • #1217: Update pre-commit hooks

  • #1219: Bump conda-incubator/setup-miniconda from 3 to 4 in the actions group

  • #1213: Update pre-commit hooks

  • #1212: Bump peter-evans/create-pull-request from 8.1.0 to 8.1.1 in the actions group

  • #1211: Update pre-commit hooks

  • #1181: fix(docs): Implement exponential backoff for GitHub API to resolve HTTP 429/403 crashes

  • #1208: REL: release prep for 2.0.0a7

Issues (24):

  • #1122: Re-implement UI Event Recorder and Counter

  • #1173: BUG: fury.testing imports distutils.version.LooseVersion, breaking tests on Python 3.12+

  • #1188: Documentation build issues and missing dependencies

  • #1247: Animation module need update

  • #1140: [BUG] load_image() returns wrong shape for 16-bit grayscale PNG

  • #1110: Port ComboBox2D Component to v2

  • #1084: VTK version constraint prevents installation on fresh environments

  • #1139: BLD: Sphinx doc build crashes on Windows due to missing encoding in apigen.py

  • #1109: Port TextBox2D Component to v2

  • #1115: Port LineDoubleSlider2D Component to v2

  • #1117: Port RangeSlider Component to v2

  • #1111: Port ListBox2D Component to v2

  • #1113: Port Card2D Component to v2

  • #1107: Port TabUI Component to v2

  • #1108: Port ImageContainer2D Component to v2

  • #1116: Port RingSlider2D Component to v2

  • #1221: fetch_viz_icons(): icomoon.tar.gz cannot be downloaded from UW server

  • #1224: UI Interactions should not interfere with 3D Scenes

  • #1089: Standardize Color usage throughout Codebase

  • #1091: Update actors to accept individual or ndarray for actor features

  • #1222: CI: Authentication failed for https://github.com/dipy/docs.dipy.org.git/

  • #1155: Panel2D Does not work without borders

  • #1012: Provide Multiple text into one actor.

  • #924: Doc Generation Error - HTTP Error 429