contrib/all-revsets.txt
author Martin von Zweigbergk <martinvonz@google.com>
Fri, 21 Jun 2019 16:59:29 -0700
changeset 42590 ab416b5d9b91
parent 42205 3267aca2ec7e
child 46819 d4ba4d51f85f
permissions -rw-r--r--
tests: add more tests of copy tracing with removed and re-added files We had a test where the destination of a copy was removed and then added back. This patch adds similar cases where the break in history instead happens to the source file. There are three versions of this: 1. The break happens before the rename. 2. The break happens on a branch parallel to the rename (where copy tracing is done via the merge base) 3. The source is added on each side of the merge base. The break in history is thus in the form of a deletion when going backwards to the merge base and the re-add happens on the other branch. I've also added calls to `hg graft` in these cases to show the breakage in issue 6163. Another factor in these cases is matching nodeid (checked in copies._tracefile()). I've made two copies each of the cases to show the impact of that. One of these is the same as a test in test-rename-merge1.t, so I also deleted that test from there. Some of these tests currently fail, where "fail" is based on my current thinking of how things should work. I had initially thought that we should be more strict about not tracing copies across commits where the file did not exist, but issue 6163 made me reconsider. The only test case here that behaved differently in 4.9 is the exact case reported in issue 6163. Differential Revision: https://phab.mercurial-scm.org/D6599
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
25609
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
     1
# All revsets ever used with revsetbenchmarks.py script
25608
2fea23d035d8 contrib: rename revsetbenchmarks.txt to 'base-revsets.txt'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25545
diff changeset
     2
#
25609
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
     3
# The goal of this file is to gather all revsets ever used for benchmarking
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
     4
# revset's performance. It should be used to gather revsets that test a
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
     5
# specific usecase or a specific implementation of revset predicates.
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
     6
# If you are working on the smartset implementation itself, check
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
     7
# 'base-revsets.txt'.
25608
2fea23d035d8 contrib: rename revsetbenchmarks.txt to 'base-revsets.txt'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25545
diff changeset
     8
#
25609
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
     9
# Please update this file with any revsets you use for benchmarking a change so
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    10
# that future contributors can easily find and retest it when doing further
30332
318a24b52eeb spelling: fixes of non-dictionary words
Mads Kiilerich <madski@unity3d.com>
parents: 25647
diff changeset
    11
# modification. Feel free to highlight interesting variants if needed.
25609
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    12
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    13
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    14
## Revset from this section are all extracted from changelog when this file was
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    15
# created. Feel free to dig and improve documentation.
25608
2fea23d035d8 contrib: rename revsetbenchmarks.txt to 'base-revsets.txt'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25545
diff changeset
    16
25609
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    17
# Used in revision da05fe01170b
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    18
(20000::) - (20000)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    19
# Used in revision 95af98616aa7
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    20
parents(20000)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    21
# Used in revision 186fd06283b4
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    22
(_intlist('20000\x0020001')) and merge()
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    23
# Used in revision 911f5a6579d1
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    24
p1(20000)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    25
p2(10000)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    26
# Used in revision b6dc3b79bb25
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    27
0::
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    28
# Used in revision faf4f63533ff
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    29
bookmark()
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    30
# Used in revision 22ba2c0825da
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    31
tip~25
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    32
# Used in revision 0cf46b8298fe
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    33
bisect(range)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    34
# Used in revision 5b65429721d5
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    35
divergent()
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    36
# Used in revision 6261b9c549a2
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    37
file(COPYING)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    38
# Used in revision 44f471102f3a
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    39
follow(COPYING)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    40
# Used in revision 8040a44aab1c
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    41
origin(tip)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    42
# Used in revision bbf4f3dfd700
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    43
rev(25)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    44
# Used in revision a428db9ab61d
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    45
p1()
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    46
# Used in revision c1546d7400ef
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    47
min(0::)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    48
# Used in revision 546fa6576815
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    49
author(lmoscovicz) or author(mpm)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    50
author(mpm) or author(lmoscovicz)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    51
# Used in revision 9bfe68357c01
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    52
public() and id("d82e2223f132")
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    53
# Used in revision ba89f7b542c9
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    54
rev(25)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    55
# Used in revision eb763217152a
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    56
rev(210000)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    57
# Used in revision 69524a05a7fa
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    58
10:100
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    59
parents(10):parents(100)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    60
# Used in revision 6f1b8b3f12fd
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    61
100~5
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    62
parents(100)~5
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    63
(100~5)~5
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    64
# Used in revision 7a42e5d4c418
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    65
children(tip~100)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    66
# Used in revision 7e8737e6ab08
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    67
100^1
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    68
parents(100)^1
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    69
(100^1)^1
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    70
# Used in revision 30e0dcd7c5ff
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    71
matching(100)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    72
matching(parents(100))
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    73
# Used in revision aafeaba22826
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    74
0|1|2|3|4|5|6|7|8|9
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    75
# Used in revision 33c7a94d4dd0
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    76
tip:0
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    77
# Used in revision 7d369fae098e
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    78
(0:100000)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    79
# Used in revision b333ca94403d
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    80
0 + 1 + 2 + ... + 200
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    81
0 + 1 + 2 + ... + 1000
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    82
sort(0 + 1 + 2 + ... + 200)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    83
sort(0 + 1 + 2 + ... + 1000)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    84
# Used in revision 7fbef7932af9
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    85
first(0 + 1 + 2 + ... + 1000)
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    86
# Used in revision ceaf04bb14ff
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    87
0:1000
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    88
# Used in revision 262e6ad93885
25618
04335b430061 contrib: clean up all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25609
diff changeset
    89
not public()
04335b430061 contrib: clean up all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25609
diff changeset
    90
(tip~1000::) - public()
04335b430061 contrib: clean up all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25609
diff changeset
    91
not public() and branch("default")
25609
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    92
# Used in revision 15412bba5a68
25618
04335b430061 contrib: clean up all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25609
diff changeset
    93
0::tip
25609
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    94
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    95
## all the revsets from this section have been taken from the former central file
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
    96
# for revset's benchmarking, they are undocumented for this reason.
20777
77318d3c3b24 benchmark-revset: add full version of benchmarked revset
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20754
diff changeset
    97
all()
20744
9907b3f79ac2 contrib: added revset examples for benchmarking performance
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
diff changeset
    98
draft()
20777
77318d3c3b24 benchmark-revset: add full version of benchmarked revset
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20754
diff changeset
    99
::tip
20744
9907b3f79ac2 contrib: added revset examples for benchmarking performance
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
diff changeset
   100
draft() and ::tip
21285
7078ce067367 revsetbenchmark: add `::tip and draft()` to the canonical list
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21204
diff changeset
   101
::tip and draft()
20744
9907b3f79ac2 contrib: added revset examples for benchmarking performance
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
diff changeset
   102
author(lmoscovicz)
20777
77318d3c3b24 benchmark-revset: add full version of benchmarked revset
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20754
diff changeset
   103
author(mpm)
20861
c2a81aa19980 revsetbenchmark: add entry for ::rev::
Gregory Szorc <gregory.szorc@gmail.com>
parents: 20777
diff changeset
   104
::p1(p1(tip))::
21204
1d7a2771aa36 revset: inline spanset containment check (fix perf regression)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20894
diff changeset
   105
public()
1d7a2771aa36 revset: inline spanset containment check (fix perf regression)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20894
diff changeset
   106
:10000 and public()
1d7a2771aa36 revset: inline spanset containment check (fix perf regression)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20894
diff changeset
   107
:10000 and draft()
22312
8b980fbbd6dc revsetbenchmark: add revset with lazyset subtraction
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21939
diff changeset
   108
(not public() - obsolete())
25609
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
   109
22557
ace8320156ef revsetbenchmark: add a rebase-related revset to the benchmark list
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22556
diff changeset
   110
# The one below is used by rebase
ace8320156ef revsetbenchmark: add a rebase-related revset to the benchmark list
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22556
diff changeset
   111
(children(ancestor(tip~5, tip)) and ::(tip~5))::
25609
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
   112
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
   113
# those two `roots(...)` inputs are close to what phase movement use.
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
   114
roots((tip~100::) - (tip~100::tip))
67a2192dcb64 contrib: introduce an all-revsets.txt file
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25608
diff changeset
   115
roots((0::) - (0::tip))
25620
5f87f2305ad0 revset: translate node directly with changelog in 'head'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25618
diff changeset
   116
25647
46a96dd4d976 revset: improves time complexity of 'roots(xxx)'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25622
diff changeset
   117
# more roots testing
46a96dd4d976 revset: improves time complexity of 'roots(xxx)'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25622
diff changeset
   118
roots(tip~100:)
46a96dd4d976 revset: improves time complexity of 'roots(xxx)'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25622
diff changeset
   119
roots(:42)
46a96dd4d976 revset: improves time complexity of 'roots(xxx)'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25622
diff changeset
   120
roots(not public())
46a96dd4d976 revset: improves time complexity of 'roots(xxx)'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25622
diff changeset
   121
roots((0:tip)::)
46a96dd4d976 revset: improves time complexity of 'roots(xxx)'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25622
diff changeset
   122
roots(0::tip)
46a96dd4d976 revset: improves time complexity of 'roots(xxx)'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25622
diff changeset
   123
42:68 and roots(42:tip)
46a96dd4d976 revset: improves time complexity of 'roots(xxx)'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25622
diff changeset
   124
# Used in revision f140d6207cca
46a96dd4d976 revset: improves time complexity of 'roots(xxx)'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25622
diff changeset
   125
roots(0:tip)
46a96dd4d976 revset: improves time complexity of 'roots(xxx)'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25622
diff changeset
   126
# test disjoint set with multiple roots
46a96dd4d976 revset: improves time complexity of 'roots(xxx)'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25622
diff changeset
   127
roots((:42) + (tip~42:))
46a96dd4d976 revset: improves time complexity of 'roots(xxx)'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25622
diff changeset
   128
25620
5f87f2305ad0 revset: translate node directly with changelog in 'head'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25618
diff changeset
   129
# Testing the behavior of "head()" in various situations
5f87f2305ad0 revset: translate node directly with changelog in 'head'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25618
diff changeset
   130
head()
5f87f2305ad0 revset: translate node directly with changelog in 'head'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25618
diff changeset
   131
head() - public()
5f87f2305ad0 revset: translate node directly with changelog in 'head'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25618
diff changeset
   132
draft() and head()
5f87f2305ad0 revset: translate node directly with changelog in 'head'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25618
diff changeset
   133
head() and author("mpm")
25622
85294076adce revset: make use of natively-computed set for 'draft()' and 'secret()'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25620
diff changeset
   134
85294076adce revset: make use of natively-computed set for 'draft()' and 'secret()'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25620
diff changeset
   135
# testing the mutable phases set
85294076adce revset: make use of natively-computed set for 'draft()' and 'secret()'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25620
diff changeset
   136
draft()
85294076adce revset: make use of natively-computed set for 'draft()' and 'secret()'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25620
diff changeset
   137
secret()
38626
5957fdd1d5f0 contrib: add heads(commonancestors(_)) to all-revsets
Sean Farley <sean@farley.io>
parents: 30332
diff changeset
   138
5957fdd1d5f0 contrib: add heads(commonancestors(_)) to all-revsets
Sean Farley <sean@farley.io>
parents: 30332
diff changeset
   139
# test finding common ancestors
38711
240ebbd328e0 revset-benchmark: use a generic revset to test `heads(commonancestors())`
Boris Feld <boris.feld@octobus.net>
parents: 38626
diff changeset
   140
heads(commonancestors(last(head(), 2)))
38712
70a4289896b0 revset: add larger test for heads(ancestors(…))
Boris Feld <boris.feld@octobus.net>
parents: 38711
diff changeset
   141
heads(commonancestors(head()))
41273
5409f7ec7850 revsetbenchmarks: add various examples around the 'heads()' revset
Boris Feld <boris.feld@octobus.net>
parents: 38712
diff changeset
   142
5409f7ec7850 revsetbenchmarks: add various examples around the 'heads()' revset
Boris Feld <boris.feld@octobus.net>
parents: 38712
diff changeset
   143
# more heads testing
5409f7ec7850 revsetbenchmarks: add various examples around the 'heads()' revset
Boris Feld <boris.feld@octobus.net>
parents: 38712
diff changeset
   144
heads(all())
5409f7ec7850 revsetbenchmarks: add various examples around the 'heads()' revset
Boris Feld <boris.feld@octobus.net>
parents: 38712
diff changeset
   145
heads(-10000:-1)
5409f7ec7850 revsetbenchmarks: add various examples around the 'heads()' revset
Boris Feld <boris.feld@octobus.net>
parents: 38712
diff changeset
   146
(-5000:-1000) and heads(-10000:-1)
5409f7ec7850 revsetbenchmarks: add various examples around the 'heads()' revset
Boris Feld <boris.feld@octobus.net>
parents: 38712
diff changeset
   147
heads(matching(tip, "author"))
5409f7ec7850 revsetbenchmarks: add various examples around the 'heads()' revset
Boris Feld <boris.feld@octobus.net>
parents: 38712
diff changeset
   148
heads(matching(tip, "author")) and -10000:-1
5409f7ec7850 revsetbenchmarks: add various examples around the 'heads()' revset
Boris Feld <boris.feld@octobus.net>
parents: 38712
diff changeset
   149
(-10000:-1) and heads(matching(tip, "author"))
41278
41f14e8f335f revsetbenchmark: add more example for roots usages
Boris Feld <boris.feld@octobus.net>
parents: 41273
diff changeset
   150
# more roots testing
41f14e8f335f revsetbenchmark: add more example for roots usages
Boris Feld <boris.feld@octobus.net>
parents: 41273
diff changeset
   151
roots(all())
41f14e8f335f revsetbenchmark: add more example for roots usages
Boris Feld <boris.feld@octobus.net>
parents: 41273
diff changeset
   152
roots(-10000:-1)
41f14e8f335f revsetbenchmark: add more example for roots usages
Boris Feld <boris.feld@octobus.net>
parents: 41273
diff changeset
   153
(-5000:-1000) and roots(-10000:-1)
41f14e8f335f revsetbenchmark: add more example for roots usages
Boris Feld <boris.feld@octobus.net>
parents: 41273
diff changeset
   154
roots(matching(tip, "author"))
41f14e8f335f revsetbenchmark: add more example for roots usages
Boris Feld <boris.feld@octobus.net>
parents: 41273
diff changeset
   155
roots(matching(tip, "author")) and -10000:-1
41f14e8f335f revsetbenchmark: add more example for roots usages
Boris Feld <boris.feld@octobus.net>
parents: 41273
diff changeset
   156
(-10000:-1) and roots(matching(tip, "author"))
42205
3267aca2ec7e revsetbenchmark: track some simple use of "only"
Boris Feld <boris.feld@octobus.net>
parents: 41278
diff changeset
   157
only(max(head()))
3267aca2ec7e revsetbenchmark: track some simple use of "only"
Boris Feld <boris.feld@octobus.net>
parents: 41278
diff changeset
   158
only(max(head()), min(head()))
3267aca2ec7e revsetbenchmark: track some simple use of "only"
Boris Feld <boris.feld@octobus.net>
parents: 41278
diff changeset
   159
only(max(head()), limit(head(), 1, 1))