Fri, 12 Jan 2018 11:52:57 +0000 sshpeer: add support for request tracing
Boris Feld <boris.feld@octobus.net> [Fri, 12 Jan 2018 11:52:57 +0000] rev 35699
sshpeer: add support for request tracing The new 'devel.debug.peer-request' option now also display some information about request going through ssh peer.
Fri, 12 Jan 2018 10:41:03 +0000 httppeer: add support for tracing all http request made by the peer
Boris Feld <boris.feld@octobus.net> [Fri, 12 Jan 2018 10:41:03 +0000] rev 35698
httppeer: add support for tracing all http request made by the peer This changeset introduces a new 'devel.debug.peer-request' config. When set to True, debug message about request made by peer will be issued. This help to understand what actually happens during an exchange and tracks source of performance loss. This changeset implement support for http peer only.
Fri, 12 Jan 2018 10:14:20 +0000 httppeer: move url opening in its own method
Boris Feld <boris.feld@octobus.net> [Fri, 12 Jan 2018 10:14:20 +0000] rev 35697
httppeer: move url opening in its own method This will help adding debugging logic to request opening when investigating Mercurial performance.
Fri, 12 Jan 2018 10:57:29 +0000 http: add a debug version of the push test
Boris Feld <boris.feld@octobus.net> [Fri, 12 Jan 2018 10:57:29 +0000] rev 35696
http: add a debug version of the push test This will be useful to test further debugging capabilities in coming changesets.
Wed, 17 Jan 2018 21:44:32 -0500 lfs: raise an error if the server sends an unsolicited oid
Matt Harbison <matt_harbison@yahoo.com> [Wed, 17 Jan 2018 21:44:32 -0500] rev 35695
lfs: raise an error if the server sends an unsolicited oid This shouldn't happen. But we shouldn't ignore it if it does, because something else is likely to go wrong.
Wed, 17 Jan 2018 20:54:05 -0500 lfs: correct documentation typo
Matt Harbison <matt_harbison@yahoo.com> [Wed, 17 Jan 2018 20:54:05 -0500] rev 35694
lfs: correct documentation typo
Wed, 17 Jan 2018 22:12:10 -0500 test-convert-svn-move: sort svn checkout output
Jordi Gutiérrez Hermoso <jordigh@octave.org> [Wed, 17 Jan 2018 22:12:10 -0500] rev 35693
test-convert-svn-move: sort svn checkout output It turns out that there's no guarantee in which order svn will traverse a directory while performing a checkout. Sorting the output will make these tests stable.
Sat, 13 Jan 2018 15:13:29 +0900 fileset: do not crash by unary negate operation
Yuya Nishihara <yuya@tcha.org> [Sat, 13 Jan 2018 15:13:29 +0900] rev 35692
fileset: do not crash by unary negate operation Backported from minifileset.py.
Sat, 13 Jan 2018 15:07:37 +0900 fileset: make it robust for bad function calls
Yuya Nishihara <yuya@tcha.org> [Sat, 13 Jan 2018 15:07:37 +0900] rev 35691
fileset: make it robust for bad function calls Before, it could crash or show cryptic message.
Thu, 04 Jan 2018 14:20:58 +0900 log: build follow-log filematcher at once
Yuya Nishihara <yuya@tcha.org> [Thu, 04 Jan 2018 14:20:58 +0900] rev 35690
log: build follow-log filematcher at once We no longer need to replay copy tracing to build filematcher as we can walk (rev, fctxs) pairs.
Thu, 04 Jan 2018 15:20:46 +0900 log: allow matchfn to be non-null even if both --patch/--stat are off
Yuya Nishihara <yuya@tcha.org> [Thu, 04 Jan 2018 15:20:46 +0900] rev 35689
log: allow matchfn to be non-null even if both --patch/--stat are off This makes the next patch slightly simpler.
Thu, 04 Jan 2018 14:37:15 +0900 log: replace "not pats" with matcher attribute for consistency
Yuya Nishihara <yuya@tcha.org> [Thu, 04 Jan 2018 14:37:15 +0900] rev 35688
log: replace "not pats" with matcher attribute for consistency We use match.always() in _makelogrevset(). match.always() is identical to "not pats" here since scmutil.matchandpats() empties pats in that case.
Wed, 03 Jan 2018 15:58:59 +0900 log: follow file history across copies even with -rREV (BC) (issue4959)
Yuya Nishihara <yuya@tcha.org> [Wed, 03 Jan 2018 15:58:59 +0900] rev 35687
log: follow file history across copies even with -rREV (BC) (issue4959) Still it falls back to changelog path if glob patterns or missing paths are specified. This will be changed later. .. bc:: ``log --follow -rREV FILE..`` now follows file history across copies and renames.
Wed, 03 Jan 2018 15:46:15 +0900 log: resolve --follow thoroughly in getlogrevs()
Yuya Nishihara <yuya@tcha.org> [Wed, 03 Jan 2018 15:46:15 +0900] rev 35686
log: resolve --follow thoroughly in getlogrevs() This makes sense because --follow isn't really an option to filter revisions, but an option to extend revisions to be filtered. _fileancestors() is a minimal copy of revset._follow(). They are slightly different in that which revision the matcher sees. _fileancestors() also uses ctx.walk() instead of ctx.manifest().walk() to show a better warning on bad match, which will be tested later.
Wed, 03 Jan 2018 15:13:22 +0900 log: extract function that processes log file patterns
Yuya Nishihara <yuya@tcha.org> [Wed, 03 Jan 2018 15:13:22 +0900] rev 35685
log: extract function that processes log file patterns We'll need a matcher to compute revs followed from the given patterns.
Sun, 10 Dec 2017 17:28:44 +0900 log: resolve --follow with -rREV in cmdutil.getlogrevs()
Yuya Nishihara <yuya@tcha.org> [Sun, 10 Dec 2017 17:28:44 +0900] rev 35684
log: resolve --follow with -rREV in cmdutil.getlogrevs() This also fixes alias expansion. Before, reverse() could be overridden by user alias. This isn't processed at _logrevs() as we'll need starting revisions to parse file patterns. See the subsequent patches for details.
Sun, 10 Dec 2017 18:22:06 +0900 log: remove dead code to follow descendants if ascending revisions specified
Yuya Nishihara <yuya@tcha.org> [Sun, 10 Dec 2017 18:22:06 +0900] rev 35683
log: remove dead code to follow descendants if ascending revisions specified It's been disabled since 8b4b9ee6001a "log: make -fr show complete history from the given revs" 2015-02-06, and we've got no bug report regarding this exact behavior. For details what the heck "followdescendants" is, please see the issue comment: https://bz.mercurial-scm.org/show_bug.cgi?id=4959#c72 "'rev(%d)' % startrev" can be replaced with '.' since revs are 'reversed(:.)'.
Sun, 10 Dec 2017 16:59:54 +0900 log: duplicate _logrevs() dedicated for walkchangerevs()
Yuya Nishihara <yuya@tcha.org> [Sun, 10 Dec 2017 16:59:54 +0900] rev 35682
log: duplicate _logrevs() dedicated for walkchangerevs() Prepares for refactoring getlogrevs() to fix the "log -frREV PATH" issue. I initially thought I could get rid of walkchangerevs(), but it turned out requiring non-trivial work because of a "prepare" callback and a scanning window. This patch makes sure that walkchangerevs() will be unaffected by subsequent changes.
Tue, 16 Jan 2018 21:51:27 +0900 update: fix crash on bare update when directaccess is enabled
Yuya Nishihara <yuya@tcha.org> [Tue, 16 Jan 2018 21:51:27 +0900] rev 35681
update: fix crash on bare update when directaccess is enabled 'rev' may be None. An empty 'rev' string shouldn't also be passed to unhidehashlikerevs().
Tue, 16 Jan 2018 21:42:42 +0900 templater: make sure expression is terminated by '}'
Yuya Nishihara <yuya@tcha.org> [Tue, 16 Jan 2018 21:42:42 +0900] rev 35680
templater: make sure expression is terminated by '}' This can't be ensured by the tokenize() generator since the parser stop consuming tokens once it reached an end of an operation. Spotted by Matt Harbison.
Fri, 14 Jul 2017 19:59:10 +0200 bookmark: deprecate direct update of a bookmark value
Boris Feld <boris.feld@octobus.net> [Fri, 14 Jul 2017 19:59:10 +0200] rev 35679
bookmark: deprecate direct update of a bookmark value This changeset was part of an older series preventing direct update of the bookmarks store without the change being tracked by a transaction. For some unclear reason, this was not sent to the list. So we are sending it now. Initial series: 3325c7dcabaa+08bf0ebc6c8e+712a85b3677f. We want to channel all bookmarks update through 'applychanges' so let's remove more way to work around this function.
Mon, 16 Oct 2017 14:32:06 +0200 debugdeltachain: display how many chunks would be read in sparse-read mode
Paul Morelle <paul.morelle@octobus.net> [Mon, 16 Oct 2017 14:32:06 +0200] rev 35678
debugdeltachain: display how many chunks would be read in sparse-read mode
Wed, 17 Jan 2018 21:36:18 +0000 bdiff: handle the possibility of an integer overflow when allocating
Alex Gaynor <agaynor@mozilla.com> [Wed, 17 Jan 2018 21:36:18 +0000] rev 35677
bdiff: handle the possibility of an integer overflow when allocating Differential Revision: https://phab.mercurial-scm.org/D1877
Tue, 16 Jan 2018 08:40:14 -0500 svnsubrepo: check if subrepo is missing when checking dirty state (issue5657)
Jordi Gutiérrez Hermoso <jordigh@octave.org> [Tue, 16 Jan 2018 08:40:14 -0500] rev 35676
svnsubrepo: check if subrepo is missing when checking dirty state (issue5657) During an hg convert command, subrepos are not checked out. However, a manifestmerge may occur during an hg convert if there is a merge commit, which in particular will check the dirty state of subrepos. Before this change, the lack of a checked out subrepo would error out. This check for svn subrepos is modelled after 2fdea636f254 for git subrepos.
Wed, 17 Jan 2018 13:02:42 +0100 win32text: use 'tiprev' when appropriate
Boris Feld <boris.feld@octobus.net> [Wed, 17 Jan 2018 13:02:42 +0100] rev 35675
win32text: use 'tiprev' when appropriate This is cleaner than the current 'len(repo) - 1' form.
Wed, 17 Jan 2018 13:01:38 +0100 patchbomb: use 'tiprev' when appropriate
Boris Feld <boris.feld@octobus.net> [Wed, 17 Jan 2018 13:01:38 +0100] rev 35674
patchbomb: use 'tiprev' when appropriate This is cleaner than the current 'len(repo) - 1' form.
Thu, 04 May 2017 02:28:19 +0200 revset: use 'tiprev' when appropriate
Boris Feld <boris.feld@octobus.net> [Thu, 04 May 2017 02:28:19 +0200] rev 35673
revset: use 'tiprev' when appropriate This is cleaner than the current 'len(repo) - 1' forms
Thu, 04 May 2017 02:24:04 +0200 changelog: use 'tiprev()' in 'tip()'
Boris Feld <boris.feld@octobus.net> [Thu, 04 May 2017 02:24:04 +0200] rev 35672
changelog: use 'tiprev()' in 'tip()' Since 'tip()' is just a node version of 'tiprev()' we should reuse the code.
Thu, 04 May 2017 02:23:21 +0200 changelog: introduce a 'tiprev' method
Boris Feld <boris.feld@octobus.net> [Thu, 04 May 2017 02:23:21 +0200] rev 35671
changelog: introduce a 'tiprev' method Accessing tiprev is a common need through the code base. It is usually done using "len(changelog) -1". That form is tedious and error-prone. For example, it will give wrong results on filtered changelog (if the unfiltered tip is filtered). As a result, we introduce a simple 'tiprev()' method to provide this exact information in a nice way.
Wed, 17 Jan 2018 15:47:38 -0500 contrib: add some basic scaffolding for some fuzz test targets
Augie Fackler <augie@google.com> [Wed, 17 Jan 2018 15:47:38 -0500] rev 35670
contrib: add some basic scaffolding for some fuzz test targets I'd like to get the majority of our C code covered by automated fuzz testing. I've started with bdiff because it was already decoupled from libpython and therefore was fairly quick to produce a working fuzzer. The code here is a little odd because I've been having trouble convincing libfuzzer to define a main and I threw in the towel. This code will also work with github.com/google/oss-fuzz, and once it lands in our main repo I intend to enable automated fuzzing in oss-fuzz with reports going to our security alias. Differential Revision: https://phab.mercurial-scm.org/D1875
(0) -30000 -10000 -3000 -1000 -300 -100 -50 -30 +30 +50 +100 +300 +1000 +3000 +10000 tip