Tue, 05 Feb 2019 17:02:40 -0500 py3: ensure the HTTP password manager returns strings, not bytes
Matt Harbison <matt_harbison@yahoo.com> [Tue, 05 Feb 2019 17:02:40 -0500] rev 41590
py3: ensure the HTTP password manager returns strings, not bytes The digest handler calls into the password manager on its own, and it apparently expects strings. Perhaps the Basic authentication handler didn't hit this because of its manual password fetch and format in retry_http_basic_auth(). The `pycompat.bytesurl()` on the user and password just above the first url.py diff seems unnecessary, because the password proxy in ui is converting to bytes IIUC.
Tue, 05 Feb 2019 16:47:19 -0500 tests: enable HTTP digest testing
Matt Harbison <matt_harbison@yahoo.com> [Tue, 05 Feb 2019 16:47:19 -0500] rev 41589
tests: enable HTTP digest testing I suppose we could spin the client side extension off to a *.py file if it gets more use. I was basically just looking to avoid killing the server and relaunching it just to change authentication schemes, because that doesn't always work on Windows. The test changes capture the problem with py3.
Tue, 05 Feb 2019 16:16:14 -0500 wsgiheaders: make sure __repr__() returns a string
Matt Harbison <matt_harbison@yahoo.com> [Tue, 05 Feb 2019 16:16:14 -0500] rev 41588
wsgiheaders: make sure __repr__() returns a string When printing `req.headers` on the server side to debug, it complained that '%b' needed to take a string, not bytes. Changing '%s' to '%r' caused it to complain that __repr__ didn't return a string.
Tue, 05 Feb 2019 13:32:39 -0500 tests: add code to handle HTTP digests on the server side
Matt Harbison <matt_harbison@yahoo.com> [Tue, 05 Feb 2019 13:32:39 -0500] rev 41587
tests: add code to handle HTTP digests on the server side It's not hooked up yet. Mostly this was cargoculted and simplified from some python.org code[1]. It's not trying to test the security as much as it is trying to make sure that clients are sending out the right data when challenged. (And they aren't on py3.) [1] http://svn.python.org/projects/sandbox/trunk/digestauth/digestauth.py
Tue, 05 Feb 2019 13:30:48 -0500 run-tests: allow spaces in the --view tool
Matt Harbison <matt_harbison@yahoo.com> [Tue, 05 Feb 2019 13:30:48 -0500] rev 41586
run-tests: allow spaces in the --view tool Most tools on Windows are in Program Files, and not necessarily on PATH.
Tue, 05 Feb 2019 09:37:23 -0500 tests: extract the http server authentication extension to a single module
Matt Harbison <matt_harbison@yahoo.com> [Tue, 05 Feb 2019 09:37:23 -0500] rev 41585
tests: extract the http server authentication extension to a single module We had 4 copy/pastes of this, and no coverage for http digests (which are currently broken on py3).
Sat, 02 Feb 2019 21:58:49 -0800 extdiff: support tools that can be run simultaneously
Ludovic Chabant <ludovic@chabant.com> [Sat, 02 Feb 2019 21:58:49 -0800] rev 41584
extdiff: support tools that can be run simultaneously
Tue, 05 Feb 2019 20:50:54 -0500 subrepo: avoid false unsafe path detection on Windows stable
Matt Harbison <matt_harbison@yahoo.com> [Tue, 05 Feb 2019 20:50:54 -0500] rev 41583
subrepo: avoid false unsafe path detection on Windows Subrepo paths are not normalized for the OS, so what was happening in the subsequent root path check was: root -> $TESTTMP\issue1852a\sub/repo util.expandpath(...) -> $TESTTMP\issue1852a\sub/repo os.path.realpath(...) -> $TESTTMP\issue1852a\sub\repo
Tue, 05 Feb 2019 11:17:11 -0800 largefiles: use wrappedfunction() in overriderevert()
Martin von Zweigbergk <martinvonz@google.com> [Tue, 05 Feb 2019 11:17:11 -0800] rev 41582
largefiles: use wrappedfunction() in overriderevert() Differential Revision: https://phab.mercurial-scm.org/D5869
Tue, 05 Feb 2019 14:25:11 -0800 largefiles: use wrappedfunction() for "normal files match" in overridecopy()
Martin von Zweigbergk <martinvonz@google.com> [Tue, 05 Feb 2019 14:25:11 -0800] rev 41581
largefiles: use wrappedfunction() for "normal files match" in overridecopy() Differential Revision: https://phab.mercurial-scm.org/D5868
(0) -30000 -10000 -3000 -1000 -300 -100 -10 +10 +100 +300 +1000 +3000 +10000 tip