1.1.1
=====

Added support for side_effect in spies.

Fixed spies on classmethods.

1.1.0
=====

Added support for PyPy

1.0.1
=====

Fixes tests and unbound method support in Python 3
https://github.com/agoragames/chai/pull/23 @pypingou
https://github.com/agoragames/chai/pull/24 @GraylinKim

1.0.0
=====

Implemented spies.

1.0 release, Chai is largely feature complete.

0.4.8
=====

Fix PEP8 compliance.

Fix #18; don't overwrite test module's global namespace where names match
Chai methods.

0.4.7
=====

Fix reporting on unmet expectations, regression from 0.4.6 release. Thanks
to @ods94065 https://github.com/agoragames/chai/pull/16

0.4.6
=====

Immediately after running a test, teardown the stubs. This fixes any problems
with exception handling, such as UnexpectedCall, when methods involved in
exception handling, such as `open`, have been stubbed.

0.4.5
=====

Fixed packaging and test running thanks to @pypingou

0.4.4
=====

Fixed handling of skipped tests

0.4.3
=====

Fixed regression in stubbing functions introduced in python 3 changes

0.4.2
=====

Fixed regression in not raising an AssertionError for python 2

0.4.1
=====

Fixed UnexpectedCall handling in Python 2. Fixes 
https://github.com/agoragames/chai/issues/8.

0.4.0
=====

Fixed Python 3 support. Fixes https://github.com/agoragames/chai/issues/5.

0.3.7
=====

Fixed teardown of __new__ on types that overload the method

0.3.6
=====

Fix logic of raising UnexpectedCall when calling a stub and an unclosed, 
non-matching, in-order expectation does not have its counts met

0.3.5
=====

Only close a non-matching expectation if its counts have been met, else 
it's an UnexpectedCall

0.3.4
=====

Removed termcolor requirement. Both termcolor and unittest2 are optional.

0.3.3
=====

Removed unittest2 requirement, fixes https://github.com/agoragames/chai/issues/5

0.3.2
=====

Expectations with a type argument are matched against either an instance 
of that type, or the type itself

0.3.1
=====

Further fixed global namespace manipulation on test class hierarchies

0.3.0
=====

Improve iterative expectations by not insisting that one knows how many
times an expectation will be called unless explicitly set

Assume any arguments on an expectation unless explicitly set

Fixed stubbing properties on an instance

0.2.4
=====

Fixes bug in stubs on types by preventing secondary initialization

0.2.3
=====

Mock objects report parameters and method name when raising UnexpectedCall

Fixed global namespace manipulation on deeply nested Chai subclasses

0.2.2
=====

UnexpectedCall is now a BaseException which is re-raised as an AssertionError 
in Chai metaclass `test_wrapper` method. This decreases the chance that 
UnexpectedCall will be caught by the application code being tested.

0.2.1
=====

Allow variables in returns(), effectively treating the variable as a regex capture.

0.2.0
=====

Merge pull request to close issue #2

0.1.23
======

side_effect is passed the arguments of the expectation if it doesn't define
its own arguments

0.1.22
======

side_effect takes arguments after the method to eliminate need for a lambda

0.1.21
======

Fixed a bug with (un)stubbing of a module attribute which is really a classmethod

Added support for `with` statement on expectations, see README for usage

Fixed (un)stubbing of methods originally defined on `object` class

0.1.20
======

Added __eq__ to all comparators so that they can be used inside data structures.

0.1.19
======

Fixed failure to teardown stub on __new__ after `expect(type)`

0.1.18
======

Simplified stubbing of object creation, so that `expect(type)` can be used as
if it was mocking __init__, but return an object as if it was mocking __new__.

0.1.17
======

Fix edge case where an attribute might not be defined on a class when
calling stub(obj, 'attr').

0.1.16
======

Added Mock.__nonzero__ to re-support "if exists" code, which was broken by
the addition of Mock.__len__.

0.1.15
======

Added container and context manager interfaces to Mock object

0.1.14
======

Added 'any_args' expectation modifier and 'like' comparator. See documentaion
for details.

0.1.13
======

Added 'var' comparator for ability to assert that the same argument was used
for one or more expectations, and then to fetch the variable after the call
and run assertions on it. See documentation for details.

0.1.12
======

Added teardown() expectation modifier to allow for removing a stub after
it has been met

0.1.11
======

Support stubbing of built-in functions and methods

0.1.10
======

Support stubbing of functions if they have a module context

0.1.9
=====

Much nicer output from expectations

Coloring output

0.1.8
=====

Support stubbing of get, set and delete on class properties through both 
attribute name and object reference

Improved output on unmet expectations

Changelog
