wiki:Dev2025-1-6

Version 2 (modified by Tom Goddard, 10 months ago) ( diff )

--

ChimeraX Developer Meeting

Attendance: Piet, Greg, Tom, Eric, Zach

January 6, 2025

Agenda

  • Possible updates Python 3.13, numpy 2, PySide6
  • Work in progress reports
  • Make Chimera end-of-life bug report and registration changes.
  • Back up the Chimera build machine to a solid state drive, Windows 7.

Discussion

  • Jinga github security alert
    • Github notice says jinga is used by ChimeraX and needs updating minor version due to security alert.
    • We will update that.
  • Python 3.13
    • ChimeraX 1.9 is at Python 3.11.
    • Should we update to Python 3.13 which was released October 2024?
    • Python project is no longer shipping new Python 3.11 binaries with patches.
    • Numpy 1 does not support Python 3.13 so we would have to also update numpy 1 to numpy 2 which may cause other third-party packages we use that want numpy 1 to fail.
    • Eric is seeing if Python 3.13 fixes the crashing kvFinder bundle on Windows.
  • Numpy 2
    • Should we update from numpy 1 (the version for the last 20 years) to numpy 2?
    • Probably needed to go to Python 3.13 because numpy 1 does not support Python 3.13. Not sure if that means they just don't make builds, or if in fact it won't build.
    • Numpy 2 made various breaking changes with the Python API (like array casting rules) that will only become apparent at runtime.
    • Numpy 2 also changes the C ABI in small ways (different structures) so all binary PyPi packages that compile against the numpy C API or use ctypes (e.g. openmm, opengl-accelerate, chimerax, ...) will need to be built for numpy 2.
  • PySide 6
    • Zach has added a USE_PYSIDE6 environment variable to build ChimeraX using PySide instead of PyQt.
    • This would allow us to not pay commercial license fees for PyQt6 since PySide6 is free and LGPL licensed.
    • It may be that PySide6 is better supported than PyQt6 because it is part of the official Qt project while PyQt is a one developer effort.
    • Alot of testing of the ChimeraX GUI would be needed to catch the API differences between PySide6 and PyQt6.
  • Piet progress
    • USC ScholAR developer has made improvements that are ready to be included in the ChimeraX ScholAR bundle.
    • Piet has started winter classes, including C programming, organic chemistry, and bioinformatics.

Action Items

Note: See TracWiki for help on using the wiki.