Avogadro 1.98.0
🌟 Highlights (tldr)
- Integration with 3Dconnexion input devices on Mac and Windows
- Many thanks to 3Dconnexion and Patryk Skowroński (@pskowronskiTDx) for this contribution (#1311)
- Improved rendering including ambient occlusion and real-time shadows from @aerkiaga
- New template tool for assembly of inorganic complexes and ligands or attaching functional groups (e.g, "click to add phenyl group") from @aerkiaga (#1075)
- New forcefield framework supporting external Python scripts (e.g., XTB, ASE, ANI-2x, etc.) @ghutchis (#1370)
- Better perception of bond orders @ghutchis
- Align tool (#1364) @ghutchis
- 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)
- 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