Bug 1043034

Summary: [abrt] mercurial-2.6.3-1.fc19: git_handler.py:1037:fetch_pack:ValueError: too many values to unpack
Product: [Fedora] Fedora Reporter: Sjoerd Mullender <sjoerd>
Component: hg-gitAssignee: Christopher Meng <i>
Status: CLOSED EOL QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 19CC: dennis, i, mads, ndbecker2
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
URL: https://retrace.fedoraproject.org/faf/reports/bthash/55e7870cf8d41e9f35f5781beab33092ac66a4a3
Whiteboard: abrt_hash:8b53084d1709ae22d954fd7f727598f0de2723d6
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-02-17 19:38:24 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
File: backtrace
none
File: environ none

Description Sjoerd Mullender 2013-12-13 19:43:07 UTC
Description of problem:
Running
hg --config extensions.hggit= pull
in a clone of git://github.com/insanum/gcalcli.git and without ~/.hgrc

Version-Release number of selected component:
mercurial-2.6.3-1.fc19

Additional info:
reporter:       libreport-2.1.9
cmdline:        /usr/bin/python /usr/bin/hg --config extensions.hggit= pull
dso_list:       hg-git-0.4.0-4.fc19.noarch
executable:     /usr/bin/hg
kernel:         3.11.10-200.fc19.x86_64
runlevel:       N 5
type:           Python
uid:            1000

Truncated backtrace:
git_handler.py:1037:fetch_pack:ValueError: too many values to unpack

Traceback (most recent call last):
  File "/usr/bin/hg", line 38, in <module>
    mercurial.dispatch.run()
  File "/usr/lib64/python2.7/site-packages/mercurial/dispatch.py", line 28, in run
    sys.exit((dispatch(request(sys.argv[1:])) or 0) & 255)
  File "/usr/lib64/python2.7/site-packages/mercurial/dispatch.py", line 69, in dispatch
    ret = _runcatch(req)
  File "/usr/lib64/python2.7/site-packages/mercurial/dispatch.py", line 97, in _runcatch
    return _dispatch(req)
  File "/usr/lib64/python2.7/site-packages/mercurial/dispatch.py", line 778, in _dispatch
    cmdpats, cmdoptions)
  File "/usr/lib64/python2.7/site-packages/mercurial/dispatch.py", line 549, in runcommand
    ret = _runcommand(ui, options, cmd, d)
  File "/usr/lib64/python2.7/site-packages/mercurial/dispatch.py", line 869, in _runcommand
    return checkargs()
  File "/usr/lib64/python2.7/site-packages/mercurial/dispatch.py", line 840, in checkargs
    return cmdfunc()
  File "/usr/lib64/python2.7/site-packages/mercurial/dispatch.py", line 775, in <lambda>
    d = lambda: util.checksignature(func)(ui, *args, **cmdoptions)
  File "/usr/lib64/python2.7/site-packages/mercurial/util.py", line 506, in check
    return func(*args, **kwargs)
  File "/usr/lib64/python2.7/site-packages/mercurial/commands.py", line 4541, in pull
    remotebookmarks = other.listkeys('bookmarks')
  File "/usr/lib/python2.7/site-packages/hggit/gitrepo.py", line 59, in listkeys
    refs = handler.fetch_pack(self.path)
  File "/usr/lib/python2.7/site-packages/hggit/git_handler.py", line 1037, in fetch_pack
    f, commit = self.git.object_store.add_pack()
ValueError: too many values to unpack

Local variables in innermost frame:
heads: None
determine_wants: <function determine_wants at 0x22ad050>
graphwalker: <dulwich.object_store.ObjectStoreGraphWalker object at 0x2199390>
self: <hggit.git_handler.GitHandler object at 0x23983d0>
client: <dulwich.client.TCPGitClient object at 0x240b390>
path: '/insanum/gcalcli.git'
remote_name: 'git://github.com/insanum/gcalcli.git'

Comment 1 Sjoerd Mullender 2013-12-13 19:43:12 UTC
Created attachment 836481 [details]
File: backtrace

Comment 2 Sjoerd Mullender 2013-12-13 19:43:16 UTC
Created attachment 836482 [details]
File: environ

Comment 3 Sjoerd Mullender 2013-12-13 19:44:45 UTC
$ rpm -q mercurial hg-git
mercurial-2.6.3-1.fc19.x86_64
hg-git-0.4.0-4.fc19.noarch

Comment 4 Sjoerd Mullender 2013-12-22 17:33:53 UTC
The problem is an incompatibility with python-dulwich 0.9.1 and later.  0.9.1 is the version that is current in Fedora 20 (although 0.9.4 has already been released).
In 0.9.1, the add_pack() function in the object_store.py module grew an extra return value (3 instead of 2).
The following change to hggit seems to work: change the call to add_pack() (there is only one, in git_handler.py) to read:

f, commit, abort = self.git.object_store.add_pack()

Comment 5 Fedora End Of Life 2015-01-09 20:51:25 UTC
This message is a notice that Fedora 19 is now at end of life. Fedora 
has stopped maintaining and issuing updates for Fedora 19. It is 
Fedora's policy to close all bug reports from releases that are no 
longer maintained. Approximately 4 (four) weeks from now this bug will
be closed as EOL if it remains open with a Fedora 'version' of '19'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 19 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 6 Fedora End Of Life 2015-02-17 19:38:24 UTC
Fedora 19 changed to end-of-life (EOL) status on 2015-01-06. Fedora 19 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.