Avogadro 1.98.0#

26 October 2023

🌟 Highlights (tldr)#

  • Integration with 3Dconnexion input devices on Mac and Windows

    • Many thanks to 3Dconnexion and Patryk Skowroński (@pskowronskiTDx)

  • Improved rendering including ambient occlusion and real-time shadows

  • New template tool for assembly of inorganic complexes and ligands or attaching functional groups (e.g, “click to add phenyl group”) (#1075)

  • New forcefield framework supporting external Python scripts (e.g., XTB, ASE, ANI-2x, etc.) (#1370)

  • Better perception of bond orders

  • Align tool (#1364)

  • Manual translate / rotate dialog

  • Fetch molecule names from PubChem, including markup

  • Commands to create centroid and center-of-mass points

  • Improved “fill unit cell” (#1375)

  • Preview images of insert molecule fragments and import crystals

  • Build improvements, including initial support for Qt6 and VTK9 fixes @cryos

  • Integrated Orca ouputfile support (from Orca-enhanced Avogadro) (#1326)

  • Add a generic compchem output reader (i.e., should automatically handle .out and .log files) (#1347)

  • Initial scripting support (e.g., used to generate preview images through a directory) (#1344)

  • Several updated toolbar icons

✨ Features#

  • Reading Gaussian fchk vibrations when present @ghutchis (#1380)

  • Add support for atom labels (e.g., C1, C2, H1…) in the coordinate editor using “L” symbol @ghutchis (#1362)

  • More pybind methods and properties @ghutchis (#1342)

  • Perceive bond orders when requested by Python scripts @ghutchis (#1211)

  • Support for color PLY format @spotenza2016 (#1177)

  • Tweak the edge detection to allow changing the strength too @ghutchis (#1140)

  • Add copy as SMILES / InChI @ghutchis (#1147)

  • Add atoms for selection in wireframe rendering @ghutchis (#1128)

  • Grab the “markup” name from the PubChem JSON response @ghutchis (#1105)

  • Estimate bond distances in template tool @aerkiaga (#1099)

  • Add formal charge combobox to template tool @aerkiaga (#1090)

  • Add support for undo/redo selections, including custom menu text. @ghutchis (#1056)

  • Add initial crystal and space group scripting, including fillUnitCell @ghutchis (#1374)

  • Initial port of align tool from Avogadro 1.x code @ghutchis (#1364)

  • Add a preview panel when PNG images are present for molecules @ghutchis (#1353)

  • Auto-select a format for the user @ghutchis (#1348)

  • Integration with 3Dconnexion input devices @pskowronskiTDx (#1311)

  • Add extension and tool register / handle commands for scripts @ghutchis (#1320)

  • Add an action to create a bond between selected atoms @ghutchis (#1303)

  • Add dialog for manual manipulation @ghutchis (#1289)

  • Read mopac vibrations @ghutchis (#1239)

  • Screen space shading @ghutchis (#1135)

  • Pick a contrasting color (vs. the background) for the text @ghutchis (#1131)

  • Add a copy button for molecular properties @ghutchis (#1119)

  • Fetch molecule names from PubChem PUG interface @ghutchis (#1103)

  • Enable Yaehmop commands - enable if in PATH @ghutchis (#1100)

  • Fix template tool, add more ligands and preview @aerkiaga (#1097)

  • Perceive bond orders @ghutchis (#1096)

  • Add support for polydentate ligand templates @aerkiaga (#1080)

  • Add commands for centroid and center-of-mass atoms @ghutchis (#1076)

  • Initial template tool @ghutchis (#1075)

  • Add default spin multiplicity methods @ghutchis (#1062)

  • Initial support for total charge and spin through CJSON. @ghutchis (#1058)

  • Add AltLoc support to PDB importer @aerkiaga (#1047)

  • Add AltLoc support to MMTF importer @aerkiaga (#1057)

🐛 Bug Fixes#

  • Add molden as a possible reader for generic .out files @ghutchis (#1409)

  • Fix a few UI / UX issues in the surface dialog @ghutchis (#1404)

  • Fix spurious “change layer” crash with the selection tool (#1406) (#1408)

  • Fix for reading imaginary vibrational frequencies in ORCA outputs. @dtelsing (#1398)

  • Ensure the VTK plot widget has a minimum size @cryos (#1231)

  • Add uncommon “ent” extension for PDB entries @ghutchis (#1144)

  • Put charge / spin in one line with two labels @ghutchis (#1143)

  • By default only enable regular cartoons @ghutchis (#1141)

  • Add VTK auto-init call, which avoids VTK context error message @ghutchis (#1115)

  • Fix some cases where bond order perception gave up @ghutchis (#1164)

  • Fix crash reading non-standard PDB file @ghutchis (#1161)

  • Tweak rendering multiple bonds, rotate 45 degree angle @ghutchis (#1191)

  • Fix a few UI / UX issues in the surface dialog (#1404)

  • Allow for reading imaginary vibrational frequencies in ORCA outputs. @dtelsing (#1398)

  • Validating filenames before opening files for read / write @ghutchis (#1367)

  • Re-enable CML fragments in case someone has old files @ghutchis (#1359)

  • Don’t bond Noble gases @ghutchis (#1357)

  • Fix autodetect for force field with inorganic complexes @ghutchis (#1337)

  • Give better warnings when scripts do not load @ghutchis (#1336)

  • Cleanup label serialize, fixing a potential crash @ghutchis (#1332)

  • Adjust nitrogen valence determination @ghutchis (#1330)

  • Fix #1317 - editor wasn’t using the format specification for parsing @ghutchis (#1327)

  • Fix #1179 (finally) setting the colors and transparency of MO @ghutchis (#1300)

  • Add OpenSSL support on Windows @ghutchis (#1273)

  • Update parsing GAMESS coordinates to store the final version @ghutchis (#1276)

  • When deleting an atom, properly adjust the hydrogens of the neighbors @ghutchis (#1236)

  • When removing an atom, remove bonded hydrogens if needed @ghutchis (#1230)

  • Fix atom index labels to start with 1, not zero, as users expect @ghutchis (#1229)

  • Fix POV-Ray mesh export @ghutchis (#1180)

  • Fix requests to the NIH resolver to use new scheme @ghutchis (#1158)

  • Fix editor smooth drag @ghutchis (#1157)

  • Mitigate bright edges in SSAO @aerkiaga (#1148)

  • Fix mis-translated export dialog @ghutchis (#1133)

  • Fix colormap vtk action @ghutchis (#1145)

  • Fix rendering bug that dropped half of the MO rendering @ghutchis (#1146)

  • Fix bug with “combined rows” like Theory / Basis set @ghutchis (#1136)

  • Catch exceptions thrown by mmtf:decode @ghutchis (#1132)

  • Make sure to add / adjust valence in the correct order @ghutchis (#1112)

  • Don’t “apply layer” if layer is already zero @ghutchis (#1108)

  • Fix bug to allow editing atom formal charges @ghutchis (#1091)

  • Fix properties menu priorities @ghutchis (#1079)

  • Fix some Edit and Build menu priorities @ghutchis (#1078)

  • Avoid using QWheelEvent::pixelDelta() on X11 @aerkiaga (#1065)

  • Fix bug selecting incorrect angle and torsion atoms @ghutchis (#1063)

🚀 Performance Improvements#

  • Switch to (fixed) faster dihedral formula @ghutchis (#1315)

  • Fix editor smooth drag @ghutchis (#1157)

  • Use singleton shaders @ghutchis (#1156)

  • Make sure to cache icons for the LayerModel @ghutchis (#1152)

  • Optimize NeighborPerceiver @aerkiaga (#1061)

🧰 Maintenance#

  • Move arc and quad mesh and linestrip convenience classes @ghutchis (#1068)

  • fix typos and punctuation inconsistency (… vs …) @e-kwsm (#1046)

  • Modernize Eigen3, GLEW and OpenGL use as imported targets @cryos (#1267)

  • CMake modernization @cryos (#1264)

  • Remove the ProtoCall code from the repository @cryos (#1260)

  • Remove the MongoChem plugin from the project @cryos (#1256)

  • ImportPQR should not delete the molecule! @cryos (#1250)

  • Port the OpenBabel plugin to work with Qt 6 @cryos (#1248)

  • VTK charts @cryos (#1247)

  • CMake modernization @cryos (#1246)

  • Qt6 porting @cryos (#1241)

  • CMake VTK updates @cryos (#1228)

  • chore: fix typos and spelling inconsistency @e-kwsm (#1174)

  • Make Python bindings build as a standalone project @yurivict (#1198)

  • Switch to using CJSON as the default format with obabel @ghutchis (#1378)

  • Fix the AppImage build for a newer base ubuntu @ghutchis (#1339)

  • CMake: Allow using externally-provided libraries @berquist (#1286)

  • Add arm64 Python wheel builds for Mac @ghutchis (#1281)

  • Now uses notarization for Mac builds @ghutchis (#1244)

  • Now uses a CodeQL scanning workflow @ghutchis

  • Avoid ambigous definition of mmtf’s is_polymer @StefanBruens (#1209)

  • Turn off deprecated declarations (e.g., Qt 5.15) @ghutchis (#1142)

  • Fix to use “eta” filenames for “C” locale @ghutchis (#1102)

  • Add Dependabot update checks for GitHub actions @ghutchis (#1083)

📚 Translations#

  • i18n: fixed & added russian translations @anmorgunov (#1137)

  • support C locale @balducci (#1101)

  • Many, many translations updates from Hosted Weblate @weblate

  • Strong translations in English, Esperanto, French, Georgian, German, Hungarian, Japanese, Korean, Portuguese, Serbian, Spanish, and Turkish.

Credits#

Thanks to many contributors, including: @DDinghoya, @DasJott, @Lisapple, @M3CG, @NorwayFun, @OfficerBrasidas, @SantosSi, @StefanBruens, @Surajjalpun2002, @WilliamBeltranC, @Xav83, @adityaomar3, @aerkiaga, @ahenao, @anmorgunov, @awvwgk, @balducci, @berquist, @comradekingu, @cryos, @dependabot, @dominikflorjan, @dtelsing, @e-kwsm, @ghutchis, @github-actions, @grsousajunior, @hgokhanb, @koenr, @matterhorn103, @mck89, @milotype, @nbehrnd, @nicolazanna, @ovari, @pskowronskiTDx, @salif, @simmon-nplob, @spotenza2016, @tacitcoast, @tictactoe101, @trollixx, @vamsibarnala, @weblate, @yurivict, Ajith, Alejandro Díaz-Moscoso, Alex B, Eisuke Kawashima, FAN JI, Hugel, Jörg S, Kateryna Golovanvoa, Patryk Skowroński, Shusong Zhang, Weblate Translators, gallegonovato and victor dargallo