NEXT
~~~~
+1.5.0
+~~~~~
+
+Improvements
+------------
+
+* When an import error happens ``testtools.run`` will now show the full
+ error rather than just the name of the module that failed to import.
+ (Robert Collins)
+
+1.4.0
+~~~~~
+
+Changes
+-------
+
+* ``testtools.TestCase`` now inherits from unittest2.TestCase, which
+ provides a ``setUpClass`` for upcalls on Python 2.6.
+ (Robert Collins, #1393283)
+
+1.3.0
+~~~~~
+
+Changes
+-------
+
+* Fixed our setup.py to use setup_requires to ensure the import dependencies
+ for testtools are present before setup.py runs (as setup.py imports testtools
+ to read out the version number). (Robert Collins)
+
+* Support setUpClass skipping with self.skipException. Previously this worked
+ with unittest from 2.7 and above but was not supported by testtools - it was
+ a happy accident. Since we now hard depend on unittest2, we need to invert
+ our exception lookup priorities to support it. Regular skips done through
+ raise self.skipException will continue to work, since they were always caught
+ in our code - its because the suite type being used to implement setUpClass
+ has changed that an issue occured.
+ (Robert Collins, #1393068)
+
+1.2.1
+~~~~~
+
+Changes
+-------
+
+* Correctly express our unittest2 dependency: we don't work with old releases.
+ (Robert Collins)
+
+1.2.0
+~~~~~
+
+Changes
+-------
+
+* Depends on unittest2 for discovery functionality and the ``TestProgram`` base
+ class. This brings in many fixes made to discovery where previously we were
+ only using the discovery package or the version in the release of Python
+ that the test execution was occuring on. (Robert Collins, #1271133)
+
+* Fixed unit tests which were failing under pypy due to a change in the way
+ pypy formats tracebacks. (Thomi Richards)
+
+* Fixed the testtools test suite to run correctly when run via ``unit2``
+ or ``testtools.run discover``.
+
+* Make `testtools.content.text_content` error if anything other than text
+ is given as content. (Thomi Richards)
+
+* We now publish wheels of testtools. (Robert Collins, #issue84)
+
+1.1.0
+~~~~~
+
+Improvements
+------------
+
+* Exceptions in a ``fixture.getDetails`` method will no longer mask errors
+ raised from the same fixture's ``setUp`` method.
+ (Robert Collins, #1368440)
+
+1.0.0
+~~~~~
+
+Long overdue, we've adopted a backwards compatibility statement and recognized
+that we have plenty of users depending on our behaviour - calling our version
+1.0.0 is a recognition of that.
+
+Improvements
+------------
+
+* Fix a long-standing bug where tearDown and cleanUps would not be called if the
+ test run was interrupted. This should fix leaking external resources from
+ interrupted tests.
+ (Robert Collins, #1364188)
+
+* Fix a long-standing bug where calling sys.exit(0) from within a test would
+ cause the test suite to exit with 0, without reporting a failure of that
+ test. We still allow the test suite to be exited (since catching higher order
+ exceptions requires exceptional circumstances) but we now call a last-resort
+ handler on the TestCase, resulting in an error being reported for the test.
+ (Robert Collins, #1364188)
+
+* Fix an issue where tests skipped with the ``skip``* family of decorators would
+ still have their ``setUp`` and ``tearDown`` functions called.
+ (Thomi Richards, #https://github.com/testing-cabal/testtools/issues/86)
+
+* We have adopted a formal backwards compatibility statement (see hacking.rst)
+ (Robert Collins)
+
+0.9.39
+~~~~~~
+
+Brown paper bag release - 0.9.38 was broken for some users,
+_jython_aware_splitext was not defined entirely compatibly.
+(Robert Collins, #https://github.com/testing-cabal/testtools/issues/100)
+
+0.9.38
+~~~~~~
+
+Bug fixes for test importing.
+
+Improvements
+------------
+
+* Discovery import error detection wasn't implemented for python 2.6 (the
+ 'discover' module). (Robert Collins)
+
+* Discovery now executes load_tests (if present) in __init__ in all packages.
+ (Robert Collins, http://bugs.python.org/issue16662)
+
+0.9.37
+~~~~~~
+
+Minor improvements to correctness.
+
+Changes
+-------
+
+* ``stdout`` is now correctly honoured on ``run.TestProgram`` - before the
+ runner objects would be created with no stdout parameter. If construction
+ fails, the previous parameter list is attempted, permitting compatibility
+ with Runner classes that don't accept stdout as a parameter.
+ (Robert Collins)
+
+* The ``ExtendedToStreamDecorator`` now handles content objects with one less
+ packet - the last packet of the source content is sent with EOF set rather
+ than an empty packet with EOF set being sent after the last packet of the
+ source content. (Robert Collins)
+
+0.9.36
+~~~~~~
+
+Welcome to our long overdue 0.9.36 release, which improves compatibility with
+Python3.4, adds assert_that, a function for using matchers without TestCase
+objects, and finally will error if you try to use setUp or tearDown twice -
+since that invariably leads to bad things of one sort or another happening.
+
+Changes
+-------
+
+* Error if ``setUp`` or ``tearDown`` are called twice.
+ (Robert Collins, #882884)
+
+* Make testtools compatible with the ``unittest.expectedFailure`` decorator in
+ Python 3.4. (Thomi Richards)
+
+
+Improvements
+------------
+
+* Introduce the assert_that function, which allows matchers to be used
+ independent of testtools.TestCase. (Daniel Watkins, #1243834)
+
+
+0.9.35
+~~~~~~
+
+Changes
+-------
+
+* Removed a number of code paths where Python 2.4 and Python 2.5 were
+ explicitly handled. (Daniel Watkins)
+
Improvements
------------
+* Added the ``testtools.TestCase.expectThat`` method, which implements
+ delayed assertions. (Thomi Richards)
+
+* Docs are now built as part of the Travis-CI build, reducing the chance of
+ Read The Docs being broken accidentally. (Daniel Watkins, #1158773)
+
+0.9.34
+~~~~~~
+
+Improvements
+------------
+
+* Added ability for ``testtools.TestCase`` instances to force a test to
+ fail, even if no assertions failed. (Thomi Richards)
+
+* Added ``testtools.content.StacktraceContent``, a content object that
+ automatically creates a ``StackLinesContent`` object containing the current
+ stack trace. (Thomi Richards)
+
+* ``AnyMatch`` is now exported properly in ``testtools.matchers``.
+ (Robert Collins, Rob Kennedy, github #44)
+
+* In Python 3.3, if there are duplicate test ids, tests.sort() will
+ fail and raise TypeError. Detect the duplicate test ids firstly in
+ sorted_tests() to ensure that all test ids are unique.
+ (Kui Shi, #1243922)
+
* ``json_content`` is now in the ``__all__`` attribute for
``testtools.content``. (Robert Collins)
+* Network tests now bind to 127.0.0.1 to avoid (even temporary) network
+ visible ports. (Benedikt Morbach, github #46)
+
+* Test listing now explicitly indicates by printing 'Failed to import' and
+ exiting (2) when an import has failed rather than only signalling through the
+ test name. (Robert Collins, #1245672)
+
+* ``test_compat.TestDetectEncoding.test_bom`` now works on Python 3.3 - the
+ corner case with euc_jp is no longer permitted in Python 3.3 so we can
+ skip it. (Martin [gz], #1251962)
+
0.9.33
~~~~~~