Skip to content

Tags: salilab/imp

Tags

2.15.0

Toggle 2.15.0's commit message

Verified

This tag was signed with the committer’s verified signature.
benmwebb Ben Webb
IMP 2.15.0 release

- The [Homebrew](https://brew.sh/) Mac packages now support Apple Silicon.
- We no longer provide RPMs for CentOS 6, since it has reached end of life.
- Python 2.6 is no longer supported; Python 2.7 is the oldest version of
  Python that works with IMP (although Python 3 is recommended).
- IMP now requires Boost 1.53 or later; support for Boost 1.41 has been dropped.
- IMP::em::FitRestraint::cast() has been removed. Use `get_from()` instead.
- The deprecated methods IMP::SingletonContainer::get_particle(),
  IMP::PairContainer::get_particle_pair(),
  IMP::TripletContainer::get_particle_triplet(), and
  IMP::QuadContainer::get_particle_quad() have been removed. Use the
  get_contents() method instead.
- The IMP::em::CoarseCC class is deprecated. Use similarly-named free
  functions instead to calculate coarse cross correlation.
- A new numerically stable grid-based Bayesian scoring function,
  IMP::em::FitRestraintBayesEM3D, has been added for cryo-EM data. Note that
  this is still in development.
- The IMP::pmi::mmcif::ProtocolOutput constructor no longer takes a file
  handle argument, and the IMP::pmi::mmcif::ProtocolOutput::flush() method
  has been removed. Instead, use the python-ihm library to output mmCIF
  (or BinaryCIF).
- IMP can now be built using external (system) copies of the RMF and/or
  python-ihm libraries, instead of those bundled with IMP itself; use the
  `IMP_USE_SYSTEM_RMF` or `IMP_USE_SYSTEM_IHM` CMake variables.
- MRC file handling has been extended; MRC files not aligned with the xyz
  axes (mapc/mapr/maps not 1,2,3) are now automatically transposed rather than
  raising an exception, and the origin is now set from the
  nxstart/nystart/nzstart fields if present and the file origin is zero.
- New applications of IMP are now available:
  - [Integrative model of the γTuSC-Spc110 complex](https://salilab.org/gtuscSpc110)
  - [Integrative structure of the Smc5/6-Nse2/5/6 complex](https://integrativemodeling.org/systems/smc56_nse256)
- IMP's copies of the old Template Numerical Toolkit (TNT) and
  JAMA/C++ library have been removed from IMP::algebra::internal.
  Use equivalent functionality in the Eigen library instead.

2.14.0

Toggle 2.14.0's commit message

Verified

This tag was signed with the committer’s verified signature.
benmwebb Ben Webb
IMP 2.14.0 release

- All IMP.parallel worker classes are now subclasses of IMP.parallel.Worker;
  the old class names still exist as aliases, but are deprecated.
- The IMP.kinematics module has had a major overhaul.
- The Windows .exe installer now supports Python 3.9, and has dropped support
  for Python 3.5.
- New applications of IMP are now available:
  - [Integrative structures of the Nef-CD4-AP2 complex](https://salilab.org/Nef_CD4_AP2/)
  - [Integrative Modeling of Yeast Exocyst Complex](https://salilab.org/exocyst/)
  - [Integrative threading of protein structure using secondary structure elements](https://salilab.org/SSEThread/)
- Bugfix: fix near-infinite loop in FoXS JavaScript output when no models
  are fit.
- Bugfix: IMP.saxs.Restraint should now work correctly when some or all
  particles are members of rigid bodies.

2.13.0

Toggle 2.13.0's commit message

Verified

This tag was signed with the committer’s verified signature.
benmwebb Ben Webb
IMP 2.13.0 release

- Ubuntu .deb packages now use Python 3 by default (install the imp-python2
  package if you want to use Python 2) and support MPI (install the
  imp-openmpi package if you want to use the IMP::mpi or IMP::spb modules).
- A binary package is now provided for Ubuntu 20.04 LTS, Focal Fossa.
- The new IMP::sampcon module implements the protocol described in
  [Viswanath et al, 2017](https://www.ncbi.nlm.nih.gov/pubmed/29211988).
  This can be used in analysis to estimate the highest precision at which
  the sampling is exhaustive.
- RMF files, particularly those output by IMP::pmi, now contain more information
  on the restraints used, such as restraint parameters, and links to
  non-Cartesian particles containing restraint information, such as Gaussians
  used to represent EM densities, or Bayesian nuisances. Much of this
  information can now be shown in
  [ChimeraX](https://www.rbvi.ucsf.edu/chimerax/) using the
  [RMF plugin](https://github.com/salilab/rmf_chimerax).
- IMP modules that contain no C++ code can now be marked as "Python only"
  in `dependencies.py`. IMP::test, IMP::mmcif, IMP::parallel, IMP::EMageFit,
  IMP::pepdock, and IMP::saxs\_merge are so marked. This speeds up the build
  since such modules do not need to be run through SWIG or compiled, and
  saves space by eliminating their shared libraries.
- The `crosslink_restraints` argument to IMP.pmi.macros.ReplicaExchange0
  is now ignored (and deprecated). All cross-link restraints are now
  automatically added to RMF files.
- The `CrossLinkDataBase` argument to
  IMP.pmi.restraints.crosslinking.CrossLinkingMassSpectrometryRestraint
  is deprecated.  Use `database` instead.
- IMP.pmi.restraints.crosslinking.CrossLinkingMassSpectrometryRestraint now
  takes a `linker` argument which can be used to specify the chemistry of
  the linker.
- IMP.pmi.output.Output now supports output of pseudo-atomic PDBs in mmCIF
  format. This can be useful for quick visualization of output models that
  contain a large number of chains in software that does not understand
  the mmCIF IHM extension (for integrative models) or RMF.
- IMP.pmi now has improved support for RNA/DNA (previously all nucleic acid
  residues were treated as RNA). IMP.pmi.topology.Molecule now takes an
  `alphabet` argument which can be used to specify any of the alphabets
  provided in the IMP.pmi.alphabets module (amino acids, RNA, or DNA) or a
  custom alphabet.
- A new application of IMP is now available:
  - [Structural dynamics of the human COP9 signalosome revealed by cross-linking mass spectrometry and integrative modeling](https://salilab.org/CSN2019/)
- 'Object "foo" never used' warnings are now emitted only when IMP is run with
  internal checks turned on, as these warnings are primarily intended for
  IMP developers, not end users.
- Bugfix: fix infinite loop when reading some corrupt mol2 files.

2.12.0

Toggle 2.12.0's commit message

Verified

This tag was signed with the committer’s verified signature.
benmwebb Ben Webb
IMP 2.12.0 release

- The Windows .exe installer now supports Python 3.8, and has dropped support
  for Python 3.4.
- Packages are no longer provided for Ubuntu 14.04 (Trusty Tahr) since
  it has reached end of life.
- The IMP distribution now includes the IMP::bayesianem module developed at
  Institut Pasteur, Paris, for Bayesian handling of cryo-electron microscopy
  density map data. See Bonomi et al. at https://doi.org/10.1101/113951 for
  more information.
- The old IMP::pmi::representation::Representation class has been removed
  from IMP.pmi. New applications should use IMP::pmi::topology::System instead.
- The IMP::pmi::restraints::crosslinking::ISDCrossLinkMS class for handling
  crosslinking has been removed. Use
  IMP::pmi::restraints::crosslinking::CrossLinkingMassSpectrometryRestraint
  instead.
- The `rg` tool (part of the IMP::saxs module, used to compute radius of
  gyration from a SAXS profile) is now called `compute_rg` for consistency
  with other SAXS tools and to avoid conflicts with other packages.
- We now provide RPM packages for RedHat Enterprise Linux 8 (or compatible
  operating systems such as CentOS 8).
- The RPM packages for RedHat Enterprise Linux 8 and for Fedora now use
  Python 3 by default. If you need Python 2, install the IMP-python2 package
  as well.
- IMP::algebra::Rotation3D::get_derivative(),
  IMP::algebra::Rotation3D::get_gradient(),
  IMP::algebra::get_gradient_of_composed_with_respect_to_first(), and
  IMP::algebra::get_gradient_of_composed_with_respect_to_second() have been
  deprecated and are superseded by
  IMP::algebra::Rotation3D::get_gradient_of_rotated(),
  IMP::algebra::Rotation3D::get_jacobian_of_rotated(),
  IMP::algebra::get_jacobian_of_composed_wrt_first(), and
  IMP::algebra::get_jacobian_of_composed_wrt_second(), respectively. By
  default, the derivatives are now computed with respect to the unnormalized
  quaternion and do not include the normalization operation.
- New methods are added to compute adjoint derivatives (reverse-mode
  sensitivities) for compositions and actions of IMP::algebra::Rotation3D and
  IMP::algebra::Transformation3D upon 3D vectors.
- Fixed a bug in nested rigid body derivative accumulation, where derivatives
  with respect to quaternions were incorrectly projected to be orthogonal to
  the quaternion.
- Reimplemented rigid body derivative accumulation to use the new adjoint
  methods. The many-argument versions of
  IMP::core::RigidBody::add_to_derivatives(),
  IMP::core::RigidBody::add_to_rotational_derivatives(), and
  IMP::core::NonRigidMember::add_to_internal_rotational_derivatives(), which
  previously pulled adjoints from member global reference frame to member
  local reference frame and parent global reference frame are now deprecated.
  Pullback functionality is now handled by
  IMP::core::RigidBody::pull_back_members_adjoints().
- IMP::isd::Weight is now constrained to the unit simplex, and methods were
  added for adding to its derivatives. IMP::isd::Weight::add_weight() no longer
  resets all the weights to the barycenter of the unit simplex and instead
  initializes the new weight to 0. IMP::isd::Weight::get_number_of_states()
  and IMP::isd::Weight::get_nstates_key() were deprecated and superseded by
  IMP::isd::Weight::get_number_of_weights() and
  IMP::isd::Weight::get_number_of_weights_key(), respectively.

2.11.1

Toggle 2.11.1's commit message

Verified

This tag was signed with the committer’s verified signature.
benmwebb Ben Webb
IMP 2.11.1 release

- Bugfix: fix build system failures with CMake 3.12 and 3.13, and on Windows.
- Bugfix: IMP::atom::create_clone() now always copies mass, even of particles
  that are not atoms.
- Bugfix: IMP::rmf::create_hierarchies() should no longer fail with
  "The filename cannot be empty".

2.11.0

Toggle 2.11.0's commit message

Verified

This tag was signed with the committer’s verified signature.
benmwebb Ben Webb
IMP 2.11.0 release

- A number of new tutorials are now available covering a variety of topics
  from modeling complexes with IMP::pmi to writing new C++ code. See
  the [tutorial index](https://integrativemodeling.org/tutorials/) for
  more details.
- The build system has been updated to use new CMake functionality
  (if available) to detect Python. If you have CMake 3.12 or later, this should
  do a much better job of handling multiple Python installations (e.g. Macs
  with Homebrew). It will default to using Python 3. To force use of Python 2,
  pass `-DUSE_PYTHON2=on` to your CMake invocation.
- CMake files are now provided to make it straightforward to use IMP as
  a library in other programs. See
  [the tutorial](https://integrativemodeling.org/tutorials/using_cpp/develop/)
  for more details.
- CMake files are now provided to build new IMP modules outside of the IMP
  build tree (i.e. a module can be built against an IMP binary).
- The IMP::OptionParser class has been removed. Use IMP::ArgumentParser instead.
- The IMP::test::TempDir and IMP::test::RunInTempDir utility classes have been
  removed. Use the IMP::test::temporary_directory and
  IMP::test::temporary_working_directory context managers instead.

2.10.1

Toggle 2.10.1's commit message

Verified

This tag was signed with the committer’s verified signature.
benmwebb Ben Webb
IMP 2.10.1 release

- Add support for OpenCV 4.
- Fix IMP::isd `create_gmm.py` script to handle command line options correctly.
- Command line tools in the Mac and Ubuntu packages should now use system
  Python (`/usr/bin/python`), not the first Python (e.g. Anaconda Python)
  found in PATH (which might not be compatible with IMP's Python libraries).

2.10.0

Toggle 2.10.0's commit message

Verified

This tag was signed with the committer’s verified signature.
benmwebb Ben Webb
IMP 2.10.0 release

- Applications using IMP::pmi should now use the IMP::pmi::topology::System
  class to set up the system (sometimes referred to as "PMI2"), rather than
  the older IMP::pmi::representation::Representation class ("PMI1").
  This new class is faster and produces standard IMP Hierarchy objects. The
  old PMI1-style classes are deprecated in this release and will be removed
  in the next one. For support of published studies using "PMI1", a legacy
  IMP::pmi1 module is provided (to use it, simply replace all imports of
  "IMP.pmi" with "IMP.pmi1"). This module will receive only minor bug fixes,
  and no new features.
- All IMP Python command line tools now use
  [argparse](https://docs.python.org/2/library/argparse.html) rather than
  [optparse](https://docs.python.org/2/library/optparse.html) for handling
  options, as optparse is deprecated in modern Python versions. The
  IMP::OptionParser class, which extends optparse to add standard IMP options,
  is now deprecated. Use the similar IMP::ArgumentParser class instead.
- The bundled copy of [python-ihm](https://github.com/ihmwg/python-ihm) is
  updated to the latest release. This supports faster (C-accelerated) reading
  of mmCIF files, read and write support for BinaryCIF files, and support
  for output of PMI2-style models. The new IMP::atom::read_mmcif function
  allows reading a PDB file in mmCIF format, similarly to the existing
  IMP::atom::read_pdb function.
- A new application of IMP is now available:
  - [Architecture of Pol II(G) and molecular mechanism of transcription regulation by Gdown1](https://salilab.org/pol_ii_g/)
- The deprecated IMP::isd::FNormal::density() method has been removed.
  Use IMP::isd::FNormal::get_density() instead.
- Handling of quaternions (for example in the calculation of rotational
  derivatives) is now faster and more numerically stable.
- IMP::mpi now includes a workaround for an OpenMPI failure when used
  with Python, so previous hacks (building OpenMPI with the
  `--disable-dlopen` flag, or using `sys.setdlopenflags` in Python)
  should no longer be necessary.

2.9.0

Toggle 2.9.0's commit message

Verified

This tag was signed with the committer’s verified signature.
benmwebb Ben Webb
IMP 2.9.0 release

- [Eigen](https://eigen.tuxfamily.org/) is now required to build IMP.
- The Windows .exe IMP installer no longer supports Python 2.6. Python 2.7,
  3.4, 3.5, and 3.6 are supported by this installer.
- A binary package is now provided for Ubuntu 18.04 LTS, Bionic Beaver.
- The IMP::atom::setup_as_rigid_body() function has been removed.
  Use IMP::atom::create_rigid_body() instead.
- Constructors for IMP::container classes, IMP::core::BallMover,
  IMP::core::RigidBodyMover, and IMP::core::IncrementalScoringFunction taking
  a RigidBody or Particles have been removed. Use constructors taking
  ParticleIndexes instead.
- The IMP::core::ConnectivityRestraint::get_connected_pairs() method has been
  removed. Use get_connected_index_pairs() instead.
- The stats() profiling method has been removed from
  IMP::isd::GaussianProcessInterpolationRestraint and
  IMP::isd::MultivariateFNormalSufficient. Use a third party package (such as
  gperftools) for profiling instead.
- Scores in IMP.saxs (and FoXS) now use the chi-square value rather than chi.
- New applications of IMP are now available:
  - [Modeling of the entire yeast nuclear pore complex](https://salilab.org/npc2018), as well as
    [modeling of the flexible FG regions](https://salilab.org/npc_fg_2018) and
    modeling of the individual [Nup133](https://salilab.org/nup133),
    [Nup82](https://salilab.org/nup82), and
    [Pom152](https://salilab.org/pom152) subcomplexes.
  - [Modeling of the Ecm29-proteasome complex](https://salilab.org/ecm29)
- The new modules IMP::npc and IMP::npctransport provide specialized
  restraints and other functionality for modeling static nuclear pore complex
  structures and transport through these structures, respectively, although
  may also be useful for other modeling applications.
- IMP's mmCIF support for deposition of models in
  [PDB-Dev](https://pdb-dev.wwpdb.org/), in the IMP::pmi and IMP::mmcif modules,
  now utilizes the [python-ihm](https://github.com/ihmwg/python-ihm) library,
  a copy of which is included with IMP.
- RMF files now store additional metadata, such as the primary sequence of
  each chain, software used, information on each restraint (such as fit values),
  and provenance (classes derived from IMP::core::Provenance) that describes
  transformations of the system, such as initial input from a PDB file,
  sampling, clustering, and filtering.
- The new experimental IMP::mmcif module allows generating basic mmCIF files
  directly from an IMP::Model and/or RMF files.

2.8.0

Toggle 2.8.0's commit message

Verified

This tag was signed with the committer’s verified signature.
benmwebb Ben Webb
IMP 2.8.0 release

- New applications of IMP are now available:
  - [Modeling of the yeast Spindle Pole Body core](https://salilab.org/spb/)
  - [Modeling of the SEA complex, a modulator of the TORC1 pathway](https://salilab.org/sea/)
- This will be the last release that includes packages for Ubuntu 12.04
  (Precise Pangolin) since it has reached end of life. We will continue to
  provide packages for newer Ubuntu LTS releases.
- The Anaconda and Windows .exe packages are now MPI-enabled. On Windows, in
  order to use MPI, install [MS-MPI](https://msdn.microsoft.com/en-us/library/bb524831.aspx).
- IMP::em2d::PCAFitRestraint now uses binary PGM files as output, rather than
  the less well supported text PGM format. (It can still read both text and
  binary PGM files as input.)
- IMP::em::FitRestraint::cast() is deprecated. Use `get_from()` instead.
- The deprecated profiling (timing statistics) support has been removed.
  A number of third party packages (such as gperftools) are available
  for profiling and should be used instead.
- The new module IMP::spb provides specialized restraints, samplers, and
  other objects to support modeling of the Spindle Pole Body (SPB). While
  designed specifically for this system, they may be useful for modeling
  similar systems.