Mon, 11 Jun 2018 19:24:01 +0200 statprof: fix save and load
Boris Feld <boris.feld@octobus.net> [Mon, 11 Jun 2018 19:24:01 +0200] rev 38274
statprof: fix save and load Fix these functions even if they don't are used at the moment. Thanks to Yuya Nishihara for spotting that.
Mon, 11 Jun 2018 19:05:41 +0200 perftemplating: abort on incompatible version
Boris Feld <boris.feld@octobus.net> [Mon, 11 Jun 2018 19:05:41 +0200] rev 38273
perftemplating: abort on incompatible version This is what the other debug commands do. Thanks to Yuya Nishihara for pointing this out.
Tue, 05 Jun 2018 21:40:33 +0900 templater: fix string representation of wrapped None
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Jun 2018 21:40:33 +0900] rev 38272
templater: fix string representation of wrapped None flatten() and stringify() skip None, which means wrappedvalue(None).show() must return '' instead of 'None'. This isn't a problem right now, but we'll encounter it once we start using wrapped types extensively.
Fri, 08 Jun 2018 20:57:54 +0900 templater: show slightly better hint on map operation error
Yuya Nishihara <yuya@tcha.org> [Fri, 08 Jun 2018 20:57:54 +0900] rev 38271
templater: show slightly better hint on map operation error It was super hard to find where the templater went wrong if a keyword was evaluated to '' or None.
Wed, 21 Mar 2018 12:28:12 +0900 templater: inline unwraphybrid()
Yuya Nishihara <yuya@tcha.org> [Wed, 21 Mar 2018 12:28:12 +0900] rev 38270
templater: inline unwraphybrid() flatten() is the solo user of this function.
Mon, 19 Mar 2018 00:26:55 +0900 templater: drop hybrid-ness on unwrapvalue()
Yuya Nishihara <yuya@tcha.org> [Mon, 19 Mar 2018 00:26:55 +0900] rev 38269
templater: drop hybrid-ness on unwrapvalue() Proxy methods are no longer necessary as list/dict functions go through the wrapped interface.
Fri, 23 Mar 2018 22:31:58 +0900 templater: mark .keytype as a private attribute
Yuya Nishihara <yuya@tcha.org> [Fri, 23 Mar 2018 22:31:58 +0900] rev 38268
templater: mark .keytype as a private attribute
Mon, 19 Mar 2018 00:23:20 +0900 templater: abstract ifcontains() over wrapped types
Yuya Nishihara <yuya@tcha.org> [Mon, 19 Mar 2018 00:23:20 +0900] rev 38267
templater: abstract ifcontains() over wrapped types This allows us to make .keytype private. There's a minor BC that a hybrid dict/list of keytype=None now strictly checks the type of the needle. For example, {ifcontains(rev, files)} no longer matches a file named "1" at the rev=1. I made this change for consistency with the get(dict, key) function. We can restore the old behavior by making keytype=bytes the default if desired.
Wed, 21 Mar 2018 12:06:18 +0900 templater: inline wraphybridvalue()
Yuya Nishihara <yuya@tcha.org> [Wed, 21 Mar 2018 12:06:18 +0900] rev 38266
templater: inline wraphybridvalue() All wraphybridvalue() calls are now handled in the hybrid class.
Mon, 19 Mar 2018 00:16:12 +0900 templater: abstract min/max away
Yuya Nishihara <yuya@tcha.org> [Mon, 19 Mar 2018 00:16:12 +0900] rev 38265
templater: abstract min/max away I'm not certain how many get*() functions I'll add to the wrapped types, but getmin() and getmax() will allow us to optimize a revset wrapper.
Sun, 10 Jun 2018 12:24:53 +0900 stringutil: fix prettyrepr() to not orphan foo=<...> line
Yuya Nishihara <yuya@tcha.org> [Sun, 10 Jun 2018 12:24:53 +0900] rev 38264
stringutil: fix prettyrepr() to not orphan foo=<...> line
Sun, 10 Jun 2018 11:55:52 +0900 debugwalk: pretty-print nested matcher
Yuya Nishihara <yuya@tcha.org> [Sun, 10 Jun 2018 11:55:52 +0900] rev 38263
debugwalk: pretty-print nested matcher While porting filesets to composition of matchers, I found the original one-liner was hard to read.
Sun, 10 Jun 2018 11:53:56 +0900 debugwalk: show matcher output only if -v/--verbose
Yuya Nishihara <yuya@tcha.org> [Sun, 10 Jun 2018 11:53:56 +0900] rev 38262
debugwalk: show matcher output only if -v/--verbose And drop "egrep -v". This matches the behavior of "hg debugrevspec".
Sun, 10 Jun 2018 11:50:09 +0900 stringutil: promote smartset.prettyformat() to utility function
Yuya Nishihara <yuya@tcha.org> [Sun, 10 Jun 2018 11:50:09 +0900] rev 38261
stringutil: promote smartset.prettyformat() to utility function It will be used by debugwalk.
Fri, 01 Jun 2018 17:27:58 +0200 profiling: introduce a "profiling.time-track" option
Boris Feld <boris.feld@octobus.net> [Fri, 01 Jun 2018 17:27:58 +0200] rev 38260
profiling: introduce a "profiling.time-track" option This option allows to switch the time used by the statistical profiler from cpu to real time. Our goal is to profile IO intensive operations using the mercurial profiler.
Fri, 01 Jun 2018 11:23:27 +0200 statprof: also gather wall time
Boris Feld <boris.feld@octobus.net> [Fri, 01 Jun 2018 11:23:27 +0200] rev 38259
statprof: also gather wall time Gathering wall time information is useful for operations that are IO (files, network) intensive. For now we only expose it in the final summary.
(0) -30000 -10000 -3000 -1000 -300 -100 -16 +16 +100 +300 +1000 +3000 +10000 tip