🌟 Highlights (tldr)
- This release is intended as a final beta before a 2.0 stable release
- Add the popular auto optimize tool
- Updated charts, including spectra using the JKQtPlotter framework
- Both macOS and Windows releases have migrated to the new Qt6 framework
- Windows releases are now offered in the Microsoft Store as well as signed MSIX packages
- Use
pixiif available to install Python and plugins - A pile of bug fixes, updated language translations, and more
✨ Features
- Add an "add molecule" + icon in the molecule list @Daniel-Aguila (#2285)
- Show frozen atoms or constrained bonds, atoms, torsions in the property views @ghutchis (#2279)
- Add UI support for freezing X, Y, Z axis @ghutchis (#2276)
- Update animation tool with start and end frames @ghutchis (#2058)
- Use JKQtPlotter for charts (e.g. spectra) @ghutchis (#2220)
- Easier to save plots to graphics, SVG, or PDF including a preview
- Add wireframe style for surfaces @ghutchis (#2201)
- Add support for UFF optimization with unit cells
- Update the ORCA input generator with support for constraints and frozen XYZ atoms
🐛 Bug Fixes
- Make isoValue in Molecular Orbital window consistent with Surfaces dialog @Kcorbyerd (#2312)
- Fix selection of atoms in orthographic projection @ghutchis (#2294)
- Disable split view to prevent crashing @ghutchis (#2298)
- Fix several bugs with UFF angle gradients found with AutoOptimize (#2240)
- Don't reset the camera when switching molecules @ghutchis (#629)
- Update the about dialog to handle light-dark themes @ghutchis (#624)
- Fix File → Close behavior @Daniel-Aguila (#623)
- Fix installation of Python with
pixi, repeatedly ask @ghutchis (#2290) - Fix overly verbose MDL / SDF debug messages about M CHG, etc. @ghutchis (#2277)
- Fix #1965 - don't create the progress box until needed @ghutchis (#2274)
- Fix crash with undo / redo from template tool @ghutchis (#2272)
- Fix the missing "close" icon for the molecule model @ghutchis (#2273)
- Fix possible crashes in cube generation due to mutex locking @ghutchis (#2267)
- Don't start the forcefield setup at launch @ghutchis (#2258)
- Fix reading MO from Molden, including correct eV conversion @ghutchis (#2237)
- Ignore the Mutex when deleting Cubes @ghutchis (#2233)
- Read and write cube data and surfaces in cjson files @ghutchis (#2230)
- Make sure to read Mulliken partial charges from fchk files @ghutchis (#2231)
- fix(XYZ): fix parser of totalEnergy @e-kwsm (#2225)
- Fix reading open-shell ORCA calculations @ghutchis (#2223)
- Check SMILES and pop up a warning if there's something wrong @ghutchis (#2206)
🚀 Performance Improvements
🧰 Maintenance
- Fix incorrect usage of .empty method when .clear() was intended @ghutchis (#2295)
- add Turbomole test and improve parser @e-kwsm (#2212)
- Fix QtTesting record scripts and playback @ghutchis (#625)
- Complete the AppxManifest @ghutchis (#615)
- Adapt Flatpak manifest for VTK->JKQtPlotter transition @matterhorn103 (#609)
- fix: explicitly include <cassert> @e-kwsm (#2288)
- Compress PNG files with ImageOptim @ghutchis (#2286)
- Add some very basic quantum IO unit tests @ghutchis (#2275)
- Add calc unit tests @ghutchis (#2269)
- Add a lot more unit cell tests @ghutchis (#2271)
- Make sure to codesign all components before notarizing @ghutchis (#2259)
- Add Qt6 packages for macOS and Windows @ghutchis (#2261, #2234)
- refactor(lexicalCast)!: use std::optional for return value @e-kwsm (#2232)
- build: update path to avogadrogenerators @e-kwsm (#2197)
- fix(Variant): remove unused char member from union, and add missing template specialization for char @e-kwsm (#2216)
- Use MACOS define instead of OSX (deprecated) @ghutchis (#2214)
- Create OSSF security scorecard.yml @ghutchis (#2209)
- Drop MMTF format test since it's unsupported. @ghutchis (#2205)
- Use vcpkg to install eigen3 libarchive libxml2 and zlib @ghutchis (#2203)
- docs: fix -Wdocument @e-kwsm (#2198)
- Try using Windows vcpkg to install Eigen for Python builds @ghutchis (#2202)
- Fix minor warnings from render layout duplicate names
📚 Translations
- Translations updates from Hosted Weblate @weblate
- Automated translation updates @github-actions[bot]
Credits
Thanks to @Daniel-Aguila for their first contribution in this release!
Thanks to many contributors, including: @Daniel-Aguila, @NorwayFun, @andibing, @arifpedia, @dependabot[bot], @e-kwsm, @ghutchis, @Kcorbyerd, @maksim2005UKR, @matterhorn103, @milotype, @oersen, @tacitcoast, @weblate, David D, Eisuke Kawashima, Otto Myers, Remus-Gabriel Chelu, Weblate Translation Memory, dependabot[bot], github-actions[bot] and btbt_bt