Merge lp://staging/~gz/bzr-builder/nonascii_maintainer_837741 into lp://staging/bzr-builder
Status: | Merged |
---|---|
Approved by: | Jelmer Vernooij |
Approved revision: | 154 |
Merged at revision: | 149 |
Proposed branch: | lp://staging/~gz/bzr-builder/nonascii_maintainer_837741 |
Merge into: | lp://staging/bzr-builder |
Prerequisite: | lp://staging/~gz/bzr-builder/trivial_test_file_contents |
Diff against target: |
64 lines (+28/-1) 2 files modified
cmds.py (+10/-1) tests/test_blackbox.py (+18/-0) |
To merge this branch: | bzr merge lp://staging/~gz/bzr-builder/nonascii_maintainer_837741 |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Jelmer Vernooij (community) | code | Approve | |
Review via email: mp+80046@code.staging.launchpad.net |
Description of the change
Finishes off the work by Michał Sawicz to correctly add non-ascii maintainer names to changelogs:
<https:/
The significant differences from that proposal are:
* There's a test to ensure it works
* Older versions of python-debian before the api change in 0.1.20 are also fixed
On the specifics:
* The test requires something other than LANG=C which may be unfortunate give that's how the automated builders seem to run things, but there's no sensible way around.
* Adds the decoding to add_autobuild_
* Only handles the maintainer name taken from the environment, not if it's passed in. If any callers do that, they still have the problem of not knowing if debian.changelog wants utf-8 bytes or unicode.
* Encodes the package name to ascii. This is the tweak needed to get the old way of doing things in debian.changelog to work, and upcasting to unicode will do the right thing for later versions.
* There's no __version__ attribute in the debian package, so detecting the api change means poking at the Changelog.
I should note that I've tested this against the version of python-debian packaged on my system (0.1.18~twiddle) and the current git head (0.1.21).