Difference between revisions of "Version 2.3 Projects"

From Open Babel
Jump to: navigation, search
(A Chris Morley project)
Line 19: Line 19:
  
 
= Tim Vandermeersch =
 
= Tim Vandermeersch =
* Fix individual bonds in OBRotorList
+
* Add opaque pointers to all new classes (I think we should do this) '''todo'''
* Add opaque pointers to all new classes (I think we should do this)
+
 
* Documentation... '''in progress'''
 
* Documentation... '''in progress'''
* Build linux binaries
+
* Build linux binaries '''can be done after release'''
 
** Statically link everything except some low level libraries (linux-gate, libdl, libm, libc, ld-linux)
 
** Statically link everything except some low level libraries (linux-gate, libdl, libm, libc, ld-linux)
 
*** Use -static-libgcc (make sure libstdc++.a is in a -L path)
 
*** Use -static-libgcc (make sure libstdc++.a is in a -L path)
Line 37: Line 36:
 
* Optional features:
 
* Optional features:
 
** Requires Eigen2, disabled when not found
 
** Requires Eigen2, disabled when not found
** Add automorphism algorithm with acceptable back-end (bliss or custom mapper). '''bliss is done but needs merging, custom not started yet'''
+
** Add automorphism algorithm with acceptable back-end (custom mapper, performance will be increased in bug fix releases). '''done'''
** Noel's Kabsch alignment (requires automorphisms) '''done, needs merging'''
+
** Noel's Kabsch alignment (requires automorphisms) '''done'''
** Genetic algorithm to generate a diverse conformer set (uses RMSD from Kabsch alignment) '''almost done'''
+
** Genetic algorithm to generate a diverse conformer set (uses RMSD from Kabsch alignment) '''done'''
 
* If there is time left:
 
* If there is time left:
** Move some tools (i.e. obconformer, obenergy, obminimize) to (o)babel
+
** Move some tools (i.e. obconformer, obenergy, obminimize) to (o)babel '''done'''
 
** Add simple file format for specifying contraints from commandline
 
** Add simple file format for specifying contraints from commandline
 
+
** Fix individual bonds in OBRotorList
 
= Chris Morley =
 
= Chris Morley =
 
* InChI 1.03
 
* InChI 1.03

Revision as of 12:09, 3 August 2010

This page itemizes some projects targeted for release in version 2.3.

  • Further Software Archeology and cleanup
  • Use Cmake to build all platforms in progress
  • Improved documentation, including more C++ and Python example code in progress
  • Test suite improvements using Ctest and Cdash -- automated nightly testing on Linux, Windows, and Mac in progress
  • New 2D structure layout code done?
  • Improved stereochemistry
  • Improved aromaticity / Kekulization done?
    • Do we want to fix the electron contributions before release?
  • New file formats
    •  ???
  • Added data types
    • Raman vibrational modes
    • Electronic structure (i.e., orbital energies)
    • Conformers from geometry optimizations
    • NMR data from QM codes
  • Spectrophores in progress

Tim Vandermeersch

  • Add opaque pointers to all new classes (I think we should do this) todo
  • Documentation... in progress
  • Build linux binaries can be done after release
    • Statically link everything except some low level libraries (linux-gate, libdl, libm, libc, ld-linux)
      • Use -static-libgcc (make sure libstdc++.a is in a -L path)
      • inlcude all static libraries like source files (libz.a, libxml2.a, libopenbabel.a, ...)
      • include all formats in the commandline
    • Compile in debian "sarge" chroot (easy to setup using debootstrap)
      • Older linux is needed for older libc version
      • libc is system specific (i.e. kernel version) but backwards & ABI compatible for years
      • Using debian "sarge" results in binaries usable on all linux systems with kernel 2.2.10 and later
      • This is how most projects seem to do this (e.g. Qt >=2.2.5, ...)
    • Only babel will be build containing all formats and libraries
    • Wrapper scripts can be provided
    • Add this to cmake?
  • Optional features:
    • Requires Eigen2, disabled when not found
    • Add automorphism algorithm with acceptable back-end (custom mapper, performance will be increased in bug fix releases). done
    • Noel's Kabsch alignment (requires automorphisms) done
    • Genetic algorithm to generate a diverse conformer set (uses RMSD from Kabsch alignment) done
  • If there is time left:
    • Move some tools (i.e. obconformer, obenergy, obminimize) to (o)babel done
    • Add simple file format for specifying contraints from commandline
    • Fix individual bonds in OBRotorList

Chris Morley

  • InChI 1.03
    • Update InChIFormat to allow non-standard InChI to be written
    • Sort out pre-compiled Windows DLL. (They didn't provide the necessary lib!)