=========
Changelog
=========

0.2.12 (2013-07-26)
===================

- Another attempt at getting convergency for package installation: actually
  leverage pkg_resources to check what version of a package is installed. PIP
  does not necessarily list or freeze setuptools, even if forced to reinstall.

0.2.11 (2013-07-25)
===================

- More resilience for creating virtualenvs for old python versions: provide a
  bootstrapping venv that carries a compatible venv package to create the
  actual virtualenv. Brr.

- Rewrite PIP interaction with the installed database: don't need YAML any
  longer and works with old versions of PIP that are required to work with
  Python 2.4.

- Allow specifying the PIP version on the buildout master component.

- Make bootstrapping virtualenv with correct setuptools version more reliable.

- Silence verification command for virtualenv pkg_resources availability.

- Support upgrading SVN working copies using the 'svn upgrade' command if necessary.

0.2.10 (2013-07-15)
===================

- Backport buildout/virtualenv handling from 1.x branch (mostly due to
  distribute/setuptools merge, but brings nice additional robustness).

- Add ``exclude`` parameter to Directory component.


0.2.9 (2013-07-06)
==================

- Fix #12527: utils.cmd breaks on spacey arguments and embedded quotes.

- Avoid accidentally creating incorrect directories in developer VFS mapping.

- Switch testrunner to pytest. Refactor some tests to take advantage of its
  capabilities.

- Clean up PEP8 / pyflakes errors, integrate pytest plugin to ensure continued
  compliance.

- Clean up buildout versions specifications.

- Fix .dmg extractor to copy symlinks as symlinks.

- Fix remote sudo for Mac OS X target hosts.


0.2.8 (2013-06-18)
==================

- Added archive extractor for .dmg files.

- Added flag for supervisor to control whether global or individual restarts
  wait until everything is running.

0.2.7 (2013-05-22)
==================

- Fix template for Nagios check service dependencies.

- Update bootstrap call for batou-internal bootstrapping.

0.2.6 (2013-05-18)
==================

- Add component that clones from a Mercurial repository.

- Write supervisord.pid into /run/local instead of ${workdir}/var to ensure
  correct startup after machine crashes.

- Add `ignore_returncode` parameter to Component.cmd() to suppress exceptions
  on unsuccessful command execution.


0.2.5 (2013-04-23)
==================

- Fix interaction between supervisor programs and disabled supervisors: don't
  try to start those programs.


0.2.4 (2013-04-22)
==================

- Force reread/update on supervisor after config changes.


0.2.3 (2013-04-22)
==================

- supervisor: wait up to 60 seconds instead of 30 until supervisor responds to
  a PID after triggering shutdown. Fix bug trying to detect shutdown:
  RuntimeError would cause residual data in output variables.

- supervisor: after reloading, wait as long as the highest startup delay was
  configured on a program to avoid subsequent accidental restarts.

- supervisor: remove 'restart' flag: always restart if we have a relevant
  change.

- supervisor: fix bug in reload logic: path to supervisord.conf was wrong

0.2.2 (2013-04-19)
==================

- Allow specifying 'configure_args' on cmmi.Build or 'args' on cmmi.Configure.

- Fix supervisor's path lookup for event listeners to support the automatically
  installed superlance plugins better. This may change again in the future
  depending on other event listener needs.


0.2.1 (2013-04-18)
==================

- Fix supervisor refactoring: templates contained static paths from my
  development machine. Event listeners were not formatting the event list
  correctly.

- Let RunningSupervisor wait (infinitely) long when reloading if the
  supervisorctl command returns 'SHUTDOWN_STATE'. This supports large
  installations with many services more gracefully but might get stuck.

- Fix supervisor's Nagios check: I removed the bin/py custom interpreter and
  didn't notice it was used by the check. Put it back.

0.2 (2013-04-18)
================

- Lots of stuff that went on unreleased for way too long. Producing a release
  to allow people to stop running from trunk.

- Buildout component: Allow custom buildout.cfg names and pass the name to
  bootstrap.

- Improve SSH connection error logging: more readable now and hosts are
  identifiable. (#12093)

- Do not automatically add missing SSH host keys any longer. (#11606)

- Use python version specific virtualenv, if availble. This helps with ancient
  Python 2.4 components. For specific virtualenv versions no explicit python
  executable is passed.

- Internalize download hash handling using hashlib. Allow selection of hash
  function. (Thanks to Christine Koppelt.)

- Introduce new component modelling approach.

- Start writing documentation.

- Improve error message when download fails due to checksum mismatch.
