Skip to content
GitLab
  • Menu
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • thg thg
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 829
    • Issues 829
    • List
    • Boards
    • Service Desk
    • Milestones
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • mercurial
  • TortoiseHg
  • thgthg
  • Issues
  • #5539
Closed
Open
Created May 06, 2020 by Bitbucket Importer@bitbucket_importerOwner

py3 and Ubuntu 20.04 : Shelve feature doesn't work

Created originally on Bitbucket by Robert Tran

Hello,

I encountered this problem when using the shelve feature. Thank you for looking into it.

When I do one of the following, this error popped up:

  • create a new shelf
  • move changed files to the default shelf

Once the error occurred, the same error popped up whenever I selected Repository->Shelve. It no longer takes me to the Shelve window. The error stays until I removed the shelf file under .hg/shelves/2020-03-13_14-18-37_parent_rev_1231 (example). After I removed the file, I can click on Shelve and get the Shelve window again but as soon as I create a new shelf or move files to the default shelf, the error comes back again.

#!python
** Mercurial version (5.3.2).  TortoiseHg version (5.3.2)
** Command: 
** CWD: /home/rtran
** Encoding: UTF-8
** Extensions loaded: amend, fetch, hgk, histedit, purge, rebase, strip, tortoisehg.util.configitems
** Python version: 3.8.2 (default, Apr 27 2020, 15:53:34) [GCC 9.3.0]
** System: Linux denali 5.4.0-28-generic #32-Ubuntu SMP Wed Apr 22 17:40:10 UTC 2020 x86_64
** Qt-5.12.8 PyQt-5.14.1 QScintilla-2.11.2
Traceback (most recent call last):
  File "/usr/local/tortoisehg/tortoisehg/hgqt/workbench.py", line 862, in forwarder
    getattr(w, name)(*params, **namedparams)
  File "/usr/local/tortoisehg/tortoisehg/hgqt/repowidget.py", line 757, in shelve
    self._dialogs.open(RepoWidget._createShelveDialog)
  File "/usr/local/tortoisehg/tortoisehg/hgqt/qtlib.py", line 1256, in open
    dlg = self._preparedlg(self._genkey(self.parent(), *args, **kwargs),
  File "/usr/local/tortoisehg/tortoisehg/hgqt/qtlib.py", line 1277, in _preparedlg
    return self._populatedlg(key, args, kwargs)
  File "/usr/local/tortoisehg/tortoisehg/hgqt/qtlib.py", line 1280, in _populatedlg
    dlg = self._createdlg(self.parent(), *args, **kwargs)
  File "/usr/local/tortoisehg/tortoisehg/hgqt/repowidget.py", line 171, in <lambda>
    lambda self, dlgmeth, *args: dlgmeth(self, *args), parent=self)
  File "/usr/local/tortoisehg/tortoisehg/hgqt/repowidget.py", line 760, in _createShelveDialog
    dlg = shelve.ShelveDialog(self._repoagent)
  File "/usr/local/tortoisehg/tortoisehg/hgqt/shelve.py", line 218, in __init__
    self.refreshCombos()
  File "/usr/local/tortoisehg/tortoisehg/hgqt/shelve.py", line 471, in refreshCombos
    self.comboBChanged(idxb)
  File "/usr/local/tortoisehg/tortoisehg/hgqt/shelve.py", line 502, in comboBChanged
    self.browseb.setContext(self.repo[rev])
  File "/usr/local/tortoisehg/tortoisehg/hgqt/thgrepo.py", line 812, in __getitem__
    changectx = super(thgrepository, self).__getitem__(changeid)
  File "/home/rtran/.local/lib/python3.8/site-packages/mercurial/localrepo.py", line 1641, in __getitem__
    raise error.ProgrammingError(
mercurial.error.ProgrammingError: unsupported changeid '/home/rtran/Development/<MyProject>/.hg/shelves/2020-03-13_14-18-37_parent_rev_1231' of type <class 'bytes'>

‌

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking