Avogadro 1.103 Release

We are pleased to announce the latest release of Avogadro, including piles of bug fixes and many feature enhancements. Thanks to many for suggestions, bug reports, and discussions.

Our hope is that this is the last “pre-release” and 2.0 final will come out this spring.

Draft documentation can be found at https://two.avogadro.cc

You can download Linux, Windows, and Mac versions through: Release Avogadro 1.103 · OpenChemistry/avogadrolibs · GitHub

If you have comments or suggestions, please join us at https://discuss.avogadro.cc and as always, help and contributions in many forms are always welcome, particularly if you’d like to help with user documentation or website development.

:glowing_star: Highlights (tldr)

  • Switch to use OpenGL 4.0 core profile for improved rendering speed
  • Volumetric rendering style for surfaces (orbitals, electron density, spin density)
  • Add peptide builder
  • Add keyboard shortcuts for functional groups and ligands to template tool @ghutchis
  • Display both alpha / beta orbitals in the orbital window
  • Performance optimizations for basis set calculations
  • Improved heuristics for opening CIF and crystallographic files
  • Update conformer plots for RMSD and energy
  • Support for isotope specification for atoms
  • Improved LAMMPS and Turbomole support
  • Many thanks to everyone for bug reports, suggestions and ideas!

:sparkles: Features

  • Typeset the Hall symbols using HTML @ghutchis (#2572)
  • Tweak the “Fill Unit Cell” and add “Fill Translational Cell” for DFT packages @ghutchis (#2571)
  • Add a warning if attempting to fill a primitive cell @ghutchis (#2569)
  • Allow export to the same filename (and format) from the warning dialog @ghutchis (#714)
  • Re-enable JSON-RPC support @ghutchis (#699)
  • Updated AutoSave Feature @ghutchis (#668)
  • Add an “export graphics” toolbar button @ghutchis (#681)
  • Read molfile / sdf conformers @ghutchis (#2563)
  • Add support for reading elements from VASP OUTCAR formats @ghutchis (#2567)
  • Volumetric rendering support @ghutchis (#2559)
  • Update arrow rendering for force and dipoles @ghutchis (#2545)
  • Support pdb trajectories @ghutchis (#2560)
  • Migrate to OpenGL 4.0 core profile @ghutchis (#2548)
  • Orbital table - add “occupation” arrows instead of status @ghutchis (#2542)
  • Improved Lammps import @e-kwsm (#2504)
  • feat(CrystalTools): enable rotateToStandardOrientation to convert cell to right-handed system @e-kwsm (#2492)
  • Set a better default zoom for orthographic projection @ghutchis (#2480)
  • Change shift modifier to twist, not twist-and-zoom @ghutchis (#2476)
  • Tweak edit and template tool to rotate, etc. with modifier keys @ghutchis (#2475)
  • Add imported spectra, vibrational and magnetic CD support to spectra dialog @ghutchis (#2444)
  • Add support for custom residue labels @ghutchis (#2424)
  • Put the axes back as a scene plugin / display type @ghutchis (#2423)
  • feat(Turbomol): output $isosub @e-kwsm (#2393)
  • fix(Turbomole): use $coord angs for read @e-kwsm (#2418)
  • Turbomole: support $periodic @e-kwsm (#2379)
  • Update Conformer plots for RMSD and Energy @ghutchis (#2382)
  • Add peptide builder @ghutchis (#2351)
  • Enable the XRD display from other programs (just return a spectra) @ghutchis (#2385)
  • Fixes to constraints dialog @jcerezochem (#2384)

:bug: Bug Fixes

  • Fix formula computation with unit cells to account for edges and corners @ghutchis (#2587)
  • Use a looser criteria for detecting identical atoms with Fill Cell @ghutchis (#2578)
  • Added code to handle corrupted CJSON input (#2578)
  • Fix incorrect layer info in CJSON @ghutchis (#2568)
  • During animation and vibrations, don’t update properties frequently @ghutchis (#2536)
  • Ensure end frame value is properly set in playertool @ghutchis (#2539)
  • Add a guard against recursion for property tables @ghutchis (#2535)
  • Use LC_NUMERIC=C for AppImage run script @ghutchis (#2533)
  • Redraw the plot when changing spectra shift and offset @ghutchis (#2532)
  • Re-enable editing the molecule name, broken by #2523 @ghutchis (#2531)
  • Fix issues for interactive undo/redo crashes @ghutchis (#2524)
  • fix(Hdf5DataFormat): fix memory leak @e-kwsm (#2511)
  • Only request name updates when the dialog is open @ghutchis (#2523)
  • Fix a crash when deleting atoms from an imported molecule @ghutchis (#2513)
  • Fix crash when using the align tool and switching molecules @ghutchis (#2515)
  • Running commands with pixi would fail because asyncExecute was called @ghutchis (#2510)
  • Migrate the name code away from the model - hopefully less crash-prone @ghutchis (#2509)
  • For orthographic projection go back to frustrum planes @ghutchis (#2482)
  • Fix jump in light source from opaque to translucent @ghutchis (#2481)
  • If we encounter a 2D molfile use the Open Babel support @ghutchis (#2464)
  • Fix signal to display surfaces after generation @ghutchis (#2457)
  • Ignore some Open Babel formats for writing (e.g., png, nul) @ghutchis (#2455)
  • Validate colors with the color button before use (e.g., cancel) @ghutchis (#2454)
  • Validate property edits to make sure inadvertent edits set to zero @ghutchis (#2450)
  • Fix CML support with HDF5 data files @ghutchis (#2446)
  • Fix NWChem geometry parsing @ghutchis (#2439)
  • Adjust the N-H dihedral angle to work better in folded states @ghutchis (#2438)
  • Ensure we can read NWChem files with lowercase element symbols @ghutchis (#2434)
  • Fix import of large (>1000 atom) MOPAC aux files @ghutchis (#2426)
  • Fix off-by-one MO rendering bug with MOPAC orbitals @ghutchis (#2422)
  • Adjust surface generation to keep winding consistent + and - mesh @ghutchis (#2420)
  • Fixed color gradient for labeling by atomic index @brockdyer03 (#2387)
  • Fix reading energies in xyz files from crest @ghutchis (#2381)
  • Check for a working python in the pixi env @ghutchis (#2377)
  • Reject invalid bond orders in cjson @ghutchis (#2374)
  • Fix reading Molden files from ORCA with spherical basis @ghutchis (#2373)
  • Fix reading XYZ files with no ending newline @ghutchis (#2371)
  • Fix numeric issue with centroid and center-of-mass @ghutchis (#2369)
  • If pixi is available, but not a default manifest, try python @ghutchis (#2358)
  • Fix a crash with reading ORCA when no MO coefficients are found @ghutchis (#2355)
  • Fix zoom with orthographic projection - make sure to resetCamera @ghutchis (#688)
  • Fix checking for display types - also check against names @ghutchis (#682)

:rocket: Performance Improvements

  • Optimizations for basis set calculations @ghutchis (#2540)

:toolbox: Maintenance

  • Fix USE_PLOTTER to allow builds to disable JKQtPlotter and charts
  • Try copying Qt6 DLLs seemingly left out of Windows installer @ghutchis (#2570)
  • Add [[nodiscard]] to all read and write methods @ghutchis (#2566)
  • Some packaging fixes @ghutchis (#2551)
  • Make sure to include Qt6 icu.dll in Windows builds @ghutchis (#2544)
  • Work to speed up Windows builds @ghutchis (#2518)
  • For now, disable builds with Windows ARM @ghutchis (#2516)
  • fix: correct broken links @antonkesy (#2503)
  • fix: correct supportedOperations @e-kwsm (#2489)
  • Use --as-is flag for pixi run to avoid environment updates @harikrishna-au (#2472)
  • fix: do not discard return value of QFile::open() @e-kwsm (#2448)
  • fix: add missed header inclusion @e-kwsm (#2447)
  • test: refactor UffGradientTest @e-kwsm (#2494)
  • refactor: tweak usage of std::max and std::min @e-kwsm (#2502)
  • fix(UFF): clamp acos argument to avoid NaN @e-kwsm (#2499)
  • build(python)!: change install destination @e-kwsm (#2465)
  • Update installation instructions and links in README @ghutchis (#2413)
  • fix: replace deprecated eigen method @e-kwsm (#2409)
  • build!: drop Qt5 @e-kwsm (#2366)
  • fix: use nullptr instead of 0/NULL @e-kwsm (#2365)
  • AvogadroLibsConfig.cmake: Find JKQTPlotter6 @heirecka (#2357)
  • Add a cache for vcpkg to speed Windows rebuilds @ghutchis (#2363)
  • Fix Mac volume names and escape Windows paths @ghutchis (#2362)
  • Fix release tag reference in upload action @ghutchis (#2361)
  • Add a “continuous” release (prelease) and upload builds @ghutchis (#2360)
  • Fix path to entitlemenets for Mac codesign @ghutchis (#2349)
  • chore: fix HTML link @e-kwsm (#708)

:books: Translations

  • Mark the homepage URL as non-translatable @ghutchis (#710)
  • Rename View Configuration dock to better reflect its function @matterhorn103 (#482)
  • Move close contact and noncovalent i18n to cpp files @ghutchis (#2558)
  • Automated translation updates @github-actions[bot] (#2526)
  • chore: translate Qt messages @e-kwsm (#2491)

Credits

Thanks to many contributors, including: @NorwayFun, @andibing, @antonkesy, @arifpedia, @brockdyer03, @dependabot[bot], @e-kwsm, @ghutchis, @harikrishna-au, @heirecka, @jcerezochem, @maksim2005UKR, @milotype, @weblate, Alexandre R Soares, Eisuke Kawashima, Frank Hoffmann, Javier Cerezo, Remus-Gabriel Chelu, @DJ-Aswin, @andibing, @arifpedia, @matterhorn103, @oersen, @vinayakjeet, David D., Weblate Translation Memory, dependabot[bot] and github-actions[bot]

3 Likes