- Fix bug where replacement of methods on subclasses failed when using :meth:`Replacer.on_class`.
- Implement :ref:`strict comparison <compare-datetime>` as an option for :class:`~datetime.datetime` and :class:`~datetime.time`.
8.0.0
-------------------
- Retire ``zope.component`` helpers.
- Support :class:`bytes` in :class:`popen.MockPopen` commands.
- Allow :class:`TempDirectory` instances to be traversed as :class:`~pathlib.Path` objects.
- Use the system default encoding where possible in :class:`TempDirectory`.
- Add :class:`TempDirectory` option to manage current working directory.
- Allow string class attributes to be replaced with :class:`Replacer` and friends.
- Fix nasty bug meaning some :meth:`~Replacer.on_class` and :meth:`~Replacer.in_module` replacements weren't restored.
- Allow an alternative separator to be used for traversal during replacement with :class:`Replacer` and friends.
- Officially support Python 3.12.
- Drop support Python 3.6.
7.2.2
-------------------
- Fix bug in support for :class:`os.PathLike` arguments to :class:`popen.MockPopen`.
7.2.1
-------------------
- Added missing support for :class:`os.PathLike` arguments to :class:`popen.MockPopen`.
7.2.0
-------------------
- Add ``order_matters`` parameter to :class:`ShouldWarn`.
Thanks to Jan Musílek for the implementation!
7.1.0
------------------
- Implement new IDE and static-analysis ways of :doc:`mocking <mocking>` including additional parameters to :meth:`~Replacer.replace` along with the :any:`replace_on_class`, :any:`replace_in_module` and :any:`replace_in_environ` context managers.