Table of Contents (3.3.22)

# Bazaar Release Notes

## bzr 0.14

Released:

  2007-01-23

### Improvements

- `bzr help global-options` describes the global options. (Aaron Bentley)

### Bug Fixes

- Skip documentation generation tests if the tools to do so are not available. Fixes running selftest for installled copies of bzr. (John Arbash Meinel, #80330)

- Fix the code that discovers whether bzr is being run from it’s working tree to handle the case when it isn’t but the directory it is in is below a repository. (James Westby, #77306)

## bzr 0.14rc1

Released:

  2007-01-16

### Improvements

- New connection: `bzr+http://` which supports tunnelling the smart protocol over an HTTP connection. If writing is enabled on the bzr server, then you can write over the HTTP connection. (Andrew Bennetts, John Arbash Meinel)

- Aliases now support quotation marks, so they can contain whitespace (Marius Kruger)

- PyCurlTransport now use a single curl object. By specifying explicitly the ‘Range’ header, we avoid the need to use two different curl objects (and two connections to the same server). (Vincent Ladeuil)

- `bzr commit` does not prompt for a message until it is very likely to succeed. (Aaron Bentley)

- `bzr conflicts` now takes –text to list pathnames of text conflicts (Aaron Bentley)

- Fix `iter_lines_added_or_present_in_versions` to use a set instead of a list while checking if a revision id was requested. Takes 10s off of the `fileids_affected_by_revision_ids` time, which is 10s of the `bzr branch` time. Also improve `fileids_...` time by filtering lines with a regex rather than multiple `str.find()` calls. (saves another 300ms) (John Arbash Meinel)

- Policy can be set for each configuration key. This allows keys to be inherited properly across configuration entries. For example, this should enable you to do:

      [/home/user/project]
      push_location = sftp://host/srv/project/
      push_location:policy = appendpath

  And then a branch like `/home/user/project/mybranch` should get an automatic push location of `sftp://host/srv/project/mybranch`. (James Henstridge)

- Added `bzr status --short` to make status report svn style flags for each file. For example:

      $ bzr status --short
      A  foo
      A  bar
      D  baz
      ?  wooley

- ‘bzr selftest –clean-output’ allows easily clean temporary tests directories without running tests. (Alexander Belchenko)

- `bzr help hidden-commands` lists all hidden commands. (Aaron Bentley)

- `bzr merge` now has an option `--pull` to fall back to pull if local is fully merged into remote. (Jan Hudec)

- `bzr help formats` describes available directory formats. (Aaron Bentley)

### Internals

- A few tweaks directly to `fileids_affected_by_revision_ids` to help speed up processing, as well allowing to extract unannotated lines. Between the two `fileids_affected_by_revision_ids` is improved by approx 10%. (John Arbash Meinel)

- Change Revision serialization to only write out millisecond resolution. Rather than expecting floating point serialization to preserve more resolution than we need. (Henri Weichers, Martin Pool)

- Test suite ends cleanly on Windows. (Vincent Ladeuil)

- When `encoding_type` attribute of class Command is equal to ‘exact’, force sys.stdout to be a binary stream on Windows, and therefore keep exact line-endings (without LF -> CRLF conversion). (Alexander Belchenko)

- Single-letter short options are no longer globally declared. (Martin Pool)

- Before using detected user/terminal encoding bzr should check that Python has corresponding codec. (Alexander Belchenko)

- Formats for end-user selection are provided via a FormatRegistry (Aaron Bentley)

### Bug Fixes

- `bzr missing --verbose` was showing adds/removals in the wrong direction. (John Arbash Meinel)

- `bzr annotate` now defaults to showing dotted revnos for merged revisions. It cuts them off at a depth of 12 characters, but you can supply `--long` to see the full number. You can also use `--show-ids` to display the original revision ids, rather than revision numbers and committer names. (John Arbash Meinel, #75637)

- bzr now supports Win32 UNC path (e.g. `\HOST\path`. (Alexander Belchenko, #57869)

- Win32-specific: output of cat, bundle and diff commands don’t mangle line-endings (Alexander Belchenko, #55276)

- Replace broken fnmatch based ignore pattern matching with custom pattern matcher. (Kent Gibson, Jan Hudec #57637)

- pycurl and urllib can detect short reads at different places. Update the test suite to test more cases. Also detect HTTP error code 416 which was raised for that specific bug. Also enhance the urllib robustness by detecting invalid ranges (and pycurl’s one by detecting short reads during the initial GET). (Vincent Ladeuil, #73948)

- The urllib connection sharing interacts badly with urllib2 proxy setting (the connections didn’t go thru the proxy anymore). Defining a proper ProxyHandler solves the problem. (Vincent Ladeuil, #74759)

- Use urlutils to generate relative URLs, not osutils (Aaron Bentley, #76229)

- `bzr status` in a readonly directory should work without giving lots of errors. (John Arbash Meinel, #76299)

- Mention the revisionspec topic for the revision option help. (Wouter van Heyst, #31663)

- Allow plugins import from zip archives. (Alexander Belchenko, #68124)