Bug 4111 - TypeError: addlargefiles() argument after * must be a sequence, not NoneType
Summary: TypeError: addlargefiles() argument after * must be a sequence, not NoneType
Status: RESOLVED FIXED
Alias: None
Product: Mercurial
Classification: Unclassified
Component: shelve (show other bugs)
Version: 2.8
Hardware: Macintosh Mac OS
: normal bug
Assignee: Bugzilla
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-11-25 13:49 UTC by Val Markovic
Modified: 2014-01-06 10:44 UTC (History)
4 users (show)

See Also:
Python Version: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Val Markovic 2013-11-25 13:49 UTC
$ hg unshelve
unshelving change 'default'
** unknown exception encountered, please report by visiting
** http://mercurial.selenic.com/wiki/BugTracker
** Python 2.7.5 (default, Aug 25 2013, 00:04:04) [GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)]
** Mercurial Distributed SCM (version 2.8)
** Extensions loaded: shelve, color, progress, largefiles, extdiff
Traceback (most recent call last):
  File "/usr/local/bin/hg", line 38, in <module>
    mercurial.dispatch.run()
  File "/usr/local/Cellar/mercurial/2.8/lib/python2.7/site-packages/mercurial/dispatch.py", line 28, in run
    sys.exit((dispatch(request(sys.argv[1:])) or 0) & 255)
  File "/usr/local/Cellar/mercurial/2.8/lib/python2.7/site-packages/mercurial/dispatch.py", line 69, in dispatch
    ret = _runcatch(req)
  File "/usr/local/Cellar/mercurial/2.8/lib/python2.7/site-packages/mercurial/dispatch.py", line 133, in _runcatch
    return _dispatch(req)
  File "/usr/local/Cellar/mercurial/2.8/lib/python2.7/site-packages/mercurial/dispatch.py", line 806, in _dispatch
    cmdpats, cmdoptions)
  File "/usr/local/Cellar/mercurial/2.8/lib/python2.7/site-packages/mercurial/dispatch.py", line 585, in runcommand
    ret = _runcommand(ui, options, cmd, d)
  File "/usr/local/Cellar/mercurial/2.8/lib/python2.7/site-packages/mercurial/extensions.py", line 196, in wrap
    return wrapper(origfn, *args, **kwargs)
  File "/usr/local/Cellar/mercurial/2.8/lib/python2.7/site-packages/hgext/color.py", line 419, in colorcmd
    return orig(ui_, opts, cmd, cmdfunc)
  File "/usr/local/Cellar/mercurial/2.8/lib/python2.7/site-packages/mercurial/dispatch.py", line 897, in _runcommand
    return checkargs()
  File "/usr/local/Cellar/mercurial/2.8/lib/python2.7/site-packages/mercurial/dispatch.py", line 868, in checkargs
    return cmdfunc()
  File "/usr/local/Cellar/mercurial/2.8/lib/python2.7/site-packages/mercurial/dispatch.py", line 803, in <lambda>
    d = lambda: util.checksignature(func)(ui, *args, **cmdoptions)
  File "/usr/local/Cellar/mercurial/2.8/lib/python2.7/site-packages/mercurial/util.py", line 512, in check
    return func(*args, **kwargs)
  File "/usr/local/Cellar/mercurial/2.8/lib/python2.7/site-packages/hgext/shelve.py", line 561, in unshelve
    node = cmdutil.commit(ui, repo, commitfunc, None, tempopts)
  File "/usr/local/Cellar/mercurial/2.8/lib/python2.7/site-packages/mercurial/cmdutil.py", line 1655, in commit
    scmutil.addremove(repo, pats, opts)
  File "/usr/local/Cellar/mercurial/2.8/lib/python2.7/site-packages/mercurial/extensions.py", line 196, in wrap
    return wrapper(origfn, *args, **kwargs)
  File "/usr/local/Cellar/mercurial/2.8/lib/python2.7/site-packages/hgext/largefiles/overrides.py", line 1105, in scmutiladdremove
    addlargefiles(repo.ui, repo, *pats, **opts)
TypeError: addlargefiles() argument after * must be a sequence, not NoneType

OS: Mac OS 10.9 Mavericks
Mercurial 2.8 installed with Homebrew.

The changes I was unshelving did not involve any changes to large files, but there are large files in the repository. The repository also has several git submodules.
Comment 1 Val Markovic 2013-11-25 13:54 UTC
Technically, this problem does not result in data loss because I can just go into .hg/shelved and get my changes out. But I doubt most users know about this, and even if they do, applying the changes back manually is still painful.
Comment 2 Matt Mackall 2013-11-25 14:13 UTC
Fix in progress.
Comment 3 HG Bot 2013-11-25 17:30 UTC
Fixed by http://selenic.com/repo/hg/rev/b3483223f734
Matt Mackall <mpm@selenic.com>
shelve: fix bad argument interaction with largefiles (issue4111)

(please test the fix)
Comment 4 Val Markovic 2013-11-25 17:38 UTC
I don't have that shelve diff anymore so can't test it, sorry. I applied the diff manually and then did "hg shelve --cleanup".