thg issueshttps://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues2023-05-23T03:54:33Zhttps://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/5901error when switching branch2023-05-23T03:54:33Znoel bautistaerror when switching branchcan't switch branch. getting this pop up when switching branch:
```python
** Mercurial version (6.4.2). TortoiseHg version (6.4.2)
** Command:
** CWD: C:\WINDOWS\System32
** Encoding: cp1252
** Extensions loaded: largefiles, strip, to...can't switch branch. getting this pop up when switching branch:
```python
** Mercurial version (6.4.2). TortoiseHg version (6.4.2)
** Command:
** CWD: C:\WINDOWS\System32
** Encoding: cp1252
** Extensions loaded: largefiles, strip, tortoisehg.util.configitems
** Python version: 3.9.13 (tags/v3.9.13:6de2ca5, May 17 2022, 16:36:42) [MSC v.1929 64 bit (AMD64)]
** Windows version: sys.getwindowsversion(major=6, minor=2, build=9200, platform=2, service_pack='')
** Processor architecture: x64
** Qt-5.15.2 PyQt-5.15.7 QScintilla-2.13.3
Traceback (most recent call last):
File "tortoisehg\hgqt\cmdui.pyc", line 649, in runCommand
File "tortoisehg\hgqt\update.pyc", line 398, in runCommand
File "tortoisehg\hgqt\update.pyc", line 342, in isclean
File "mercurial\context.pyc", line 1460, in modified
File "mercurial\util.pyc", line 1760, in __get__
File "mercurial\context.pyc", line 1425, in _status
File "mercurial\localrepo.pyc", line 244, in wrapper
File "hgext\largefiles\reposetup.pyc", line 114, in status
File "mercurial\localrepo.pyc", line 3388, in status
File "mercurial\context.pyc", line 432, in status
File "mercurial\context.pyc", line 2001, in _buildstatus
File "mercurial\context.pyc", line 1924, in _dirstatestatus
File "mercurial\context.pyc", line 1871, in _poststatusfixup
File "mercurial\dirstate.pyc", line 84, in wrap
mercurial.error.ProgrammingError: calling `wrap` after the dirstate was invalidated
```https://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/5893Dialog about a log file when using a shared machine2023-05-08T21:36:43ZChris OltonDialog about a log file when using a shared machineOS: Windows 2016 64-bit
tgh: 6.4.2
We are getting the below dialog when opening TortoiseHg and when performing Explorer context menu commands. This is a shared machine with at least two users at a time. The problem does not occur for wh...OS: Windows 2016 64-bit
tgh: 6.4.2
We are getting the below dialog when opening TortoiseHg and when performing Explorer context menu commands. This is a shared machine with at least two users at a time. The problem does not occur for whoever opens TortoiseHg first, but every subsequent use of Tortoise brings up this error.
Possibly related to https://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/5135.
![tortoisehg_error](/uploads/613a3a9761df3932c91150e2a6aa2ec9/tortoisehg_error.png)https://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/5135thgw.exe.log could not be opened2023-05-04T14:52:09ZBitbucket Importerthgw.exe.log could not be opened*Created originally on Bitbucket by [Horinius (T.F. SEAK)](https://bitbucket.org/%7B8ce673ba-c08d-4b1e-a8e8-07426f8de946%7D/)*
There is actually an old issue for this problem but it was already closed as resolved so I have to open anoth...*Created originally on Bitbucket by [Horinius (T.F. SEAK)](https://bitbucket.org/%7B8ce673ba-c08d-4b1e-a8e8-07426f8de946%7D/)*
There is actually an old issue for this problem but it was already closed as resolved so I have to open another one. The previous issue is at
https://bitbucket.org/tortoisehg/thg/issues/892/win7-64-access-error-writing-log
I am able to reproduce this bug **at ease** with version 4.6.1 x64 in a newly installed Win 10 version 1803. And this is what I did to reproduce it:
1. Clone a repo at https://bitbucket.org/
2. Enter username
3. Enter password
4. Close Hg workbench
And the dialog telling me that *... thgw.exe.log could not be opened ...* would appear. And subsequently, every time I open and close the workbench, the same dialog would appear again.https://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/5840Checkbox not scaled in high DPI on Windows 10 / 112023-04-29T05:19:46Zhuyi7Checkbox not scaled in high DPI on Windows 10 / 11![image](/uploads/461bfc3ca5a355d59c8fd90f5fc91152/image.png)
The checkbox besides the text label 'Changeset' is not scaled properly on high DPI settings.
Tested on latest TortoiseHg version 6.2.3 with 200% scaled DPI setting.![image](/uploads/461bfc3ca5a355d59c8fd90f5fc91152/image.png)
The checkbox besides the text label 'Changeset' is not scaled properly on high DPI settings.
Tested on latest TortoiseHg version 6.2.3 with 200% scaled DPI setting.https://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/5890crash report: thg6.4.2 on win8.12023-04-21T08:48:32Zalexraynecrash report: thg6.4.2 on win8.1download and installs thg 6.4.2 on win8.1 x64.
1st start reports:
```python
** Mercurial version (6.4.2). TortoiseHg version (6.4.2)
** Command: --nofork workbench
** CWD: D:\projects\askon\vector10c
** Encoding: cp1251
** Extensions ...download and installs thg 6.4.2 on win8.1 x64.
1st start reports:
```python
** Mercurial version (6.4.2). TortoiseHg version (6.4.2)
** Command: --nofork workbench
** CWD: D:\projects\askon\vector10c
** Encoding: cp1251
** Extensions loaded: strip, tortoisehg.util.configitems
** Python version: 3.9.13 (tags/v3.9.13:6de2ca5, May 17 2022, 16:36:42) [MSC v.1929 64 bit (AMD64)]
** Windows version: sys.getwindowsversion(major=6, minor=2, build=9200, platform=2, service_pack='')
** Processor architecture: x64
** Qt-5.15.2 PyQt-5.15.7 QScintilla-2.13.3
Traceback (most recent call last):
File "tortoisehg\hgqt\run.pyc", line 143, in dispatch
File "tortoisehg\hgqt\run.pyc", line 352, in _runcatch
File "tortoisehg\hgqt\run.pyc", line 446, in runcommand
File "tortoisehg\hgqt\run.pyc", line 498, in _runcommand
File "tortoisehg\hgqt\run.pyc", line 451, in checkargs
File "tortoisehg\hgqt\run.pyc", line 444, in <lambda>
File "tortoisehg\hgqt\qtapp.pyc", line 527, in __call__
File "tortoisehg\hgqt\qtapp.pyc", line 443, in _fixapplicationfont
File "ctypes\__init__.pyc", line 387, in __getattr__
File "ctypes\__init__.pyc", line 392, in __getitem__
AttributeError: function 'SystemParametersInfoForDpi' not found
```https://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/5694Randomly fails to show checkboxes to select which changes to commit2023-04-19T19:54:55Zteo1978Randomly fails to show checkboxes to select which changes to commit{{image.png}}
This is my working directory.
Normally, at the places indicated by the red arrows, i.e. for every chunk of consecutive additions/deletions/changes in a file, there would be a checkbox allowing you to select/unselect chang...{{image.png}}
This is my working directory.
Normally, at the places indicated by the red arrows, i.e. for every chunk of consecutive additions/deletions/changes in a file, there would be a checkbox allowing you to select/unselect changes so you can do a commit where you commit only part of the changes even within a given file.
Those checkboxes are missing now.
This was working until recently and I haven't updated Thg, so this is not a regression that has appeared now, but rather something that randomly happens and has happened to me now.https://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/5889Updating on Windows 11 requires reboot2023-04-19T19:49:32ZPhil SherwoodUpdating on Windows 11 requires rebootWhenever I try to upgrade, the installer fails to stop whatever services it is trying to stop. IIRC, on Win10, it would restart them successfully. However, since Win11, the services(?) don't stop, and I have to reboot my machine because ...Whenever I try to upgrade, the installer fails to stop whatever services it is trying to stop. IIRC, on Win10, it would restart them successfully. However, since Win11, the services(?) don't stop, and I have to reboot my machine because the explorer.exe process (the one that handles the toolbar, etc) is gone. So I have no start menu, and have to use the Ctl Alt Del command to sign out. This might be expected, but it is annoying, so I thought I'd report it.https://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/5884Repo is growing rapidly on "Ammend to commit" even if there is only a small c...2023-04-19T16:17:05ZMichael HutterRepo is growing rapidly on "Ammend to commit" even if there is only a small change- Create a new Repo (hg init)
- Commit a small text file => `.hg` folder has some KB
- Commit a big binary file => `.hg` folder has e. g. 20 MB
- Change a line in the text file
- Choose "Amend current revision" (I want to overwrite the l...- Create a new Repo (hg init)
- Commit a small text file => `.hg` folder has some KB
- Commit a big binary file => `.hg` folder has e. g. 20 MB
- Change a line in the text file
- Choose "Amend current revision" (I want to overwrite the last commit)
I would expect that `.hg` folder has still 20 MB.<br>
But in reality it grows to 40 MB!!!<br>
That is a mistake because the old commit should be overwritten.<br>
Finally I am not able to access the first commit anymore so why whould I waste disc space?https://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/5867extension problem: mercurial_keyring2023-04-19T16:15:03ZVladimir Smorodincevextension problem: mercurial_keyringHello.
I use Windows 10 and Mercurial - 5.9.2 x64, but I decided to upgrade to the latest version 6.3.2 x64, in the application I used the mercurial_keyring extension, after the upgrade I needed to clone a new repository from the server...Hello.
I use Windows 10 and Mercurial - 5.9.2 x64, but I decided to upgrade to the latest version 6.3.2 x64, in the application I used the mercurial_keyring extension, after the upgrade I needed to clone a new repository from the server to local storage, but there was no effect when entering the password , every time a window appeared asking you to enter the password again and an authorization error was displayed, I tried to enter commands through CMD, the same effect, then I tried to reinstall the program, cleaning up the settings and configuration files of the application - it didn’t help, the effect remained the same, also I I noticed that access to existing repositories also began to require a password and an authorization error was displayed, then I tried to disable the mercurial_keyring extension and entering the password everything started. I tried to enable the extension and again when working with the repositories there was an authorization error, so I believe that there are authorization problems with this extension. I decided to delete the application again and roll back to version 5.9.2, this version has no problems with this extension.
my system where the problem was found:
windows 10 Pro (21H2 - 19044.2486)
Mercurial 6.3.2 x64https://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/5888Selection of text when editing mercurial.ini file is messed up2023-04-18T12:32:19ZDominic BarracloughSelection of text when editing mercurial.ini file is messed upThis issue shows up on THG version 6.3.2 but has been present in earlier versions.
How to generate the issue
Go to the file menu
select Settings option
on the displayed TortoiseHg Settings select "<user>'s global settings" tab
Click...This issue shows up on THG version 6.3.2 but has been present in earlier versions.
How to generate the issue
Go to the file menu
select Settings option
on the displayed TortoiseHg Settings select "<user>'s global settings" tab
Click on the "Edit File" button
In the new edit window, attempt to select text
As you select text the selection is marked by a blue box. The blue box contains selected text but also a ever growing gap of blue (so no text at the right hand end. And the unselected text gets pushed to the right of its normal position when it is unselected.
As an illustration
consider the following text in my mercurial.ini file
editor = "C:\Program Files (x86)\Notepad++\notepad++.exe" -multiInst -nosession
when I attempt to select the path between the quotes I will see the following. Note the blue selection region is between the quotation marks - yes there is a large region of space after .exe that appears in the selection!
editor = "C:\Program Files (x86)\Notepad++\notepad++.exe " -multiInst -nosession
Also, if I attempt to select a single character in the path by
inserting the cursor to the left of the character ("initial cursor position")
left button down
mouse move to the right
The text to the right of the initial cursor position is move to the right and a gap of multiple spaces in inserted to the left of the insertion point. The gap is formed by movement of the text to the right.
Note This problem shows up with a minimal mercurial.ini file consisting of
[ui]
username = My Name <my_name@a_domain.com>
verbose = True
editor = "C:\Program Files (x86)\Notepad++\notepad++.exe" -multiInst -nosessionhttps://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/5885Crash while opening and/or using shelve window2023-04-06T15:07:07ZMichael HutterCrash while opening and/or using shelve windowI simply tried to open the shelve window...
```python
** Mercurial version (6.4+hg6.3f5137543773). TortoiseHg version (6.4rc0+28-7cf2d5dd91fc)
** Command:
** CWD: C:\Program Files\TortoiseHg
** Encoding: cp1252
** Extensions loaded: a...I simply tried to open the shelve window...
```python
** Mercurial version (6.4+hg6.3f5137543773). TortoiseHg version (6.4rc0+28-7cf2d5dd91fc)
** Command:
** CWD: C:\Program Files\TortoiseHg
** Encoding: cp1252
** Extensions loaded: absorb, acl, amend, automv, churn, clonebundles, closehead, commitextras, convert, extdiff, fastannotate, fix, hggit 1.0.2 (dulwich 0.21.3), histedit, journal, keyword, largefiles, mercurial_extension_utils, mq, purge, rebase, relink, schemes, share, show, sparse, split, strip, tortoisehg.util.configitems, transplant, uncommit
** Python version: 3.9.13 (tags/v3.9.13:6de2ca5, May 17 2022, 16:36:42) [MSC v.1929 64 bit (AMD64)]
** Windows version: sys.getwindowsversion(major=6, minor=2, build=9200, platform=2, service_pack='')
** Processor architecture: x64
** Qt-5.15.2 PyQt-5.15.7 QScintilla-2.13.3
Traceback (most recent call last):
File "tortoisehg\hgqt\workbench.pyc", line 884, in forwarder
File "tortoisehg\hgqt\repowidget.pyc", line 845, in shelve
File "tortoisehg\hgqt\qtlib.pyc", line 1386, in open
File "tortoisehg\hgqt\qtlib.pyc", line 1407, in _preparedlg
File "tortoisehg\hgqt\qtlib.pyc", line 1410, in _populatedlg
File "tortoisehg\hgqt\repowidget.pyc", line 249, in <lambda>
File "tortoisehg\hgqt\repowidget.pyc", line 848, in _createShelveDialog
File "tortoisehg\hgqt\shelve.pyc", line 218, in __init__
File "tortoisehg\hgqt\shelve.pyc", line 470, in refreshCombos
File "tortoisehg\hgqt\shelve.pyc", line 491, in comboAChanged
File "tortoisehg\hgqt\chunks.pyc", line 493, in setContext
File "mercurial\context.pyc", line 1456, in files
File "mercurial\util.pyc", line 1760, in __get__
File "mercurial\context.pyc", line 1425, in _status
File "mercurial\localrepo.pyc", line 244, in wrapper
File "hgext\largefiles\reposetup.pyc", line 114, in status
File "mercurial\localrepo.pyc", line 3388, in status
File "mercurial\context.pyc", line 432, in status
File "mercurial\context.pyc", line 2001, in _buildstatus
File "mercurial\context.pyc", line 1924, in _dirstatestatus
File "mercurial\context.pyc", line 1871, in _poststatusfixup
File "mercurial\dirstate.pyc", line 84, in wrap
mercurial.error.ProgrammingError: calling `wrap` after the dirstate was invalidated
Traceback (most recent call last):
File "tortoisehg\hgqt\chunks.pyc", line 480, in displayFile
File "tortoisehg\hgqt\chunks.pyc", line 758, in displayFile
File "tortoisehg\hgqt\filedata.pyc", line 915, in createFileData
File "tortoisehg\hgqt\filedata.pyc", line 260, in __init__
File "tortoisehg\hgqt\filedata.pyc", line 116, in __init__
AttributeError: 'NoneType' object has no attribute 'repo'
```
After clicking on "OK" button I had a follow-up crash:
```python
** Mercurial version (6.4+hg6.3f5137543773). TortoiseHg version (6.4rc0+28-7cf2d5dd91fc)
** Command:
** CWD: C:\Program Files\TortoiseHg
** Encoding: cp1252
** Extensions loaded: absorb, acl, amend, automv, churn, clonebundles, closehead, commitextras, convert, extdiff, fastannotate, fix, hggit 1.0.2 (dulwich 0.21.3), histedit, journal, keyword, largefiles, mercurial_extension_utils, mq, purge, rebase, relink, schemes, share, show, sparse, split, strip, tortoisehg.util.configitems, transplant, uncommit
** Python version: 3.9.13 (tags/v3.9.13:6de2ca5, May 17 2022, 16:36:42) [MSC v.1929 64 bit (AMD64)]
** Windows version: sys.getwindowsversion(major=6, minor=2, build=9200, platform=2, service_pack='')
** Processor architecture: x64
** Qt-5.15.2 PyQt-5.15.7 QScintilla-2.13.3
Traceback (most recent call last):
File "tortoisehg\hgqt\chunks.pyc", line 185, in timerEvent
AttributeError: 'ChunksWidget' object has no attribute 'ctx'
```
Then without restarting TortoiseHg I tried again to open the shelve window (Repository / Verstauen).
This time it worked without a problem.https://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/3Error trying to lauch "thg log"2023-04-03T21:42:44ZBitbucket ImporterError trying to lauch "thg log"*Created originally on Bitbucket by [Saulius Gurklys](https://bitbucket.org/%7Babe9390d-4488-4d97-8340-f16558b3e08b%7D/)*
Hello,
executing {{{python thg log}}} I got and an error
{{{
#!python
** Please report this bug to http://...*Created originally on Bitbucket by [Saulius Gurklys](https://bitbucket.org/%7Babe9390d-4488-4d97-8340-f16558b3e08b%7D/)*
Hello,
executing {{{python thg log}}} I got and an error
{{{
#!python
** Please report this bug to http://bitbucket.org/tortoisehg/stable/issues
** Mercurial version (1.6+2-b2468fb58b2b). TortoiseHg version (1.1.2+199-f0433be8925a)
** Command: log
** CWD: N:\src\0mercurial\tortoisehg-stable
** Extensions loaded: rebase, win32text, mq, extdiff, highlight, graphlog, bookmarks
** Python version: 2.6.4 (r264:75708, Oct 26 2009, 08:23:19) [MSC v.1500 32 bit (Intel)]
** Windows version: (5, 1, 2600, 2, 'Service Pack 3')
** Processor architecture: x86
Traceback (most recent call last):
File "N:\src\0mercurial\tortoisehg-stable\tortoisehg\hgqt\run.py", line 400, in __call__
dlg = dlgfunc(ui, *args, **opts)
File "N:\src\0mercurial\tortoisehg-stable\tortoisehg\hgqt\workbench.py", line 868, in run
return Workbench(ui, repo)
File "N:\src\0mercurial\tortoisehg-stable\tortoisehg\hgqt\workbench.py", line 73, in __init__
self.reporegistry = rr = RepoRegistryView(ui, self)
File "N:\src\0mercurial\tortoisehg-stable\tortoisehg\hgqt\reporegistry.py", line 185, in __init__
self.tmodel = m = RepoTreeModel(self.openrepo, ui, settingsfilename())
File "N:\src\0mercurial\tortoisehg-stable\tortoisehg\hgqt\repotreemodel.py", line 64, in __init__
root = readXml(f, reporegistryXmlElementName, self)
File "N:\src\0mercurial\tortoisehg-stable\tortoisehg\hgqt\repotreemodel.py", line 44, in readXml
itemread = undumpObject(xr, model)
File "N:\src\0mercurial\tortoisehg-stable\tortoisehg\hgqt\repotreeitem.py", line 44, in undumpObject
obj.undump(xr)
File "N:\src\0mercurial\tortoisehg-stable\tortoisehg\hgqt\repotreeitem.py", line 107, in undump
item = undumpObject(xr, self.model)
File "N:\src\0mercurial\tortoisehg-stable\tortoisehg\hgqt\repotreeitem.py", line 44, in undumpObject
obj.undump(xr)
File "N:\src\0mercurial\tortoisehg-stable\tortoisehg\hgqt\repotreeitem.py", line 270, in undump
RepoTreeItem.undump(self, xr)
File "N:\src\0mercurial\tortoisehg-stable\tortoisehg\hgqt\repotreeitem.py", line 107, in undump
item = undumpObject(xr, self.model)
File "N:\src\0mercurial\tortoisehg-stable\tortoisehg\hgqt\repotreeitem.py", line 44, in undumpObject
obj.undump(xr)
File "N:\src\0mercurial\tortoisehg-stable\tortoisehg\hgqt\repotreeitem.py", line 171, in undump
RepoTreeItem.undump(self, xr)
File "N:\src\0mercurial\tortoisehg-stable\tortoisehg\hgqt\repotreeitem.py", line 107, in undump
item = undumpObject(xr, self.model)
File "N:\src\0mercurial\tortoisehg-stable\tortoisehg\hgqt\repotreeitem.py", line 41, in undumpObject
classname = xmlToClass(str(xr.name().toString()))
File "N:\src\0mercurial\tortoisehg-stable\tortoisehg\hgqt\repotreeitem.py", line 32, in xmlToClass
return xmlClassMap[ele]
KeyError: 'paths'
}}}
Am I missing something?
Thanks
https://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/2Unwanted workbench changeset update2023-04-03T21:42:44ZBitbucket ImporterUnwanted workbench changeset update*Created originally on Bitbucket by [abuehl (Adrian Buehlmann)](https://bitbucket.org/%7Bbde8a3b1-d552-45fc-95c8-fd1617b73bfd%7D/)*
http://groups.google.com/group/thg-dev/msg/b7c1621631d981f2?hl=en*Created originally on Bitbucket by [abuehl (Adrian Buehlmann)](https://bitbucket.org/%7Bbde8a3b1-d552-45fc-95c8-fd1617b73bfd%7D/)*
http://groups.google.com/group/thg-dev/msg/b7c1621631d981f2?hl=enhttps://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/1horizontal scroll range too small in diff in workbench2023-04-03T21:42:44ZBitbucket Importerhorizontal scroll range too small in diff in workbench*Created originally on Bitbucket by [abuehl (Adrian Buehlmann)](https://bitbucket.org/%7Bbde8a3b1-d552-45fc-95c8-fd1617b73bfd%7D/)*
Using revision 79af6205f5c8.
Open the thg repo itself in workbench ('thg log') and look at the diff of ...*Created originally on Bitbucket by [abuehl (Adrian Buehlmann)](https://bitbucket.org/%7Bbde8a3b1-d552-45fc-95c8-fd1617b73bfd%7D/)*
Using revision 79af6205f5c8.
Open the thg repo itself in workbench ('thg log') and look at the diff of d5646ce28cf4.
The diff can't be scrolled to the full right end of the diff with the scroller on the bottom right, so it's impossible to see the full line of the diff of the file contrib/win32/setup.cfg.
Seen on Windows 7 x64 with PyQt GPL 4.7.3-2 for Python v2.6
*Attachments:* [issue-1](/uploads/39af3a5c4ba342e16155d37bac022035/issue-1.PNG)[issue-1-linux](/uploads/1ea768795d08d07a3bb1ccfa8f88dd51/issue-1-linux.png)https://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/1865Add Keep Checkbox for Strip2023-04-03T21:42:43ZBitbucket ImporterAdd Keep Checkbox for Strip*Created originally on Bitbucket by Anonymous*
Add a checkbox to allow the -k/--keep option when stripping a revision.
Currently, only the following options are allowed when stripping:
* Discard local changes, no backup (-f/--force)
*...*Created originally on Bitbucket by Anonymous*
Add a checkbox to allow the -k/--keep option when stripping a revision.
Currently, only the following options are allowed when stripping:
* Discard local changes, no backup (-f/--force)
* No backup (-n/--nobackup)
I would like to see something along the lines of:
* Do not modify working copy during strip (--keep)https://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/5844TortoiseHgOverlayServer not starting (Python 3 bytes / str issues)2023-03-29T16:24:41ZMarc SchlaichTortoiseHgOverlayServer not starting (Python 3 bytes / str issues)The TortoiseHgOverlayServer.exe doesn't start at all.
Running TortoiseHgOverlayServer.py from the repository it throws the following exception:
```
>py TortoiseHgOverlayServer.py
Traceback (most recent call last):
File "D:\temp\thg-b...The TortoiseHgOverlayServer.exe doesn't start at all.
Running TortoiseHgOverlayServer.py from the repository it throws the following exception:
```
>py TortoiseHgOverlayServer.py
Traceback (most recent call last):
File "D:\temp\thg-branch-stable\TortoiseHgOverlayServer.py", line 574, in <module>
main()
File "D:\temp\thg-branch-stable\TortoiseHgOverlayServer.py", line 566, in main
logger.setfile(logfilename)
File "D:\temp\thg-branch-stable\TortoiseHgOverlayServer.py", line 78, in setfile
self.msg('%s, Version %s' % (APP_TITLE, version.version()))
File "D:\temp\thg-branch-stable\TortoiseHgOverlayServer.py", line 85, in msg
f.write(ts + msg + '\n')
TypeError: a bytes-like object is required, not 'str'
```
This is most likely a regression from Python 3 migration.
One possible solution would be `f.write((ts + msg + '\n').encode('ascii'))` in the relevant line.
Then a second exception is raised:
```
Traceback (most recent call last):
File "D:\temp\thg-branch-stable\TortoiseHgOverlayServer.py", line 574, in <module>
main()
File "D:\temp\thg-branch-stable\TortoiseHgOverlayServer.py", line 570, in main
w=MainWindow()
File "D:\temp\thg-branch-stable\TortoiseHgOverlayServer.py", line 157, in __init__
self.hwnd = CreateWindow( classAtom, APP_TITLE, style,
TypeError: Objects of type 'bytes' can not be converted to Unicode.
```
Here a solution could be `APP_TITLE = _('TortoiseHg Overlay Icon Server').decode('ascii')`
Number 3
```
Traceback (most recent call last):
File "C:\Users\schlaich\AppData\Local\Programs\Python\Python39-32\lib\threading.py", line 973, in _bootstrap_inner
self.run()
File "D:\temp\thg-branch-stable\TortoiseHgOverlayServer.py", line 434, in run
s = req.split('|')
TypeError: a bytes-like object is required, not 'str'
```
Solution `s = req.decode('ascii').split('|')`
Number 4
```
Traceback (most recent call last):
File "C:\Users\schlaich\AppData\Local\Programs\Python\Python39-32\lib\threading.py", line 973, in _bootstrap_inner
self.run()
File "D:\temp\thg-branch-stable\TortoiseHgOverlayServer.py", line 439, in run
dispatch(req, cmd, args, self.hwnd)
File "D:\temp\thg-branch-stable\TortoiseHgOverlayServer.py", line 418, in dispatch
update(args, hwnd)
File "D:\temp\thg-branch-stable\TortoiseHgOverlayServer.py", line 379, in update
s = req.split('|')
TypeError: a bytes-like object is required, not 'str'
```
Solution `s = req.decode('ascii').split('|')`
Number 5
```
Traceback (most recent call last):
File "C:\Users\schlaich\AppData\Local\Programs\Python\Python39-32\lib\threading.py", line 973, in _bootstrap_inner
self.run()
File "D:\temp\thg-branch-stable\TortoiseHgOverlayServer.py", line 439, in run
dispatch(req, cmd, args, self.hwnd)
File "D:\temp\thg-branch-stable\TortoiseHgOverlayServer.py", line 418, in dispatch
update(args, hwnd)
File "D:\temp\thg-branch-stable\TortoiseHgOverlayServer.py", line 392, in update
update_batch(batch)
File "D:\temp\thg-branch-stable\TortoiseHgOverlayServer.py", line 299, in update_batch
if shlib.update_thgstatus(_ui, r, wait=False):
File "D:\temp\thg-branch-stable\tortoisehg\util\shlib.py", line 94, in update_thgstatus
repo = hg.repository(ui, root) # a fresh repo object is needed
File "D:\temp\venv-hg\lib\site-packages\mercurial\hg.py", line 217, in repository
peer = _peerorrepo(
File "D:\temp\venv-hg\lib\site-packages\mercurial\hg.py", line 184, in _peerorrepo
obj = _peerlookup(path).instance(
File "D:\temp\venv-hg\lib\site-packages\mercurial\hg.py", line 144, in _peerlookup
u = urlutil.url(path)
File "D:\temp\venv-hg\lib\site-packages\mercurial\utils\urlutil.py", line 144, in __init__
if parsefragment and b'#' in path:
TypeError: 'in <string>' requires string as left operand, not bytes
```
Solution `if shlib.update_thgstatus(_ui, r.encode('ascii'), wait=False):`https://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/5874Bug unop Commit: utf-8' codec can't decode byte 0xcd in position 662023-03-29T16:19:54ZsevlatBug unop Commit: utf-8' codec can't decode byte 0xcd in position 66```python
** Mercurial version (6.2.3). TortoiseHg version (6.2.3)
** Command:
** CWD: C:\Windows\system32
** Encoding: cp1251
** Extensions loaded: histedit, mq, rebase, strip, tortoisehg.util.configitems
** Python version: 3.9.12 (ta...```python
** Mercurial version (6.2.3). TortoiseHg version (6.2.3)
** Command:
** CWD: C:\Windows\system32
** Encoding: cp1251
** Extensions loaded: histedit, mq, rebase, strip, tortoisehg.util.configitems
** Python version: 3.9.12 (tags/v3.9.12:b28265d, Mar 23 2022, 23:52:46) [MSC v.1929 64 bit (AMD64)]
** Windows version: sys.getwindowsversion(major=6, minor=2, build=9200, platform=2, service_pack='')
** Processor architecture: x64
** Qt-5.15.2 PyQt-5.15.7 QScintilla-2.13.3
Traceback (most recent call last):
File "tortoisehg\hgqt\commit.pyc", line 1274, in commandFinished
File "tortoisehg\util\shlib.pyc", line 50, in shell_notify
File "os.pyc", line 824, in fsdecode
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xcd in position 66: invalid continuation byte
```https://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/5881Error while uploading changes2023-03-27T13:47:10ZMartina MError while uploading changes```python
** Mercurial version (6.2.3). TortoiseHg version (6.2.3)
** Command: --nofork commit
** CWD: D:\Data\Optocat.Manuals
** Encoding: cp1252
** Extensions loaded: mercurial_keyring unknown, strip, tortoisehg.util.configitems
** Py...```python
** Mercurial version (6.2.3). TortoiseHg version (6.2.3)
** Command: --nofork commit
** CWD: D:\Data\Optocat.Manuals
** Encoding: cp1252
** Extensions loaded: mercurial_keyring unknown, strip, tortoisehg.util.configitems
** Python version: 3.9.12 (tags/v3.9.12:b28265d, Mar 23 2022, 23:52:46) [MSC v.1929 64 bit (AMD64)]
** Windows version: sys.getwindowsversion(major=6, minor=2, build=9200, platform=2, service_pack='')
** Processor architecture: x64
** Qt-5.15.2 PyQt-5.15.7 QScintilla-2.13.3
Traceback (most recent call last):
File "tortoisehg\hgqt\commit.pyc", line 1274, in commandFinished
File "tortoisehg\util\shlib.pyc", line 50, in shell_notify
File "os.pyc", line 824, in fsdecode
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xfc in position 89: invalid start byte
```https://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/5831Every commit reports about this issue2023-03-27T13:47:10ZIllia LykhoshvaiEvery commit reports about this issue```python
** Mercurial version (6.2.2). TortoiseHg version (6.2.2)
** Command: --nofork workbench
** CWD: C:\Users\Илья\Desktop
** Encoding: cp1251
** Extensions loaded: strip, tortoisehg.util.configitems
** Python version: 3.9.12 (tags...```python
** Mercurial version (6.2.2). TortoiseHg version (6.2.2)
** Command: --nofork workbench
** CWD: C:\Users\Илья\Desktop
** Encoding: cp1251
** Extensions loaded: strip, tortoisehg.util.configitems
** Python version: 3.9.12 (tags/v3.9.12:b28265d, Mar 23 2022, 23:52:46) [MSC v.1929 64 bit (AMD64)]
** Windows version: sys.getwindowsversion(major=6, minor=2, build=9200, platform=2, service_pack='')
** Processor architecture: x64
** Qt-5.15.2 PyQt-5.15.7 QScintilla-2.13.3
Traceback (most recent call last):
File "tortoisehg\hgqt\commit.pyc", line 1270, in commandFinished
File "tortoisehg\util\shlib.pyc", line 50, in shell_notify
File "os.pyc", line 824, in fsdecode
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc8 in position 9: invalid continuation byte
```https://foss.heptapod.net/mercurial/tortoisehg/thg/-/issues/5693Update not working after revision query change2023-03-23T14:43:05ZKPOPUpdate not working after revision query change1. Given the following repository, with a default and one additional branch. We're at revision 2 of _MyBranch_ and that row is selected. (screenshot: https://postimg.cc/ZCxgTsWK )
- rev 2 in MyBranch <<--- working copy
- rev 1 in M...1. Given the following repository, with a default and one additional branch. We're at revision 2 of _MyBranch_ and that row is selected. (screenshot: https://postimg.cc/ZCxgTsWK )
- rev 2 in MyBranch <<--- working copy
- rev 1 in MyBranch
- rev 0 in default
2. Enter a revision set query to show only the _default _branch, branch('default') in my case (screenshot: https://postimg.cc/bZY5d0n0 )
- rev 0 in default
3. Select update on the top row belonging to the _default_ branch (screenshot: https://postimg.cc/21HKWqds )
**Expected behaviour**: the dialog shows to update to that revision 0 in the _default_ branch
**Actual behaviour**: the dialog still shows the top row before the filter, i.e., revision 2 from _MyBranch_
It looks like there is an issue with the index of that row not updating, leading to the wrong revision to be passed to the "Update" dialog.