Changelog

Development

  • Use python packaging utilities for distribution

8.1.0

  • custom_strings now accepts + for sites that are rotated until they fit.
  • hash_filenames option allows for very long filenames to be shortened to hashes. always will always hash the functionalisation part of the filename, and the default onerror will try to shorten the filename if an error is encountered.

8.0.0

  • The symmetry update: Symmetry is used to derive the normals used to align functional groups. Groups may be rotated differently for the same structure from version 7.
  • Groups are rotated simultaneously so they all have the same rotation relative to the reference normal.
  • Ability to specify the angles at each specific functionalisation site. Use the % in a site replacement string and the letters a to z denote angles of 0 to 360 for each site and _ can be used to create empty sites.
  • bondsonly is the default connectivity scheme.

7.2.0

  • Option to pass the provided bonding information to openbabel for UFF atom typing (for use with Materials Studio CIFs). See the bondsonly option of connectivity.
  • Output .cif files include periodic boundary information in the bonds so that they appear correctly in materials studio.

7.1.0

  • Functional groups have been cleaned and assigned IUPAC names
  • MEPO-QEq compatibility has been computed for all functional groups
  • mepo_only option will only load MEPO compatible groups
  • list_groups.py lists all the groups that have been loaded in the current context
  • In the API mepo_compliance is renamed to mepo_compatibility
  • Documentation includes the functional groups
  • 3d fingerprints can be generated by the alignment code

7.0.0

Version 7 is a complete reorganisation of the code with many compatibility breaking changes. Future development will be based on this codebase.

  • fapswitch_ prefix dropped from all the options.
  • separate scripts for different use cases:
    • cliswitch.py – for all combination replacement or interactive use
    • fapswitchd.py – start a socket server that accepts functional strings
    • webswitch.py – tornado based webapp to demonstrate functionalisation
  • functional_groups and options are now in globally accessible modules
  • -q and -v cancel each other.
  • --silent option has been removed, -qq gives the same effect
  • output text is no longer automatically wrapped
  • Collision detection now properly uses 1/2 sum of vdW radii
  • User defined socket timeout