bzr 2.1.1
#########

:2.1.1: 2010-03-24

This is a small bugfix release.  Upgrading is recommended for anyone
running 2.1.0 or earlier.

Bug Fixes
*********

* Allow syscalls to automatically restart when ``TextUIFactory``'s
  SIGWINCH handler is invoked, avoiding ``EINTR`` errors during blocking
  IO, which are often poorly handled by Python's libraries and parts of
  bzrlib.  (Andrew Bennetts, #496813)

* Avoid ``malloc(0)`` in ``patiencediff``, which is non-portable.
  (Martin Pool, #331095)

* Fix plugin packaging on Windows. (Ian Clatworthy, #524162)

* Fix stub sftp test server to call os.getcwdu().
  (Vincent Ladeuil, #526211, #526353)

* Fixed CHM generation by moving the NEWS section template into
  a separate file. (Ian Clatworthy, #524184)

* Merge correctly when this_tree is not a WorkingTree.  (Aaron Bentley)

* Register SIGWINCH handler only when creating a ``TextUIFactory``; avoids
  problems importing bzrlib from a non-main thread.
  (Elliot Murphy, #521989)

* Standardize the error handling when creating a new ``StaticTuple``
  (problems will raise TypeError). (Matt Nordhoff, #457979)

* Warn if pyrex is too old to compile the new ``SimpleSet`` and
  ``StaticTuple`` extensions, rather than having the build fail randomly.
  (John Arbash Meinel, #449776)

Documentation
*************

* Added a link to the Desktop Guide. (Ian Clatworthy)

* Added What's New in Bazaar 2.1 document. (Ian Clatworthy)

* Drop Google Analytics from the core docs as they caused problems
  in the CHM files. (Ian Clatworthy, #502010)

API Changes
***********

* Added ``bzrlib.osutils.set_signal_handler``, a convenience function that
  can set a signal handler and call ``signal.siginterrupt(signum,
  False)`` for it, if the platform and Python version supports it.
  (Andrew Bennetts, #496813)


