Skip to content

Releases: openbabel/openbabel

Open Babel 3.1.1

08 May 15:45
cbd4db4
Compare
Choose a tag to compare

This version primarily reflects fixes for packaging on Linux and FreeBSD relative to 3.1.0. No features or significant bug fixes were involved.

Open Babel 3.1.0

05 May 21:02
1e593ab
Compare
Choose a tag to compare

This version represents additional API and is backwards-compatible with the 3.0 release.

Significant features and fixes

  • Fixed tautomer code (by timvdm #2171)
  • New functionality: Support for periodic boundary conditions. See additional option -p for MMCIF format, and write option 'g' for CIF. (by bbucior, #1853)
  • New functionality: Add distance geometry method (by n-yoshikawa, #1875, by timvdm #2158)
  • Fixed crashes with new 3D coordinate generation (by timvdm #2149 and ghutchis #2150)

New features and improvements

  • New file format: Wiswesser Line Notation reader from Roger Sayle (by baoilleach, #2084)
  • New option: Add the --neutralize operation to convert charged atoms to neutral (by baoilleach, #2109)
  • Update GAS CONSTANT to 2018 CODATA recommended value (by e-kwsm, #2045)
  • Support #0 in SMARTS so that asterisks can be matched (by baoilleach, #2079)
  • Bring back support for lowercase elements and D/T in GetAtomicNum(). (by baoilleach, #2100)
  • Change docstrings of add/delete hydrogens to better reflect their functionality (by baoilleach, #2110)
  • Support kekulization of aromatic sulfoxides (by baoilleach, #2121)
  • Enable casting to StereoBase in the Python bindings (by baoilleach, #2124)
  • OBBuilder: Add error message for ring/rigid fragments with all zero coords. (by timvdm, #2149)
  • R script updates (by khoran, #2145)
  • Be more strict when parsing charges in SMILES (by baoilleach, #2132)
  • Improve tools/obconformer.cpp (by e-kwsm, #2154)

Bug fixes

  • Fix CMake error with R and C# bindings (by ghutchis, #2051)
  • Rename MAESTRO extensions from uppercase to lowercase (by baoilleach, #2053)
  • Fix file format docstrings that were causing problems with Sphinx or GUI (by baoilleach, #2054)
  • Fix BUILD_SHARED=OFF (by dkoes, #2056)
  • Fix import of openbabel (by e-kwsm, #2058)
  • Update for Open Babel 3 (by e-kwsm, #2060)
  • Fix maeparser compile error with some Boost configs (by fredrikw, #2076)
  • Find or build maeparser & coordgen libraries (by ricrogz, #2064)
  • Fix issue #2095, caused by incorrect application of protonated SMARTS (by au1985, #2102)
  • Fix issue #1794, UFF atom typing for deuterium (by ghutchis, #2114)
  • Fix segfault on SMI to InChI conversion when using "-d" (by timvdm, #2115)
  • Correct the path to the openbabel-python.cpp (by baoilleach, #2119)
  • Remove fragments with zero coordinates - fixes #2144. (by ghutchis, #2150)
  • Fix issue #2125 - Zero occupancy in cif file treated as 1.0. (by orex, #2136)
  • Fix #2071 - obrms parser segmentation fault (by e-kwsm, #2073)
  • Fix #2098 - OBDistanceGeometry is unavailable to users (by n-yoshikawa, #2105)
  • Set MAEPARSER_BUILD_SHARED_LIBS (fix #2089) (by e-kwsm, #2155)
  • Fix the import of Tkinter in Python 3+ (by mrakitin, #2157)
  • Fix for segault (with regression test) (by dkoes, #2162)
  • Follow-up with missing spelling fixes from #2163 (by mrakitin, #2166)
  • Prefer std::fabs resolves build problem on mac-current (by ghutchis, #2168)
  • Fix distance geometry stereo issues (by timvdm, #2158)
  • Merge of "Improve OBConversion::WriteString() and WriteFile() initialization" (adalke) #1923 (by baoilleach, #2176)
  • Fix output format in the cifformat writer (by afonari, #2170)

Development/Build/Install improvements

  • Avoid using namespace in headers (by e-kwsm, #2055)
  • Remove babel doc (by e-kwsm, #2057)
  • Do not hard-code Open Babel major version for include directory (by e-kwsm, #2059)
  • Patched to build on NetBSD (by voidpin, #2093)
  • Update download link (by njzjz, #2094)
  • Fix GitHub ISSUE_TEMPLATE (by RMeli, #2082)
  • Define OpenBabel3_LIBRARY (by dkoes, #2086)
  • Initial GitHub action - misspell-fixer (by ghutchis, #2163)
  • Automated GitHub builds (by ghutchis, #2165)

Cast of contributors

adalke (Andrew Dalke), afonari (Alexandr Fonari), au1985 (Alex Ustinov), baoilleach (Noel O'Boyle), bbucior (Ben Bucior), dkoes (David Koes), e-kwsm (Eisuke Kawashima), fredrikw (Fredrik
Wallner), ghutchis (Geoff Hutchison), Kamil Rytarowski, khoran (Kevin Horan), mrakitin (Maksim Rakitin), n-yoshikawa (Naruki Yoshikawa), njzjz (Jinzhe Zeng), orex (Kirill Okhotnikov), ricrogz (Ric), rmeli (Rocco Meli), Roger Sayle, timvdm (Tim Vandermeersch), voidpin (pin) , wiedi (Sebastian Wiedenroth)

Open Babel 3.0.0

10 Oct 20:41
49f9cfb
Compare
Choose a tag to compare

This release represents a major update and is strongly recommended for all users.

It also removes deprecated components and breaks the API in a few places. For information on migrating from the previous version, please see:
https://open-babel.readthedocs.io/en/latest/UseTheLibrary/migration.html#migrating-to-3-0

We intend to move to semi-annual releases in Spring and Fall, with bug fix releases as needed.

A sample of major new features:

  • Code for handling implicit hydrogens and kekulization has been entirely replaced. As well as being accurate, the new approach is much faster.
  • Speed of reading and writing SMILES has been improved by more than 50-fold.
  • Removal of the old 'babel' binary in favor of the newer 'obabel' command-line tool.
  • New improved fragment-based 3D coordinate generation code as part of Google Summer of code 2018/2019. Significantly faster and more accurate: https://doi.org/10.1186/s13321-019-0372-5
    (Please cite J. Cheminf. (2019) v11, article 49 if you use the new 3D coordinate generation.)
  • New API for handling reactions stored as molecules (e.g. Reaction InChI, etc.)
  • New API for copying part of an OBMol as a substructure
  • Support for Maestro file format, contributed by Patrick Lorton of Schrodinger

There are an incredible number of improvements, minor features and many bug fixes.

For a full list of changes and to download source packages (and eventually binaries)
https://open-babel.readthedocs.io/en/latest/ReleaseNotes/ob300.html
https://github.com/openbabel/openbabel/releases

Thanks to a cast of many for this release, particularly including Noel O'Boyle;
aandi, adalke (Andrew Dalke), adamjstewart (Adam J. Stewart), afonari (Alexandr Fonari), artoria2e5 (Mingye Wang), baoilleach (Noel O’Boyle), barrymoo (Barry Moore), bbucior (Ben Bucior), boryszef (Borys Szefczyk), camannguyen (An Nguyen), cmanion (Charles A. Manion), cowsandmilk (David Hall), cstein (Casper Steinmann), derekharmon (Derek Harmon), djhogan (Daniel Hogan), dkoes (David Koes), e-kwsm (Eisuke Kawashima), eloyfelix (Eloy Felix), fredrikw (Fredrik Wallner), ghutchis (Geoff Hutchison), hille721 (Christoph Hille), hseara (Hector Martinez-Seara), jasonychuang (Jason Huang), jeffjanes (Jeff Janes), johnmay (John Mayfield), katrinleinweber (Katrin Leinweber), keipertk (Kristopher Keipert), kyle-roberts-arzeda, langner (Karol M. Langner), lorton (Pat Lorton), mcs07 (Matt Swain), merkys (Andrius Merkys), mkrykunov, mmghahremanpour (Mohammad Ghahremanpour), mwojcikowski (Maciej Wójcikowski), n-yoshikawa (Naruki Yoshikawa), nakatamaho (Nakata Maho), nsoranzo (Nicola Soranzo), oititov (Titov Oleg), orex (Kirill Okhotnikov), pbecherer (Paul Becherer), peawagon (Jen), philthiel (Philipp Thiel), psavery (Patrick Avery), rmeli (Rocco Meli), serval2412 (Julien Nabet), sunoru, susilehtola (Susi Lehtola), tgaudin (Théophile Gaudin), theavey (Thomas Heavey), timvdm (Tim Vandermeersch), torcolvin (Tor Colvin), wojdyr (Marcin Wojdyr), xomachine (Dmitriy Fomichev), yishutu (Yi-Shu Tu)

Open Babel 3.0.0a2

03 Oct 02:03
be7cc84
Compare
Choose a tag to compare
Open Babel 3.0.0a2 Pre-release
Pre-release
openbabel-3-0-0a2

Version 3.0.0a2

Open Babel 3.0.0 alpha 1

13 Sep 20:56
5f249f9
Compare
Choose a tag to compare
Pre-release

This release is an alpha release for Open Babel 3.0 - largely to test our release procedures. Undoubtedly, things are broken. Please report them. 😄

Open Babel 2.4.1

10 Oct 16:02
Compare
Choose a tag to compare

Open Babel 2.4.1 (2016-10-10)

This release fixes library versioning on Linux and Mac OS and includes updated scripting bindings that were omitted from version 2.4.0.

Open Babel 2.4.0

21 Sep 20:00
Compare
Choose a tag to compare

Open Babel 2.4.0 (2016-9-21)

This release represents a major update and should be a stable upgrade, strongly recommended for all users.

Note that this release deprecates the babel executable in favor of obabel. A future release will remove babel entirely. For information on the differences, please see the documentation.

New file formats

  • DALTON output files (read only) and DALTON input files (read/write) (Casper Steinmann)
  • JSON format used by ChemDoodle (read/write) (Matt Swain)
  • JSON format used by PubChem (read/write) (Matt Swain)
  • LPMD's atomic configuration file (read/write) (Joaquin Peralta)
  • The format used by the CONTFF and POSFF files in MDFF (read/write) (Kirill Okhotnikov)
  • ORCA output files (read only) and ORCA input files (write only) (Dagmar Lenk)
  • ORCA-AICCM's extended XYZ format (read/write) (Dagmar Lenk)
  • Painter format for custom 2D depictions (write only) (Noel O'Boyle)
  • Siesta output files (read only) (Patrick Avery)
  • Smiley parser for parsing SMILES according to the OpenSMILES specification (read only) (Tim Vandermeersch)
  • STL 3D-printing format (write only) (Matt Harvey)
  • Turbomole AOFORCE output (read only) (Mathias Laurin)
  • A representation of the VDW surface as a point cloud (write only) (Matt Harvey)

New file format capabilities and options

  • AutoDock PDBQT: Options to preserve hydrogens and/or atom names (Matt Harvey)
  • CAR: Improved space group support in .car files (kartlee)
  • CDXML: Read/write isotopes (Roger Sayle)
  • CIF: Extract charges (Kirill Okhotnikov)
  • CIF: Improved support for space-groups and symmetries (Alexandr Fonari)
  • DL_Poly: Cell information is now read (Kirill Okhotnikov)
  • Gaussian FCHK: Parse alpha and beta orbitals (Geoff Hutchison)
  • Gaussian out: Extract true enthalpy of formation, quadrupole, polarizability tensor, electrostatic potential fitting points and potential values, and more (David van der Spoel)
  • MDL Mol: Read in atom class information by default and optionally write it out (Roger Sayle)
  • MDL Mol: Support added for ZBO, ZCH and HYD extensions (Matt Swain)
  • MDL Mol: Implement the MDL valence model on reading (Roger Sayle)
  • MDL SDF: Option to write out an ASCII depiction as a property (Noel O'Boyle)
  • mmCIF: Improved mmCIF reading (Patrick Fuller)
  • mmCIF: Support for atom occupancy and atom_type (Kirill Okhotnikov)
  • Mol2: Option to read UCSF Dock scores (Maciej Wójcikowski)
  • MOPAC: Read z-matrix data and parse (and prefer) ESP charges (Geoff Hutchison)
  • NWChem: Support sequential calculations by optionally overwriting earlier ones (Dmitriy Fomichev)
  • NWChem: Extract info on MEP(IRC), NEB and quadrupole moments (Dmitriy Fomichev)
  • PDB: Read/write PDB insertion codes (Steffen Möller)
  • PNG: Options to crop the margin, and control the background and bond colors (Fredrik Wallner)
  • PQR: Use a stored atom radius (if present) in preference to the generic element radius (Zhixiong Zhao)
  • PWSCF: Extend parsing of lattice vectors (David Lonie)
  • PWSCF: Support newer versions, and the 'alat' term (Patrick Avery)
  • SVG: Option to avoid addition of hydrogens to fill valence (Lee-Ping)
  • SVG: Option to draw as ball-and-stick (Jean-Noël Avila)
  • VASP: Vibration intensities are calculated (Christian Neiss, Mathias Laurin)
  • VASP: Custom atom element sorting on writing (Kirill Okhotnikov)

Other new features and improvements

  • 2D layout: Improved the choice of which bonds to designate as hash/wedge bonds around a stereo center (Craig James)
  • 3D builder: Use bond length corrections based on bond order from Pyykko and Atsumi (http://dx.doi.org/10.1002/chem.200901472) (Geoff Hutchison)
  • 3D generation: "--gen3d", allow user to specify the desired speed/quality (Geoff Hutchison)
  • Aromaticity: Improved detection (Geoff Hutchison)
  • Canonicalisation: Changed behaviour for multi-molecule SMILES. Now each molecule is canonicalized individually and then sorted. (Geoff Hutchison/Tim Vandermeersch)
  • Charge models: "--print" writes the partial charges to standard output after calculation (Geoff Hutchison)
  • Conformations: Confab, the systematic conformation generator, has been incorporated into Open Babel (David Hall/Noel O'Boyle)
  • Conformations: Initial support for ring rotamer sampling (Geoff Hutchison)
  • Conformer searching: Performance improvement by avoiding gradient calculation and optimising the default parameters (Geoff Hutchison)
  • EEM charge model: Extend to use additional params from http://dx.doi.org/10.1186/s13321-015-0107-1 (Tomáš Raček)
  • FillUnitCell operation: Improved behavior (Patrick Fuller)
  • Find duplicates: The "--duplicate" option can now return duplicates instead of just removing them (Chris Morley)
  • GAFF forcefield: Atom types updated to match Wang et al. J. Comp. Chem. 2004, 25, 1157 (Mohammad Ghahremanpour)
  • New charge model: EQeq crystal charge equilibration method (a speed-optimized crystal-focused charge estimator, http://pubs.acs.org/doi/abs/10.1021/jz3008485) (David Lonie)
  • New charge model: "fromfile" reads partial charges from a named file (Matt Harvey)
  • New conversion operation: "changecell", for changing cell dimensions (Kirill Okhotnikov)
  • New command-line utility: "obthermo", for extracting thermochemistry data from QM calculations (David van der Spoel)
  • New fingerprint: ECFP (Geoff Hutchison/Noel O'Boyle/Roger Sayle)
  • OBConversion: Improvements and API changes to deal with a long-standing memory leak (David Koes)
  • OBAtom::IsHBondAcceptor(): Definition updated to take into account the atom environment (Stefano Forli)
  • Performance: Faster ring-finding algorithm (Roger Sayle)
  • Performance: Faster fingerprint similarity calculations if compiled with -DOPTIMIZE_NATIVE=ON (Noel O'Boyle/Jeff Janes)
  • SMARTS matching: The "-s" option now accepts an integer specifying the number of matches required (Chris Morley)
  • UFF: Update to use traditional Rappe angle potential (Geoff Hutchison)

Language bindings

  • Bindings: Support compiling only the bindings against system libopenbabel (Reinis Danne)
  • Java bindings: Add example Scala program using the Java bindings (Reinis Danne)
  • New bindings: PHP (Maciej Wójcikowski)
  • PHP bindings: BaPHPel, a simplified interface (Maciej Wójcikowski)
  • Python bindings: Add 3D depiction support for Jupyter notebook (Patrick Fuller)
  • Python bindings, Pybel: calccharges() and convertdbonds() added (Patrick Fuller, Björn Grüning)
  • Python bindings, Pybel: compress output if filename ends with .gz (Maciej Wójcikowski)
  • Python bindings, Pybel: Residue support (Maciej Wójcikowski)

Development/Build/Install Improvements

  • Version control: move to git and GitHub from subversion and SourceForge
  • Continuous integration: Travis for Linux builds and Appveyor for Windows builds (David Lonie and Noel O'Boyle)
  • Python installer: Improvements to the Python setup.py installer and "pip install openbabel" (David Hall, Matt Swain, Joshua Swamidass)
  • Compilation speedup: Speed up compilation by combining the tests (Noel O'Boyle)
  • MacOSX: Support compiling with libc++ on MacOSX (Matt Swain)

Cast of contributors

Alexandr Fonari, Anders Steen Christensen, Andreas Kempe, arkose, Benoit Leblanc, Björn Grüning, Casper Steinmann, Chris Morley, Christoph Willing, Craig James, Dagmar Lenk, David Hall, David Koes, David Lonie, David van der Spoel, Dmitriy Fomichev, Fulvio Ciriaco, Fredrik Wallner, Geoff Hutchison, Heiko Becker, Itay Zandbank, Jean-Noel Avila, Jeff Janes, Joaquin Peralta, Joshua Swamidass, Julien Nabet, Karol Langner, Karthik Rajagopalan, Katsuhiko Nishimra, Kevin Horan, Kirill Okhotnikov, Lee-Ping, Matt Harvey, Maciej Wójcikowski, Marcus Hanwell, Mathias Laurin, Matt Swain, Mohamad Mohebifar, Mohammad Ghahremanpour, Noel O'Boyle, Patrick Avery, Patrick Fuller, Paul van Maaren, Peng Bai, Philipp Thiel, Reinis Danne, Roger Sayle, Ronald Cohen, Scott McKechnie, Stefano Forli, Steve Roughley, Steffen Moeller, Tim Vandermeersch, Tomas Racek, Tomáš Trnka, Tor Colvin, Torsten Sachse, Yi-Shu Tu, Zhixiong Zhao