Thu, 07 Nov 2019 10:23:42 +0100 rust-status: return a ParallelIterator instead of a Vec from stat_dmap_entries
Raphaël Gomès <rgomes@octobus.net> [Thu, 07 Nov 2019 10:23:42 +0100] rev 43603
rust-status: return a ParallelIterator instead of a Vec from stat_dmap_entries This allows the caller function to choose when and how the iteration and/or collection happens. This change also cleans up the now unused `filter_map`. Differential Revision: https://phab.mercurial-scm.org/D7299
Wed, 06 Nov 2019 13:43:18 +0100 rust-status: improve status performance
Raphaël Gomès <rgomes@octobus.net> [Wed, 06 Nov 2019 13:43:18 +0100] rev 43602
rust-status: improve status performance This change does more things in the parallel loop, refactors the file-level logic into two functions for added clarity. This bit of Rust code takes 55ms to execute on a repo where the stat'ing part of Valentin's fast path takes 40ms. While the code differs a bit and it's hard to get an exact measurement of how much of a performance impact it has, I can be fairly certain that this implementation is *at worse* twice as slow. Differential Revision: https://phab.mercurial-scm.org/D7254
Sat, 09 Nov 2019 12:55:56 +0900 bookmarks: accept explicit -r 'wdir()' when adding new bookmarks (issue6218)
Yuya Nishihara <yuya@tcha.org> [Sat, 09 Nov 2019 12:55:56 +0900] rev 43601
bookmarks: accept explicit -r 'wdir()' when adding new bookmarks (issue6218) Even though the bookmark semantics can't be fully encoded to the virtual working changeset idea, the active bookmark can be considered a bookmark of the working revision. Before, 'tgt' was None, and changes=[(bm, None)] means deleting a bookmark named 'bm'.
Sat, 09 Nov 2019 12:44:00 +0900 bookmarks: use changectx instead of remembering hex of hidden revision
Yuya Nishihara <yuya@tcha.org> [Sat, 09 Nov 2019 12:44:00 +0900] rev 43600
bookmarks: use changectx instead of remembering hex of hidden revision It should be better to not depend on the ctx variable which was assigned conditionally.
Sat, 09 Nov 2019 12:32:20 +0900 bookmarks: resolve target revision out of the bookmarks loop
Yuya Nishihara <yuya@tcha.org> [Sat, 09 Nov 2019 12:32:20 +0900] rev 43599
bookmarks: resolve target revision out of the bookmarks loop The target revision doesn't depend on the bookmark to be added.
Sat, 09 Nov 2019 12:09:50 +0900 bookmarks: fix handling of multiple bookmarks with one to be deactivated
Yuya Nishihara <yuya@tcha.org> [Sat, 09 Nov 2019 12:09:50 +0900] rev 43598
bookmarks: fix handling of multiple bookmarks with one to be deactivated Before, "hg bookmark --inactive Z Y" would ignore "Y" if "Z" were currently active. I'm pretty sure it is a bug.
Tue, 12 Nov 2019 11:05:03 +0100 py3: avoid iterating over a literal bytes in highlight stable
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 12 Nov 2019 11:05:03 +0100] rev 43597
py3: avoid iterating over a literal bytes in highlight In Python 3, iterating over a bytes literal yields integers. Since we use the value in `text.replace()`, this fails on Python 3 with the following trackback: Traceback (most recent call last): File "/usr/lib/python3/dist-packages/mercurial/hgweb/hgwebdir_mod.py", line 378, in run_wsgi for r in self._runwsgi(req, res): File "/usr/lib/python3/dist-packages/mercurial/hgweb/hgweb_mod.py", line 326, in run_wsgi for r in self._runwsgi(req, res, repo): File "/usr/lib/python3/dist-packages/mercurial/hgweb/hgweb_mod.py", line 449, in _runwsgi return getattr(webcommands, cmd)(rctx) File "/usr/lib/python3/dist-packages/mercurial/hgweb/webcommands.py", line 211, in file return _filerevision(web, webutil.filectx(web.repo, web.req)) File "/usr/lib/python3/dist-packages/hgext/highlight/__init__.py", line 72, in filerevision_highlight pygmentize(web, b'fileline', fctx, web.tmpl) File "/usr/lib/python3/dist-packages/hgext/highlight/__init__.py", line 58, in pygmentize field, fctx, style, tmpl, guessfilenameonly=filenameonly File "/usr/lib/python3/dist-packages/hgext/highlight/highlight.py", line 62, in pygmentize text = text.replace(c, b'') TypeError: a bytes-like object is required, not 'int'
Mon, 11 Nov 2019 22:10:26 +0900 import-checker: allow 'from typing import ...'
Yuya Nishihara <yuya@tcha.org> [Mon, 11 Nov 2019 22:10:26 +0900] rev 43596
import-checker: allow 'from typing import ...' Suppresses the following error in test-check-module-imports.t: mercurial/encoding.py:24: relative import of stdlib module
Tue, 29 Oct 2019 23:33:34 -0700 match: drop support for passing '.' for root dir to visit*() methods
Martin von Zweigbergk <martinvonz@google.com> [Tue, 29 Oct 2019 23:33:34 -0700] rev 43595
match: drop support for passing '.' for root dir to visit*() methods We said we'd drop support for it after 5.1, so it's time to clean it up now. Differential Revision: https://phab.mercurial-scm.org/D7249
Wed, 16 Oct 2019 21:31:40 -0700 tests: use time.time() for relative start and stop times
Gregory Szorc <gregory.szorc@gmail.com> [Wed, 16 Oct 2019 21:31:40 -0700] rev 43594
tests: use time.time() for relative start and stop times os.times() does not work on Windows. This was resulting in the test start, stop, and duration times being reported as 0. This commit swaps in time.time() for wall clock measurements. This isn't ideal, as time.time() is not monotonic. But Python 2.7 does not have a monotonic timer that works on Windows. So it is the best we have which is trivially usable. And test times aren't terribly important, so variances due to clock skew are arguably acceptable. Differential Revision: https://phab.mercurial-scm.org/D7126
(0) -30000 -10000 -3000 -1000 -300 -100 -10 +10 +100 +300 +1000 +3000 tip