plugin crashes bzr: "ValueError: too many values to unpack"
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Bazaar |
Fix Released
|
High
|
Andrew Bennetts | ||
bzr-changelog-merge |
Fix Released
|
High
|
Andrew Bennetts |
Bug Description
Hi,
I'm using the version of the plugin from http://
together with bzr 2.3.1. On two different systems, attempting to merge from Emacs's emacs-23 branch to
the trunk crashes bzr if I have this plugin installed. If I remove the plugin, there is no crash.
The crash ought to be reproducible using:
bzr branch bzr://bzr.
bzr branch bzr://bzr.
(these are fairly large branches)
cd trunk, and revert it to rev 104200. (I'm not entirely sure how I'm supposed to do that, but
it seemed to somehow work with uncommit). In other words, simulate having a copy of the trunk exactly
as it was in rev 104200. Activate the plugin by adding "changelog_
to .bzr/branch/
I get the following crash:
bzr: ERROR: exceptions.
Traceback (most recent call last):
File "/scratch/
return the_callable(*args, **kwargs)
File "/scratch/
ret = run(*run_argv)
File "/scratch/
return self.run(
File "/scratch/
return self._operation
File "/scratch/
self.cleanups, self.func, *args, **kwargs)
File "/scratch/
result = func(*args, **kwargs)
File "/scratch/
verified)
File "/scratch/
conflict_count = merger.do_merge()
File "/scratch/
merge = operation.
File "/scratch/
self.cleanups, self.func, *args, **kwargs)
File "/scratch/
result = func(*args, **kwargs)
File "/scratch/
merge.
File "/scratch/
operation.run()
File "/scratch/
self.cleanups, self.func, self, *args, **kwargs)
File "/scratch/
result = func(*args, **kwargs)
File "/scratch/
self.
File "/scratch/
file_status = self._do_
File "/scratch/
hook_status, lines = hook.merge_
ValueError: too many values to unpack
bzr 2.3.1 on python 2.6.5 (Linux-
arguments: ['/scratch/
encoding: 'ISO-8859-1', fsenc: 'ISO-8859-1', lang: 'en_US'
plugins:
bash_completion /scratch/
bzrtools /home/gmorris/
changelog_merge /home/gmorris/
launchpad /scratch/
netrc_
news_merge /scratch/
*** Bazaar has encountered an internal error. This probably indicates a
bug in Bazaar. You can help us fix it by filing a bug report at
https:/
including this traceback and a description of the problem.
Related branches
- Jelmer Vernooij (community): Approve
- Vincent Ladeuil: Approve
-
Diff: 160 lines (+94/-13)2 files modifiedbzrlib/plugins/changelog_merge/changelog_merge.py (+15/-13)
bzrlib/plugins/changelog_merge/tests/test_changelog_merge.py (+79/-0)
Changed in bzr: | |
status: | Confirmed → Fix Released |
Ah, this appears to be a fairly trivial bug in the “oops this conflict is too hard, I give up” case. i.e. the plugin is trying to defer to bzr's default merge logic.
The fix is pretty easy. I'll try to extend the test coverage to cover this case while I'm here.
So for this crash disabling the plugin will give the same results as the fixed plugin, so temporarily disabling the plugin is a good workaround.