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

Here you can find the recent changes to libtmux

- :release:`0.8.1 <2019-01-26>`
- :bug:`117` Fix issue with renaming clients with tmux 2.7 on BSD/macOS
  machines.
- :support:`121` Support ``literal=True`` (``-l``) in ``Pane.send_keys``
  from @ritiek
- :bug:`131` Fix for unicode commands in Python 2, thanks @myw
- :support:`172` Support for next-X.Y versions from @sloria
- :support:`120` ``capture_pane`` support for ``Pane``
- :support:`119` ``display_message`` support for ``Pane``
- :support:`-` Sort imports with isort
- :support:`-` Add sphinxcontrib-napoleon package for documentation
- :support:`-` Move docstrings over to numpy's style

- :release:`0.8.0 <2018-03-11>`
- :support:`46` Change license from BSD to MIT
- :support:`-` Move to new organization, tmux-python
- :support:`-` Support package updates to pytest, sphinx, etc.
- :support:`-` Travis/CI: Limit tests to Python 2.7 and 3.6 (removed 3.3 to 3.5)
- :support:`-` Travis/CI: Update pypy veersions
- :feature:`103` ``Server.new_session`` learned how to run commands in
  window on session start, thanks @grimpy!
- :support:`68` Make Server.has_session() use returncode, thanks
  @jlargentaye! This should make ``has_session`` more robust.

- :release:`0.7.8 <2018-03-04>`
- :support:`-` Port ``retry`` function from tmuxp
  (https://github.com/tmux-python/tmuxp/issues/354)

- :release:`0.7.7 <2017-11-10>`
- :support:`-` Don't add -x/-y in tmux >= 2.6 if running tmuxp from inside
  client.

- :release:`0.7.6 <2017-11-09>`
- :feature:`-` Allow ``Window.select_layout`` with no args
- :bug:`-` Fix test where ``bell-`` was no longer ambiguous as of tmux 2.6

- :release:`0.7.5 <2017-10-07>`
- :support:`- backported` Hotfix to support tmux 2.6 session creation

- :release:`0.7.4 <2017-08-19>`
- :feature:`65` Add session id to commands, thanks `@askedrelic`_

- :release:`0.7.3 <2017-05-29>`
- :support:`-` Exact matches only supported on 2.1 and up

- :release:`0.7.2 <2017-05-29>`
- :support:`-` Support exact matching in ``Server.has_session``

- :release:`0.7.1 <2017-04-28>`
- :support:`37` Improve support for formatted options like
  ``pane-border-status``. Thanks @kaushalmodi.

- :release:`0.7.0 <2017-04-27>`
- :support:`-` Support for python 2.6 dropped. New minimum version is 2.7
- :feature:`-` Add support for tmux 2.4, pypy and pypy3
- :feature:`-` Overhaul error handling when setting and showing options
  
  - Added `handle_option_error` for handling option errors
  - Added :exc:`libtmux.exc.OptionError` base exception
  - Added :exc:`libtmux.exc.InvalidOption` and `libtmux.exc.AmbiguousOption`
  - :exc:`libtmux.exc.UnknownOption` now extends :exc:`libtmux.exc.OptionError`

- :feature:`-` Overhaul version checking

  - ``has_version`` has been renamed to ``get_version``
  - ``get_version`` will return tmux built from git master as the latest version supported by the libtmux version with ``-master`` at the end, e.g. ``2.4-master``
  - ``get_version`` will return tmux on openbsd base system as the latest version supported by the libtmux version with ``-openbsd`` at the end, e.g. ``2.4-openbsd``
  - ``has_required_tmux_version`` has been renamed to ``has_minimum_version``
  - added ``has_gt_version``, ``has_gte_version``, ``has_lt_version``, ``has_lte_version``,

- :support:`-` Fixed up documentation in some session methods
- :support:`-` Added pydoc exception info to option methods in window and sessions.
- :support:`-` Added ``TMUX_MIN_VERSION`` and ``TMUX_MAX_VERSION``

- :release:`0.6.5 <2017-04-02>`
- :support:`-` Fix ``which`` command
- :support:`-` Add ``TmuxCommandNotFound`` exception
- :support:`-` Add ``tmux_search_paths`` and ``append_env_path`` kwargs to
  ``tmux_cmd``.

- :release:`0.6.4 <2017-03-25>`
- :support:`32` support for OpenBSD's tmux

- :release:`0.6.3 <2017-02-08>`
- :support:`25` support for working with tmux ``master``, thanks @sloria.

- :release:`0.6.2 <2017-01-19>`
- :support:`197` use `LooseVersion` instead of `StrictVersion` for version
  checks. Thanks @minijackson.
- :support:`-` Pin packages with pyup.io
- :support:`21` Readme fix from @huwenchao.

- :release:`0.6.1 <2016-12-20>`
- :support:`18` Fix logger, courtesy of @geekli
- :support:`19` Add support for ``start_directory`` in new sessions and
  panes, courtesy of @gandelman-a.
- :support:`-` Fix tests and add official support for 2.3

- :release:`0.6.0 <2016-09-16>`
- :support:`-` Raise exception for invalid session names. tmux does not
  allow names that are empty, contain periods or colons.
- :bug:`-` Remove unused ``target_sesssion`` param in
  ``Server.attach_session`` and ``Server.switch_client``.

- :release:`0.5.1 <2016-08-18>`
- :bug:`12` - fix logger message when tmux doesn't exist in ``PATH``

- :release:`0.5 <2016-06-15>`
- :feature:`8` new exception ``UnknownOption``
- :feature:`8` return ``None`` for options that are valid tmux options,
  but unset at that scope.
- :support:`6` major documentation overhaul

- :release:`0.4.1 <2016-05-23>`
- :support:`-` update ``which()`` to find tmux via ``os.environ['PATH']``.
  https://redd.it/4laeut

- :release:`0.4.0 <2016-05-23>`
- :support:`-` attributes for formatters are now accessible via
  ``Session``, ``Window`` and ``Pane`` objects. ``session.name``
  is equivalent to ``session.get('session_name')``, you can do the
  same with other properties in ``_info``. ``window.name``,
  ``pane.current_path``, ``session.id``, ``window.id``, ``pane.id``,
  ``session.index``, ``window.index``, ``pane.index``, etc.
- :support:`-` ``attached_sessions``, ``attached_window`` and
  ``attached_pane`` are now properties.
- :support:`-` ``_TMUX`` metadata object changed to ``_info``.
- :support:`-` ``.findWhere()`` is now ``find_where``.
- :support:`-` README and usage fixes

- :release:`0.3.0 <2016-05-23>`
- switch to pytest 

- :release:`0.1.0 <2016-05-22>`
- libtmux forked from `tmuxp`_.

.. _tmuxp: https://github.com/tmux-python/tmuxp
.. _@askedrelic: https://github.com/askedrelic

.. # vim: set filetype=rst:
