- 04 Feb, 2020 1 commit
-
-
Matt Harbison authored
The str cast is necessary, otherwise an AttributeError is raised saying (for example) that 'FileNotFoundError' object has no attribute 'decode'. In testing this (by trying to `subprocess.Popen("NULL")`), the error dialog pops up with the title, but nothing else in the box. The following message is printed in the terminal, and the whole process hangs: QObject::startTimer: Timers can only be used with threads started with QThread --HG-- branch : stable
-
- 07 Feb, 2020 1 commit
-
-
Matt Harbison authored
For some reason, building PyQt5 isn't building pyrcc5.exe, and instead creates *.bat files. But in order for *.bat files to be executed as a command, it needs to go through the shell. That's not enough, however, as the *.bat files are installed to the root of the virtualenv, which isn't on PATH. So also adjust the environment when launching. I'm not handling the case of building outside of a virtualenv because this is so complicated that it would be crazy to build inside of the global python installation. It does look like pyrcc5.exe is back and in the right place when installing with pip under py3, so this is probably a short term hack. --HG-- branch : stable
-
- 06 Feb, 2020 1 commit
-
-
Matt Harbison authored
Labels have been bytes since 9464a65a3c76. Without this, the conditional could never be true, and labels were displayed in the diff tool like `fileb'@rev:hash'`. --HG-- branch : stable
-
- 04 Feb, 2020 2 commits
-
-
Matt Harbison authored
By inspection, this string is built up using bytes. But Windows refuses to execute a command made up of bytes. --HG-- branch : stable
-
Matt Harbison authored
--HG-- branch : stable
-
- 03 Feb, 2020 1 commit
-
-
Aay Jay Chan authored
This caused a crash when selecting actions for DAG range in context menu. --HG-- branch : stable
-
- 04 Feb, 2020 2 commits
-
-
Aay Jay Chan authored
visdiff.launchtool() expects parameter `replace` to be a dict of bytes. This caused a crash when opening diff tool. --HG-- branch : stable
-
Aay Jay Chan authored
This caused a crash when opening files selection dialog when diffing to local. --HG-- branch : stable
-
- 03 Feb, 2020 2 commits
-
-
Aay Jay Chan authored
This caused a crash when exporting diff. --HG-- branch : stable
-
Aay Jay Chan authored
This caused a crash when saving commit options in repo. --HG-- branch : stable
-
- 01 Feb, 2020 2 commits
-
-
Aay Jay Chan authored
This caused a crash when saving commit options in repo. --HG-- branch : stable
-
Aay Jay Chan authored
This caused a crash when saving commit options in repo. --HG-- branch : stable
-
- 03 Feb, 2020 2 commits
-
-
Aay Jay Chan authored
This caused a crash when opening web server dialog. --HG-- branch : stable
-
Aay Jay Chan authored
This caused a crash when opening web server dialog. --HG-- branch : stable
-
- 02 Feb, 2020 1 commit
-
-
Aay Jay Chan authored
This caused a crash when opening a second thg instance. --HG-- branch : stable
-
- 01 Feb, 2020 5 commits
-
-
Aay Jay Chan authored
This caused a crash when saving HTTPS path without host validation. --HG-- branch : stable
-
Aay Jay Chan authored
This caused a crash when saving paths, and caused saved paths to not be shown. --HG-- branch : stable
-
Aay Jay Chan authored
auth returned by Mercurial's httpconnection.readauthforurl() uses bytes as keys. This caused the dialog to not show saved auth settings. --HG-- branch : stable
-
Aay Jay Chan authored
This caused a crash when opening security dialog. --HG-- branch : stable
-
Matt Harbison authored
--HG-- branch : stable
-
- 02 Feb, 2020 1 commit
-
-
Yuya Nishihara authored
--HG-- branch : stable
-
- 01 Feb, 2020 2 commits
-
-
Yuya Nishihara authored
pytype 2020.01.24 complains that pyqtSlot doesn't form a type. That's true because pyqtSlot is a decorator function. Using Any should be fine here since we just want to work around the type mismatch of the return value. File "tortoisehg/hgqt/clone.py", line 158, in __init__: Invalid type annotation '<instance of Callable>' for btnslot [invalid-annotation] Not a type Since the latest version of pytype can infer the return type of chktext3() from chktext(), we need to assert that there's a third element in the tuple. File "tortoisehg/hgqt/clone.py", line 162, in chktext3: bad option in return type [bad-return-type] Expected: Tuple[PyQt5.QtWidgets.QCheckBox, PyQt5.QtWidgets.QLineEdit, PyQt5.QtWidgets.QPushButton] Actually returned: Tuple[PyQt5.QtWidgets.QCheckBox, PyQt5.QtWidgets.QLineEdit] --HG-- branch : stable
-
Aay Jay Chan authored
This caused a crash when opening diff tool. --HG-- branch : stable
-
- 31 Jan, 2020 1 commit
-
-
Yuya Nishihara authored
--HG-- branch : stable
-
- 30 Jan, 2020 3 commits
-
-
Matt Harbison authored
I started in here after seeing `b'orphan'` above the commit message, but there were other attributes that had issues here. I tested the convert revision, but I don't have the ability to test the svn or p4 variants. The MQ one is suspicious because `thgmqoriginalparent()` returns '' in the error case, but if there are patches applied, it reached into core mercurial, so it probably also returns bytes. --HG-- branch : stable
-
Matt Harbison authored
This caused a crash when clicking on a revision that changed a subrepo. --HG-- branch : stable
-
Manuel Jacob authored
--HG-- branch : stable
-
- 28 Jan, 2020 2 commits
-
-
Matt Harbison authored
I stayed with the Qt5.9 branch because it is still supported for now. The PyQt5 documentation says to always use the latest version, and not worry about keeping it in sync with Qt5. SourceForge is lagging behind with some of these packages, so I moved them to the official download site. Not sure if this is a great idea long term, because I don't see an archive page. But we were already relying on this site for sip. Something (Qt5?) wanted `enum34` installed. So the package installation had to be moved to immediately after building python. Additionally, sip needed to be configured differently, otherwise this version of PyQt5 couldn't find it, and QScintilla failed to build.
-
Matt Harbison authored
OpenSSL 1.0.2 is now EOL, but newer versions contain API changes. The other dependencies are an intertwined mess, so doing those separately.
-
- 29 Jan, 2020 1 commit
-
-
Matt Harbison authored
Otherwise signing the overall bundle fails complaining that this item isn't signed at all.
-
- 28 Jan, 2020 1 commit
-
-
Matt Harbison authored
Qt4 support ended in December 2015. Given how new OS releases routinely break things, it's doubtful this still works.
-
- 30 Jan, 2020 1 commit
-
-
Yuya Nishihara authored
-
- 27 Jan, 2020 2 commits
-
-
Matt Harbison authored
Manually changing this is a nuisance. The CFBundle strings are supposed to be in x.y.z format (though from experience, nothing seems to care), so leverage the existing method for generating the MSI value.
-
Matt Harbison authored
-
- 24 Jan, 2020 6 commits
-
-
Matt Harbison authored
The scripts download and/or build all of the required dependencies, create a virtualenv to install them, and then build the app bundle from there. They expect a `thg` and `hg` repo in `contrib/packaging/macos/src`, so to build for now, add a symlink back to the repo root, and symlink to a local Mercurial repo. Then run `build.sh` from that directory. With Bitbucket going away, I think it's important to capture this as-is for reference before integrating it more tightly. This is unmodified from my latest pull request to fix a build failure[1] (followed by some cleanup by Sam Hathaway and me), except that I adjusted the `background.png` and `TortoiseHg.icns` to keep it working, and I generated a requirements file for the external python packages based on what the script installed to successfully build 5.3rc0. Also for whatever reason, OpenSSL fails to link on my system with Xcode 10 installed. The errors are mostly around _OBJ_xxx symbols like _OBJ_txt2obj and _OBJ_sigid_free being missing. I have no idea why this is, and the command line tools work fine, so build_settings.conf is adjusted to use the command line tools if they are installed. The next steps are to get rid of some of the cruft (Qt4, the separate setup.py, and so forth). I had some success building a py3 .app with some modifications, so this may end up being more than an historical reference when py2 support is dropped. (Sadly the py3 app crashed on startup, complaining about some missing imports. But so did a manually built .app using setup.py in the repo root.) [1] https://groups.google.com/forum/#!msg/thg-dev/vD6mbg3DTmg/1HoU6UdUBwAJ
-
Matt Harbison authored
-
Matt Harbison authored
-
Matt Harbison authored
I plan on vendoring the Mac build scripts here. I also plan on a (hopefully) much simplified set of release scripts for Windows. So it makes sense to organize this roughly like Mercurial has.
-
Matt Harbison authored
Mostly this is adding PyQt5 support, but now also includes certifi (because modern python needs it on macOS) and iniparse to edit preferences. The reference config is in setup.py in another repo for now[1]. The one thing it still doesn't do is add a module that extends `sys.path` to include the user's site-packages directory. [1] https://bitbucket.org/Weeds2000/tortoisehg-osx-build-scripts/pull-requests/1/additional-build-improvements/commits
-
Matt Harbison authored
This regressed in 4b2cc31ccaaf, because there is no `tv` attribute on `MatchTree`. The remaining reference to `tv` in that change seems legit.
-