.. _v2.7:

git-cola v2.7
=============

Fixes
-----

* When repositories stored in non-ASCII, UTF-8-encoded filesystem paths
  were operated upon with `LC_ALL=C` set in the environment, unicode errors
  would occur when using `python2`.  `git cola` was made more robust and will
  now operate correctly within this environment.

  https://github.com/git-cola/git-cola/issues/581

* Support for the `GIT_WORK_TREE` environment variable was fixed.

  https://github.com/git-cola/git-cola/pull/582

Development
-----------

* The `unittest.mock` module is now used instead of the original `mock` module
  when running the `git cola` test suite using Python3.

  https://github.com/git-cola/git-cola/issues/569

Packaging
---------

* `git cola` is now compatible with *PyQt5*, *PyQt4*, and *Pyside*.
  `git cola` previously supported *PyQt4* only, but will now use whichever
  library is available.  Users are not required to upgrade at this time,
  but *PyQt5* support can be enabled anytime by making its python
  modules available.

  https://github.com/git-cola/git-cola/issues/232

  *NOTE*: We do not yet recommend using *PyQt5* because there are known
  exit-on-segfault bugs in *Qt5* that have not yet been addressed.
  `git cola` is sensitive to this bug and is known to crash on exit
  when using `git dag` or the interactive rebase feature on *PyQt5*.

  https://bugreports.qt.io/browse/QTBUG-52988

  *PyQt4* is stable and there are no known issues when using it so
  we recommend using it until the Qt5 bugs have been resolved.

* `git cola` now depends on *QtPy* and includes a bundled copy of the
  `qtpy` library.  If you are packaging `git cola` and would prefer to use
  `qtpy` from your distribution instead of the built-in version then use
  `make NO_VENDOR_LIBS=1` when building `git cola`.  This will prevent
  vendored libraries from being installed.
