Merge lp:~jelmer/bzr-builddeb/integration into lp:bzr-builddeb

Proposed by Jelmer Vernooij
Status: Merged
Merged at revision: not available
Proposed branch: lp:~jelmer/bzr-builddeb/integration
Merge into: lp:bzr-builddeb
Diff against target: 105 lines (+36/-21)
3 files modified
cmds.py (+7/-20)
merge_upstream.py (+28/-0)
upstream.py (+1/-1)
To merge this branch: bzr merge lp:~jelmer/bzr-builddeb/integration
Reviewer Review Type Date Requested Status
Bzr-builddeb-hackers Pending
Review via email: mp+21889@code.launchpad.net

Description of the change

Branch with two unrelated trivial changes:

* Move changelog addition function out of cmds.py
* Fix the fix for bug 572093 - getattr() with two arguments raises an AttributeError if the attribute was not found.

To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'cmds.py'
--- cmds.py 2010-03-04 16:34:03 +0000
+++ cmds.py 2010-03-22 21:18:27 +0000
@@ -471,29 +471,13 @@
471 distribution_opt, directory_opt, last_version_opt,471 distribution_opt, directory_opt, last_version_opt,
472 force_opt, v3_opt, 'revision', 'merge-type']472 force_opt, v3_opt, 'revision', 'merge-type']
473473
474 def _update_changelog(self, tree, version, distribution_name, changelog,
475 package):
476 from bzrlib.plugins.builddeb.merge_upstream import package_version
477 if "~bzr" in str(version) or "+bzr" in str(version):
478 entry_description = "New upstream snapshot."
479 else:
480 entry_description = "New upstream release."
481 proc = subprocess.Popen(["dch", "-v",
482 str(package_version(version, distribution_name)),
483 "-D", "UNRELEASED", "--release-heuristic", "changelog",
484 entry_description], cwd=tree.basedir)
485 proc.wait()
486 if proc.returncode != 0:
487 raise BzrCommandError('Adding a new changelog stanza after the '
488 'merge had completed failed. Add the new changelog entry '
489 'yourself, review the merge, and then commit.')
490
491 def run(self, location=None, upstream_branch=None, version=None, distribution=None,474 def run(self, location=None, upstream_branch=None, version=None, distribution=None,
492 package=None, no_user_config=None, directory=".", revision=None,475 package=None, no_user_config=None, directory=".", revision=None,
493 merge_type=None, last_version=None, force=None, v3=None):476 merge_type=None, last_version=None, force=None, v3=None):
494 from bzrlib.plugins.builddeb.errors import MissingChangelogError477 from bzrlib.plugins.builddeb.errors import MissingChangelogError
495 from bzrlib.plugins.builddeb.repack_tarball import repack_tarball478 from bzrlib.plugins.builddeb.repack_tarball import repack_tarball
496 from bzrlib.plugins.builddeb.merge_upstream import upstream_branch_version479 from bzrlib.plugins.builddeb.merge_upstream import (changelog_add_new_version,
480 upstream_branch_version)
497 tree, _ = WorkingTree.open_containing(directory)481 tree, _ = WorkingTree.open_containing(directory)
498 tree.lock_write()482 tree.lock_write()
499 try:483 try:
@@ -619,8 +603,11 @@
619 upstream_revision=upstream_revision,603 upstream_revision=upstream_revision,
620 merge_type=merge_type, force=force)604 merge_type=merge_type, force=force)
621605
622 self._update_changelog(tree, version, distribution_name, changelog,606 if not changelog_add_new_version(tree, version, distribution_name,
623 package)607 changelog, package):
608 raise BzrCommandError('Adding a new changelog stanza after the '
609 'merge had completed failed. Add the new changelog '
610 'entry yourself, review the merge, and then commit.')
624 finally:611 finally:
625 tree.unlock()612 tree.unlock()
626 note("The new upstream version has been imported.")613 note("The new upstream version has been imported.")
627614
=== modified file 'merge_upstream.py'
--- merge_upstream.py 2009-03-10 01:57:05 +0000
+++ merge_upstream.py 2010-03-22 21:18:27 +0000
@@ -27,6 +27,7 @@
27#27#
2828
29import itertools29import itertools
30import subprocess
3031
31from debian_bundle.changelog import Version32from debian_bundle.changelog import Version
3233
@@ -163,3 +164,30 @@
163 else:164 else:
164 ret.debian_version = "%d" % (prev_packaging_revnum+1)165 ret.debian_version = "%d" % (prev_packaging_revnum+1)
165 return ret166 return ret
167
168
169def changelog_add_new_version(tree, version, distribution_name, changelog,
170 package):
171 """Add an entry to the changelog for a new version.
172
173 :param tree: WorkingTree in which the package lives
174 :param version: Version to add
175 :param distribution_name: Distribution name (debian, ubuntu, ...)
176 :param changelog: Changelog object
177 :param package: Package name
178 :return: Whether an entry was successfully added
179 """
180 from bzrlib.plugins.builddeb.merge_upstream import package_version
181 if "~bzr" in str(version) or "+bzr" in str(version):
182 entry_description = "New upstream snapshot."
183 else:
184 entry_description = "New upstream release."
185 proc = subprocess.Popen(["dch", "-v",
186 str(package_version(version, distribution_name)),
187 "-D", "UNRELEASED", "--release-heuristic", "changelog",
188 entry_description], cwd=tree.basedir)
189 proc.wait()
190 # FIXME: Raise insightful exception here rather than just checking
191 # return code.
192 return proc.returncode == 0
193
166194
=== modified file 'upstream.py'
--- upstream.py 2010-03-11 23:44:57 +0000
+++ upstream.py 2010-03-22 21:18:27 +0000
@@ -110,7 +110,7 @@
110 # URIs (LP:375897)110 # URIs (LP:375897)
111 try:111 try:
112 get_sources = getattr(apt_pkg, 'SourceRecords',112 get_sources = getattr(apt_pkg, 'SourceRecords',
113 getattr(apt_pkg, 'GetPkgSrcRecords'))113 getattr(apt_pkg, 'GetPkgSrcRecords', None))
114 sources = get_sources()114 sources = get_sources()
115 except SystemError:115 except SystemError:
116 raise PackageVersionNotPresent(package, upstream_version, self)116 raise PackageVersionNotPresent(package, upstream_version, self)

Subscribers

People subscribed via source and target branches