CHANGES
=======

0.5 (2016-02-26)
----------------

- CTRL-C will now kill the program.

- Renamed {envpath} to {envdir}, {python} to {envpython} and {project_dir} to
  {projectdir}. Also added {basepython} to the Python version used to install
  the virtual env.

- Various changes to make custom commands more stable and flexible.

- Added a changedir option to the config.

- You can now run tests for Pythons that does not support any version
  of virtualenv, such as Python 2.3 and earlier.

- Gives a nice error message and exits with -1 if it doesn't know what
  versions to use.

- Dropped support for running Spiny with Python 2.6.

- If using a system Python 3 the virtualenv will no longer install system
  Python 2.

- Spiny now supports having different requirements in setup.py for different
  versions of Python.

- Not finding an executable for a specific environment is no longer a fatal
  error, so you don't have to have all the supported versions installed.


0.4 (2014-11-01)
----------------

- Added support for requirements.txt.

- Added parameters to skip executing setup.py.

- Added a setup-commands parameter to override how the virtualenv is made.

- The -e parameter now actually works.

- The information about the python execs is now cached. This speeds up
  startup, a lot, fetching the Python environments goes from around 5
  seconds to less than a tenth.

- A profile of each virtualenv is now saved in the virtualenv, containing
  it's name, the full path of the Python exe, and the installed requirements.
  A virtualenv will now only be updated if this has changed since the last run.
  This also speeds up tests runs a lot in the typical case.


0.3 (2014-10-30)
----------------

- Now runs under Python 3, PyPy, PyPy3, Jython.

- All output is now through logging, which enables you to select verbosity.

- Added --version, --verbose and --quiet options.

- Now use subprocess32 under Python 2.

- Will now run tests in parallell with multiprocessing. A 'max-processes'
  option in the [spiny] section will allow you to cap the processes if
  you don't want to max your computer. Otherwise it will use as many processes
  as multiprocessing will report cpu's.


0.2 (2014-10-27)
----------------

- Now prints a summary in the end.

- Regard more virtualenv tests as failures.

- Return 1 if not all tests succeeded.

- Fall back to setup.cfg is there is no spiny config file.

- Renamed spiny.conf to spiny.cfg for consistency.

- Made the configuration file optional.

- Spiny will now grep setup.py for Python version classifiers if no
  environment configuration is found.

- If both Python X and Python X.Y is given as environments, it will
  skip the tests for Python X, seeing as it is fulfilled by Python X.Y.

- The version specified in the [pythons] section now have preference.

- Setting a config option from the command line now works even if the section
  doesn't exist.

- Spiny will now attempt to extract the test requirements and install them
  into the virtualenv before running the tests, to avoid polluting the
  project directory with .egg directories.


0.1.1 (2014-10-18)
------------------

- Initial release
