mercurial/revset.py
Wed, 31 Oct 2012 16:23:23 -0700 Tomasz Kleczek bundle: add revset expression to show bundle contents (issue3487)
Tue, 30 Oct 2012 18:48:44 -0500 Matt Mackall revset: accept @ in unquoted symbols (issue3686) stable
Fri, 19 Oct 2012 00:39:06 +0200 Pierre-Yves David revset: add a bumped revset
Fri, 19 Oct 2012 00:28:13 +0200 Pierre-Yves David obsolete: rename `getobscache` into `getrevs`
Mon, 08 Oct 2012 15:54:53 +0200 Pierre-Yves David clfilter: remove use of xrange in revset
Mon, 15 Oct 2012 17:43:05 +0200 Pierre-Yves David branchpoint: remove useless intermediate set creation
Mon, 15 Oct 2012 17:42:40 +0200 Pierre-Yves David clfilter: use changelog to iterate over the repo in branchpoint
Mon, 13 Aug 2012 21:50:45 +0200 Ivan Andrus revsets: add branchpoint() function
Thu, 20 Sep 2012 19:01:53 +0200 Pierre-Yves David clfilter: remove usage of `range` in favor of iteration over changelog
Tue, 11 Sep 2012 08:36:09 -0700 Bryan O'Sullivan Merge spelling fixes
Fri, 17 Aug 2012 13:58:18 -0700 timeless spelling: further
Tue, 28 Aug 2012 20:52:04 +0200 Pierre-Yves David obsolete: introduce caches for all meaningful sets
Wed, 15 Aug 2012 22:38:42 +0200 Mads Kiilerich fix trivial spelling errors
Sat, 04 Aug 2012 20:20:48 +0200 Patrick Mezard revset: add hidden() revset
Mon, 30 Jul 2012 15:48:04 +0200 Patrick Mezard revset: minor doc fixes on obsolete related revsets stable
Sat, 28 Jul 2012 23:51:57 +0900 FUJIWARA Katsunori revset: fix the definition of "unstable changesets" for "unstable" predicate stable
Wed, 25 Jul 2012 22:41:26 -0400 Greg Ward revset: polish explanation of the difference between file() and filelog() stable
Thu, 26 Jul 2012 13:58:43 +0900 FUJIWARA Katsunori i18n: add/relocate "i18n keyword" comments for i18n messages in revset.py stable
Thu, 26 Jul 2012 13:58:43 +0900 FUJIWARA Katsunori revset: use appropriate predicate name in error messages stable
Wed, 25 Jul 2012 16:15:28 +0900 FUJIWARA Katsunori revset: add explanation about difference between 'filelog()' and 'file()' stable
Sat, 07 Jul 2012 00:47:55 -0400 Matt Harbison revset: add destination() predicate
Sat, 07 Jul 2012 00:47:30 -0400 Matt Harbison revset: add origin() predicate
Fri, 06 Jul 2012 19:34:09 +0200 Pierre-Yves David obsolete: compute extinct changesets
Fri, 06 Jul 2012 00:18:09 +0200 Pierre-Yves David obsolete: compute unstable changeset
Fri, 06 Jul 2012 19:29:10 +0200 Pierre-Yves David revset: add an `obsolete` symbol
Wed, 13 Jun 2012 23:32:58 +0200 Angel Ezquerra revset: add "diff" field to "matching" keyword
Wed, 04 Jul 2012 09:38:07 -0700 Bryan O'Sullivan revset: ensure we are reversing a list (issue3530)
Tue, 05 Jun 2012 20:35:34 -0400 Matt Harbison revset: add a utility for obtaining the source of a given rev
Sun, 13 May 2012 01:12:26 -0400 Matt Harbison revset: add a predicate for finding converted changesets
Fri, 01 Jun 2012 15:50:22 -0700 Bryan O'Sullivan revset: introduce and use _revsbetween
Fri, 01 Jun 2012 15:50:22 -0700 Bryan O'Sullivan revset: implement dagrange directly
Fri, 01 Jun 2012 15:50:22 -0700 Bryan O'Sullivan revset: turn dagrange into a function
Fri, 01 Jun 2012 15:50:22 -0700 Bryan O'Sullivan revset: drop unreachable code
Thu, 24 May 2012 13:05:06 +0200 Patrick Mezard revset: cache alias expansions
Fri, 01 Jun 2012 17:05:31 -0700 Bryan O'Sullivan util: subclass deque for Python 2.4 backwards compatibility
Fri, 01 Jun 2012 15:13:05 -0500 Matt Mackall revset: avoid validating all tag nodes for tag(x)
Wed, 30 May 2012 23:14:04 +0100 Simon King revset: add pattern matching to 'extra' revset expression
Wed, 30 May 2012 23:13:58 +0100 Simon King revset: add pattern matching to the 'user' revset expression
Wed, 30 May 2012 23:13:33 +0100 Simon King revset: add pattern matching to 'bookmarks' revset expression
Wed, 30 May 2012 23:13:33 +0100 Simon King revset: add pattern matching to 'branch' revset expression
Wed, 30 May 2012 23:13:33 +0100 Simon King revset: add pattern matching to 'tag' revset expression
Wed, 30 May 2012 23:13:33 +0100 Simon King revset: add helper function for matching strings to patterns
Tue, 15 May 2012 10:46:23 -0700 Bryan O'Sullivan cleanup: use the deque type where appropriate
Tue, 22 May 2012 14:37:20 -0500 Matt Mackall merge with stable
Sat, 19 May 2012 17:19:55 +0200 Patrick Mezard revset: fix infinite alias expansion detection stable
Sat, 19 May 2012 17:18:29 +0200 Patrick Mezard revset: explicitely tag alias arguments for expansion stable
Sun, 20 May 2012 14:40:36 -0500 Matt Mackall merge with stable
Wed, 16 May 2012 17:02:30 +0900 FUJIWARA Katsunori doc: add detail explanation for 'present()' predicate of revsets stable
Thu, 17 May 2012 15:52:14 -0500 Matt Mackall merge with stable
Mon, 14 May 2012 19:25:13 -0400 Matt Harbison revset: fix traceback for bogus revisions in id(rev) stable
Sun, 13 May 2012 14:04:06 +0200 Brodie Rao context: add changectx.closesbranch() method
Sat, 12 May 2012 15:54:54 +0200 Brodie Rao cleanup: eradicate long lines
Sat, 12 May 2012 10:20:57 +0200 Henrik Stuart revset: add function for matching extra data (issue2767)
Sat, 12 May 2012 00:24:07 +0200 Patrick Mezard phases: introduce phasecache
Tue, 08 May 2012 15:29:09 -0700 Bryan O'Sullivan bisect: track the current changeset (issue3382)
Wed, 09 May 2012 18:45:14 +0200 Patrick Mezard revset: make matching() preserve input revision order stable
Thu, 10 May 2012 14:17:05 -0400 Jesse Glick revset: documentation typo "metatadata" stable
Thu, 26 Apr 2012 21:32:48 +0900 FUJIWARA Katsunori doc: flatten description of 'matching()' predicate to be formatted well stable
Thu, 26 Apr 2012 14:24:46 +0200 Patrick Mezard revset: fix adds/modifies/removes and patterns (issue3403) stable
Wed, 18 Apr 2012 21:27:35 -0700 Bryan O'Sullivan revset: fix O(n**2) behaviour of bisect() (issue3381) stable
Tue, 17 Apr 2012 10:33:47 +0200 Patrick Mezard revset: make matching() work on python 2.4
Tue, 17 Apr 2012 15:10:33 +0200 Thomas Arendsen Hein revset: use list instead of tuple for compatibility with python before 2.6
Sat, 14 Apr 2012 01:41:03 +0200 Angel Ezquerra revset: speedup matching() by first matching fields that take less time to
Fri, 13 Apr 2012 13:46:49 +0200 Angel Ezquerra revset: speedup matching() by stopping the match early if a field does not match
Fri, 13 Apr 2012 13:35:45 +0200 Angel Ezquerra revset: make matching keyword not match summary when matching for description
Fri, 13 Apr 2012 15:32:49 -0500 Matt Mackall revset: avoid demandimport bug
Thu, 12 Apr 2012 20:52:39 -0500 Matt Mackall merge with stable
Wed, 11 Apr 2012 11:32:00 +0200 Patrick Mezard graphlog: correctly handle calls in subdirectories
Wed, 11 Apr 2012 11:25:34 +0200 Patrick Mezard graphlog: fix --follow-first --rev combinations
Sun, 01 Apr 2012 14:12:14 +0200 Angel Ezquerra revset: add "matching" keyword
Sun, 08 Apr 2012 11:14:56 +0200 Patrick Mezard revset: avoid set duplication in roots() stable
Sun, 08 Apr 2012 11:13:06 +0200 Patrick Mezard revset: retrieve a bit less parents in roots() stable
Sun, 08 Apr 2012 11:11:30 +0200 Patrick Mezard revset: do not ignore input revisions in roots() stable
Fri, 24 Feb 2012 11:02:21 +0100 Patrick Mezard debugrevspec: pretty print output
Sun, 26 Feb 2012 17:10:57 +0100 Patrick Mezard context: add followfirst arg to filectx and workingfilectx
Sun, 26 Feb 2012 17:10:51 +0100 Patrick Mezard graphlog: evaluate FILE/-I/-X filesets on the working dir
Sat, 25 Feb 2012 22:11:36 +0100 Patrick Mezard graphlog: implement --follow-first
Thu, 23 Feb 2012 18:05:20 +0100 Patrick Mezard graphlog: paths/-I/-X handling requires a new revset
Thu, 09 Feb 2012 21:03:07 +0100 Patrick Mezard revset: fix alias substitution recursion (issue3240)
Fri, 27 Jan 2012 22:29:58 +0900 FUJIWARA Katsunori revset: fix documentation for 'remote()' predicate stable
Fri, 27 Jan 2012 22:29:58 +0900 FUJIWARA Katsunori revset: fix 'remote()' failure when remote repo has more revs than local stable
Fri, 20 Jan 2012 23:52:31 -0600 Matt Mackall revset: include the correct first ancestor change for follow(file) stable
Fri, 20 Jan 2012 23:10:13 -0600 Matt Mackall revset: remove unreferenced followfile function stable
Fri, 20 Jan 2012 23:05:04 -0600 Matt Mackall revsets: provide contexts for filesets stable
Fri, 20 Jan 2012 14:18:51 -0600 Matt Mackall revset: allow slashes in symbols stable
Fri, 20 Jan 2012 13:19:39 -0200 Wagner Bruna revset: fix typo in message stable
Thu, 19 Jan 2012 14:31:05 -0600 Matt Mackall revset: add remote() predicate to lookup remote revisions
Tue, 17 Jan 2012 17:48:59 -0600 Matt Mackall revset: roots needs to be computed on full set
Mon, 16 Jan 2012 01:21:30 -0600 Matt Mackall revset: optimize roots and children
Mon, 16 Jan 2012 01:21:22 -0600 Matt Mackall revset: optimize building large lists in formatrevspec
Mon, 09 Jan 2012 03:47:16 +0100 Pierre-Yves David discovery: introduce outgoing object for result of findcommonoutgoing
Fri, 06 Jan 2012 10:04:20 +0100 Pierre-Yves David phases: implements simple revset symbol
Sun, 08 Jan 2012 18:15:54 +0100 Martin Geisler Use explicit integer division
Sun, 25 Dec 2011 20:35:16 +0900 FUJIWARA Katsunori i18n: use "encoding.lower()" to normalize specified string for revset
Thu, 01 Dec 2011 01:42:03 -0600 Matt Mackall merge with stable
Wed, 30 Nov 2011 22:43:24 -0600 Matt Mackall revset: balance %l or-expressions (issue3129) stable
Sun, 20 Nov 2011 15:29:55 -0600 Matt Mackall revset: follow(nosuchfile) should give an empty set (issue3114) stable
Fri, 21 Oct 2011 14:15:58 +0200 Pierre-Yves David revset: disambiguous the node variable stable
Fri, 21 Oct 2011 12:12:21 -0500 Matt Mackall revset: deal with empty lists in formatspec stable
Sat, 15 Oct 2011 12:52:43 -0500 Matt Mackall revset: fix %r handling in formatspec
Sat, 15 Oct 2011 10:20:08 -0500 Matt Mackall revset: add %r for embedded revset support to formatspec
Sat, 24 Sep 2011 01:32:50 +0200 Yann E. MORIN hbisect: add two new revset descriptions: 'goods' and 'bads'
Tue, 20 Sep 2011 20:21:04 +0200 Yann E. MORIN revset.bisect: add 'ignored' set to the bisect keyword
Tue, 20 Sep 2011 20:19:48 +0200 Yann E. MORIN hbisect.get: use simpler code with repo.set(), fix 'pruned' set
Mon, 19 Sep 2011 16:28:44 -0500 Matt Mackall revset: add 'l' flag to formatspec for args
Sat, 17 Sep 2011 14:33:20 +0200 Yann E. MORIN revset.bisect: add new 'untested' set to the bisect keyword
Sat, 17 Sep 2011 17:30:35 +0200 Yann E. MORIN revset.bisect: add new 'pruned' set to the bisect keyword
Sat, 17 Sep 2011 17:33:34 +0200 Yann E. MORIN revset.bisect: add new 'range' set to the bisect keyword
Sat, 17 Sep 2011 00:20:45 +0200 Yann E. MORIN revset.bisect: move bisect() code to hbisect.py
Sun, 18 Sep 2011 22:54:11 +0200 Yann E. MORIN revset: rename bisected() to bisect()
Sun, 18 Sep 2011 10:07:51 +0200 Yann E. MORIN revset.bisected: remove 'unknown' state
Sat, 17 Sep 2011 12:34:47 -0500 Matt Mackall revsets: add first alias for last
Fri, 16 Sep 2011 22:57:47 -0500 Matt Mackall revset: add default of 1 to limit and last functions
Thu, 21 Jul 2011 14:05:45 -0500 Matt Mackall revset: add formatspec convenience query builder
Thu, 21 Jul 2011 14:04:57 -0500 Matt Mackall revset: allow bypassing alias expansion
Tue, 12 Jul 2011 12:35:03 -0500 Matt Mackall revsets: actually catch type error on tip^p1(tip) (issue2884) stable
Wed, 06 Jul 2011 13:37:50 -0500 Matt Mackall revsets: do the right thing with x^:y (issue2884) stable
Wed, 22 Jun 2011 01:55:00 +0200 Mads Kiilerich revset: fix aliases with 0 or more than 2 parameters stable
Wed, 22 Jun 2011 01:55:00 +0200 Mads Kiilerich revset and fileset: fix typos in parser error messages stable
Fri, 24 Jun 2011 00:18:06 +0200 Mads Kiilerich revset: fix parameter name in implementation of follow() stable
Tue, 21 Jun 2011 00:17:52 +0200 Mads Kiilerich parsers: fix localization markup of parser errors stable
Thu, 16 Jun 2011 22:47:34 +0200 Thomas Arendsen Hein revset: add desc(string) to search in commit messages
Thu, 16 Jun 2011 22:03:26 +0200 Thomas Arendsen Hein revset: update sorting of symbols
Fri, 10 Jun 2011 11:43:38 -0500 Matt Mackall hg: change various repository() users to use peer() where appropriate
Wed, 01 Jun 2011 16:42:50 -0500 Matt Mackall merge with stable
Wed, 16 Mar 2011 23:09:14 +0100 Bernhard Leiner revset: report a parse error if a revset is not parsed completely (issue2654) stable
Wed, 18 May 2011 09:56:27 +0200 Martin Geisler merge with stable
Wed, 18 May 2011 09:31:19 +0200 Martin Geisler revset: the name is optional for the tag predicate stable
Wed, 18 May 2011 09:28:11 +0200 Martin Geisler revset: note case-sensitive match in grep stable
Wed, 18 May 2011 09:20:52 +0200 Martin Geisler revset: note case-insensitive matches in keyword and user stable
Wed, 18 May 2011 09:15:18 +0200 Martin Geisler revset: expand help for contains predicate stable
Mon, 16 May 2011 17:02:35 -0500 Matt Mackall revset: add follow(filename) to follow a filename's history across copies
Mon, 16 May 2011 17:02:35 -0500 Matt Mackall revset: introduce filelog() to emulate log's fast path
Fri, 13 May 2011 12:57:27 -0500 Matt Mackall help: consolidate topic hooks in help.py
Fri, 06 May 2011 14:44:18 +0200 Peter Arrenbrecht discovery: resurrect findoutgoing as findcommonoutgoing for extension hooks
Sun, 01 May 2011 17:35:05 +0200 Mads Kiilerich revset: avoid over-aggresive optimizations of non-filtering functions (issue2549)
Sat, 30 Apr 2011 18:30:14 +0200 Alexander Solovyov revset aliases
Sat, 30 Apr 2011 17:21:37 +0200 Peter Arrenbrecht discovery: drop findoutgoing and simplify findcommonincoming's api
Sat, 30 Apr 2011 18:25:45 +0200 Kevin Gessner revset: add missing whitespace
Sat, 30 Apr 2011 17:43:04 +0200 Kevin Gessner revset: add ^ and ~ operators from parentrevspec extension
Sat, 30 Apr 2011 10:56:43 -0500 Matt Mackall revsets: add a last function
Sat, 30 Apr 2011 06:58:22 -0700 Brodie Rao revset: fix undefined name ParseError
Fri, 15 Apr 2011 20:07:44 +0300 Idan Kamara revset: optimize stringset when subset == entire repo
Wed, 13 Apr 2011 12:30:41 -0500 Augie Fackler revsets: preserve ordering with the or operator
Fri, 08 Apr 2011 17:47:58 +0300 Idan Kamara revset: rearrange code so functions are sorted alphabetically
Thu, 07 Apr 2011 19:24:16 +0300 Idan Kamara revset: abort when tag or bookmark doesn't exist
Thu, 07 Apr 2011 16:20:40 +0300 Idan Kamara revset: replace for-loop with list comprehension
Mon, 04 Apr 2011 16:21:59 -0500 Matt Mackall misc: replace .parents()[0] with p1()
Mon, 04 Apr 2011 14:21:54 -0500 Matt Mackall revset: teach optimizer that closed is slowish
Wed, 23 Mar 2011 19:28:16 -0500 Matt Mackall # User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
Wed, 16 Mar 2011 23:54:55 +0100 Markus F.X.J. Oberhumer revset: fix a number of highly dubious continue statements
Wed, 16 Mar 2011 23:09:14 +0100 Bernhard Leiner revset: report a parse error if a revset is not parsed completely (issue2654)
Sat, 12 Mar 2011 18:48:30 +0100 Benoit Boissinot revset: add a revset command to get bisect state.
Sat, 12 Mar 2011 12:46:31 +0100 Patrick Mezard help: extract items doc generation function
Thu, 24 Feb 2011 00:47:49 +0100 Mads Kiilerich revset: fix typo when assigning weight to reverse and limit stable
Thu, 10 Feb 2011 13:46:28 -0600 Matt Mackall bookmarks: move revset support to core
Mon, 22 Nov 2010 18:15:58 +0100 Martin Geisler code style: prefer 'is' and 'is not' tests with singletons
Sun, 07 Nov 2010 18:15:17 +0100 Patrick Mezard revset: remove unnecessary debug statement
Sun, 07 Nov 2010 18:14:42 +0100 Patrick Mezard revset: fix p1, p2 and parents in dirstate case (a5f7f1e9340e)
Thu, 04 Nov 2010 17:09:00 -0500 Kevin Bullock revsets: let parents() return parents of working dir
Thu, 04 Nov 2010 16:59:03 -0500 Kevin Bullock revsets: let p1() and p2() return parents of working dir
Wed, 27 Oct 2010 12:12:51 -0200 Wagner Bruna revset: fix missing dot in docstring stable
Tue, 26 Oct 2010 23:51:01 -0200 Wagner Bruna i18n: translate revset predicate docstrings stable
Sun, 24 Oct 2010 12:52:37 +0200 Patrick Mezard hggettext: handle i18nfunctions declaration for docstrings translations stable
Sat, 23 Oct 2010 19:21:51 +0200 Patrick Mezard revsets: generate predicate help dynamically stable
Sat, 23 Oct 2010 14:59:19 +0200 Martin Geisler revset: add translator comments to i18n strings stable
Fri, 15 Oct 2010 03:30:38 -0300 Wagner Bruna revset: disable subset optimization for parents() and children() (issue2437)
Sat, 16 Oct 2010 18:50:53 +0200 Benoit Boissinot revset: use 'requires' instead of 'wants' in error message
Tue, 12 Oct 2010 23:33:43 -0500 Augie Fackler revset id(): fix error text to say "id wants..." instead of "rev wants..."
Mon, 11 Oct 2010 09:44:19 -0500 Augie Fackler revset: add id() and rev() to allow explicitly referring to changes by hash or rev
Sun, 10 Oct 2010 12:41:36 -0500 Augie Fackler revset: rename tagged() to tag() and allow it to take an optional tag name
Thu, 07 Oct 2010 11:45:17 -0500 Matt Mackall revset: lower precedence of minus infix (issue2361)
Tue, 05 Oct 2010 20:25:51 +0200 Henrik Stuart merge with stable
Tue, 05 Oct 2010 11:34:13 +0200 Adrian Buehlmann revset: fix #branch in urls for outgoing() stable
Fri, 24 Sep 2010 15:36:53 -0500 Brodie Rao revset: support raw string literals
Fri, 24 Sep 2010 12:46:54 -0500 Matt Mackall backout most of 4f8067c94729
Thu, 23 Sep 2010 00:02:31 -0500 Brodie Rao cleanup: use x in (a, b) instead of x == a or x == b
Mon, 20 Sep 2010 16:40:36 -0500 Matt Mackall revsets: reduce cost of outgoing in the optimizer
Mon, 20 Sep 2010 15:42:58 +0200 Martin Geisler merge with stable
Fri, 17 Sep 2010 10:21:02 -0500 Brodie Rao revset: handle re.compile() errors in grep() stable
Mon, 30 Aug 2010 14:38:24 +0200 Martin Geisler Consistently import foo as foomod when foo to avoid shadowing
Fri, 13 Aug 2010 13:11:41 -0300 Wagner Bruna revset: predicate to avoid lookup errors
Sun, 15 Aug 2010 18:13:46 +0200 Martin Geisler Merge with stable
Thu, 12 Aug 2010 20:54:34 -0300 Wagner Bruna revset: fix outgoing argument handling stable
Fri, 30 Jul 2010 10:07:46 +0900 Nicolas Dumazet revset: add min function
Thu, 22 Jul 2010 08:17:38 -0500 Matt Mackall revset: fix ancestor subset handling (issue2298) stable
Wed, 30 Jun 2010 17:44:36 -0500 Matt Mackall revset: make negate work for sort specs stable
Mon, 28 Jun 2010 11:07:27 -0500 Matt Mackall revset: deal with empty sets in range endpoints stable
Fri, 25 Jun 2010 01:27:25 -1000 Julian Cowley revset: remove debugging leftover stable
Sat, 19 Jun 2010 13:00:08 -0500 Matt Mackall revset: fix up contains/getstring when no args passed
Sat, 19 Jun 2010 12:22:35 -0500 Matt Mackall revset: allow extended characters in symbols
Fri, 18 Jun 2010 17:34:13 -0500 Matt Mackall revset: nicer exception for empty queries
Fri, 18 Jun 2010 21:31:19 +0200 Martin Geisler revset: all your error messages are belong to _
Sun, 13 Jun 2010 23:25:27 +0200 Georg Brandl revset: fix call to ctx.extra() in closed()
Fri, 11 Jun 2010 15:30:12 -0500 Matt Mackall revset: improve filter argument handling
Tue, 08 Jun 2010 09:30:33 +0200 Dirkjan Ochtman cleanups: unused variables
Mon, 07 Jun 2010 18:35:54 +0200 Dirkjan Ochtman move discovery methods from localrepo into new discovery module
Sat, 05 Jun 2010 09:58:02 -0500 Matt Mackall revset: delay import of hg to avoid start-up import loops
Fri, 04 Jun 2010 20:57:52 -0500 Matt Mackall revset: raise ParseError exceptions
Fri, 04 Jun 2010 10:27:23 -0500 Matt Mackall revset: sort the predicate list
Fri, 04 Jun 2010 10:26:55 -0500 Matt Mackall revset: fix - handling in the optimizer
Thu, 03 Jun 2010 20:32:41 -0500 Matt Mackall revset: fix up tests
Thu, 03 Jun 2010 17:39:40 -0500 Matt Mackall revset: add tagged predicate
Thu, 03 Jun 2010 17:39:34 -0500 Matt Mackall revset: optimize the parse tree directly
Wed, 02 Jun 2010 14:07:46 -0500 Matt Mackall revset: add support for prefix and suffix versions of : and ::
Tue, 01 Jun 2010 11:18:57 -0500 Matt Mackall revset: introduce revset core
less more (0) tip