annotate tests/test-obsolete-distributed.t @ 45034:b1a1702262c9 stable

py3: fix crash when server address is 0.0.0.0 (issue6362) `socket.getfqdn()` assumes that the name is passed as `str` on Python 3 and always returns `str` in this case. Mercurial passed `bytes` (but still expected a `str` result), which worked by chance in many cases, except for e.g. b'0.0.0.0', which was returned unchanged, breaking later code. Instead of calling `socket.getfqdn()`, we can also use `self.server_name` from the base `HTTPServer` class, which already stores the FQDN of the locally-bound socket name (see `BaseHTTPServer.py` in the Python 2 stdlib and `http/server.py` in the Python 3 stdlib).
author Manuel Jacob <me@manueljacob.de>
date Fri, 03 Jul 2020 23:25:19 +0200
parents bd7b2c8d06cc
children ed84a4d48910
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
1 =============================
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
2 Test distributed obsolescence
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
3 =============================
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
4
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
5 This file test various cases where data (changeset, phase, obsmarkers) is
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
6 added to the repository in a specific order. Usually, this order is unlikely
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
7 to happen in the local case but can easily happen in the distributed case.
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
8
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
9 $ unset HGUSER
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
10 $ unset EMAIL
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
11 $ . $TESTDIR/testlib/obsmarker-common.sh
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
12 $ cat >> $HGRCPATH << EOF
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
13 > [extensions]
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
14 > rebase =
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
15 > [experimental]
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
16 > evolution = all
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
17 > [phases]
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
18 > publish = False
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
19 > [ui]
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
20 > logtemplate= {rev}:{node|short} {desc}{if(obsfate, " [{join(obsfate, "; ")}]")}\n
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
21 > EOF
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
22
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
23 Check distributed chain building
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
24 ================================
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
25
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
26 Test case where a changeset is marked as a successor of another local
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
27 changeset while the successor has already been obsoleted remotely.
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
28
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
29 The chain of evolution should seamlessly connect and all but the new version
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
30 (created remotely) should be seen as obsolete.
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
31
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
32 Initial setup
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
33
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
34 $ mkdir distributed-chain-building
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
35 $ cd distributed-chain-building
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
36 $ hg init server
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
37 $ cd server
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
38 $ cat << EOF >> .hg/hgrc
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
39 > [ui]
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
40 > username = server
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
41 > EOF
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
42 $ mkcommit ROOT
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
43 $ mkcommit c_A0
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
44 $ hg up 'desc("ROOT")'
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
45 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
46 $ mkcommit c_A1
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
47 created new head
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
48 $ hg up 'desc("ROOT")'
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
49 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
50 $ mkcommit c_B0
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
51 created new head
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
52 $ hg debugobsolete `getid 'desc("c_A0")'` `getid 'desc("c_A1")'`
42893
34a46d48d24e debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42130
diff changeset
53 1 new obsolescence markers
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
54 obsoleted 1 changesets
34850
62a4ccf9784a obsfate: filter out current user if not in verbose
Boris Feld <boris.feld@octobus.net>
parents: 34847
diff changeset
55 $ hg log -G --hidden -v
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
56 @ 3:e5d7dda7cd28 c_B0
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
57 |
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
58 | o 2:7f6b0a6f5c25 c_A1
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
59 |/
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
60 | x 1:e1b46f0f979f c_A0 [rewritten as 2:7f6b0a6f5c25 by server (at 1970-01-01 00:00 +0000)]
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
61 |/
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
62 o 0:e82fb8d02bbf ROOT
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
63
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
64 $ hg debugobsolete
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
65 e1b46f0f979f52748347ff8729c59f2ef56e6fe2 7f6b0a6f5c25345a83870963efd827c1798a5959 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'server'}
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
66 $ cd ..
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
67
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
68 duplicate the repo for the client:
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
69
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
70 $ cp -R server client
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
71 $ cat << EOF >> client/.hg/hgrc
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
72 > [paths]
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
73 > default = ../server/
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
74 > [ui]
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
75 > username = client
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
76 > EOF
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
77
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
78 server side: create new revision on the server (obsoleting another one)
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
79
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
80 $ cd server
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
81 $ hg up 'desc("ROOT")'
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
82 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
83 $ mkcommit c_B1
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
84 created new head
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
85 $ hg debugobsolete `getid 'desc("c_B0")'` `getid 'desc("c_B1")'`
42893
34a46d48d24e debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42130
diff changeset
86 1 new obsolescence markers
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
87 obsoleted 1 changesets
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
88 $ hg log -G
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
89 @ 4:391a2bf12b1b c_B1
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
90 |
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
91 | o 2:7f6b0a6f5c25 c_A1
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
92 |/
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
93 o 0:e82fb8d02bbf ROOT
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
94
34850
62a4ccf9784a obsfate: filter out current user if not in verbose
Boris Feld <boris.feld@octobus.net>
parents: 34847
diff changeset
95 $ hg log -G --hidden -v
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
96 @ 4:391a2bf12b1b c_B1
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
97 |
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
98 | x 3:e5d7dda7cd28 c_B0 [rewritten as 4:391a2bf12b1b by server (at 1970-01-01 00:00 +0000)]
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
99 |/
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
100 | o 2:7f6b0a6f5c25 c_A1
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
101 |/
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
102 | x 1:e1b46f0f979f c_A0 [rewritten as 2:7f6b0a6f5c25 by server (at 1970-01-01 00:00 +0000)]
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
103 |/
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
104 o 0:e82fb8d02bbf ROOT
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
105
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
106 $ hg debugobsolete
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
107 e1b46f0f979f52748347ff8729c59f2ef56e6fe2 7f6b0a6f5c25345a83870963efd827c1798a5959 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'server'}
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
108 e5d7dda7cd28e6b3f79437e5b8122a38ece0255c 391a2bf12b1b8b05a72400ae36b26d50a091dc22 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'server'}
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
109 $ cd ..
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
110
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
111 client side: create a marker between two common changesets
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
112 (client is not aware of the server activity yet)
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
113
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
114 $ cd client
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
115 $ hg debugobsolete `getid 'desc("c_A1")'` `getid 'desc("c_B0")'`
42893
34a46d48d24e debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42130
diff changeset
116 1 new obsolescence markers
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
117 obsoleted 1 changesets
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
118 $ hg log -G
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
119 @ 3:e5d7dda7cd28 c_B0
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
120 |
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
121 o 0:e82fb8d02bbf ROOT
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
122
34850
62a4ccf9784a obsfate: filter out current user if not in verbose
Boris Feld <boris.feld@octobus.net>
parents: 34847
diff changeset
123 $ hg log -G --hidden -v
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
124 @ 3:e5d7dda7cd28 c_B0
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
125 |
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
126 | x 2:7f6b0a6f5c25 c_A1 [rewritten as 3:e5d7dda7cd28 by client (at 1970-01-01 00:00 +0000)]
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
127 |/
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
128 | x 1:e1b46f0f979f c_A0 [rewritten as 2:7f6b0a6f5c25 by server (at 1970-01-01 00:00 +0000)]
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
129 |/
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
130 o 0:e82fb8d02bbf ROOT
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
131
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
132 $ hg debugobsolete
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
133 e1b46f0f979f52748347ff8729c59f2ef56e6fe2 7f6b0a6f5c25345a83870963efd827c1798a5959 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'server'}
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
134 7f6b0a6f5c25345a83870963efd827c1798a5959 e5d7dda7cd28e6b3f79437e5b8122a38ece0255c 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'client'}
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
135
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
136 client side: pull from the server
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
137 (the new successors should take over)
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
138
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
139 $ hg up 'desc("ROOT")'
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
140 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
44545
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
141 $ hg pull --confirm --config ui.interactive=True << EOF
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
142 > n
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
143 > EOF
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34961
diff changeset
144 pulling from $TESTTMP/distributed-chain-building/server
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
145 searching for changes
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
146 adding changesets
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
147 adding manifests
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
148 adding file changes
44545
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
149 adding 1 changesets with 1 changes to 1 files (+1 heads)
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
150 1 new obsolescence markers
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
151 obsoleting 1 changesets
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
152 new changesets 391a2bf12b1b (1 drafts)
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
153 accept incoming changes (yn)? n
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
154 transaction abort!
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
155 rollback completed
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
156 abort: user aborted
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
157 [255]
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
158
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
159 $ hg pull --confirm --config ui.interactive=True << EOF
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
160 > y
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
161 > EOF
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
162 pulling from $TESTTMP/distributed-chain-building/server
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
163 searching for changes
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
164 adding changesets
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
165 adding manifests
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
166 adding file changes
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
167 adding 1 changesets with 1 changes to 1 files (+1 heads)
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
168 1 new obsolescence markers
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
169 obsoleting 1 changesets
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
170 new changesets 391a2bf12b1b (1 drafts)
bd7b2c8d06cc pull: add `--confirm` flag to confirm before writing changes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 42893
diff changeset
171 accept incoming changes (yn)? y
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
172 added 1 changesets with 1 changes to 1 files (+1 heads)
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
173 1 new obsolescence markers
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
174 obsoleted 1 changesets
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
175 new changesets 391a2bf12b1b (1 drafts)
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
176 (run 'hg heads' to see heads)
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
177 $ hg log -G
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
178 o 4:391a2bf12b1b c_B1
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
179 |
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
180 @ 0:e82fb8d02bbf ROOT
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
181
34850
62a4ccf9784a obsfate: filter out current user if not in verbose
Boris Feld <boris.feld@octobus.net>
parents: 34847
diff changeset
182 $ hg log -G --hidden -v
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
183 o 4:391a2bf12b1b c_B1
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
184 |
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
185 | x 3:e5d7dda7cd28 c_B0 [rewritten as 4:391a2bf12b1b by server (at 1970-01-01 00:00 +0000)]
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
186 |/
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
187 | x 2:7f6b0a6f5c25 c_A1 [rewritten as 3:e5d7dda7cd28 by client (at 1970-01-01 00:00 +0000)]
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
188 |/
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
189 | x 1:e1b46f0f979f c_A0 [rewritten as 2:7f6b0a6f5c25 by server (at 1970-01-01 00:00 +0000)]
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
190 |/
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
191 @ 0:e82fb8d02bbf ROOT
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
192
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
193 $ hg debugobsolete
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
194 e1b46f0f979f52748347ff8729c59f2ef56e6fe2 7f6b0a6f5c25345a83870963efd827c1798a5959 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'server'}
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
195 7f6b0a6f5c25345a83870963efd827c1798a5959 e5d7dda7cd28e6b3f79437e5b8122a38ece0255c 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'client'}
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
196 e5d7dda7cd28e6b3f79437e5b8122a38ece0255c 391a2bf12b1b8b05a72400ae36b26d50a091dc22 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'server'}
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
197
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
198 server side: receive client push
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
199 (the other way around, pushing to the server, the obsolete changesets stay
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
200 obsolete on the server side but the marker is sent out.)
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
201
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
202 $ hg rollback
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
203 repository tip rolled back to revision 3 (undo pull)
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
204 $ hg push -f
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34961
diff changeset
205 pushing to $TESTTMP/distributed-chain-building/server
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
206 searching for changes
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
207 adding changesets
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
208 adding manifests
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
209 adding file changes
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
210 added 0 changesets with 0 changes to 1 files
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
211 1 new obsolescence markers
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
212 obsoleted 1 changesets
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
213 $ hg -R ../server/ log -G
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
214 @ 4:391a2bf12b1b c_B1
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
215 |
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
216 o 0:e82fb8d02bbf ROOT
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
217
34850
62a4ccf9784a obsfate: filter out current user if not in verbose
Boris Feld <boris.feld@octobus.net>
parents: 34847
diff changeset
218 $ hg -R ../server/ log -G --hidden -v
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
219 @ 4:391a2bf12b1b c_B1
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
220 |
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
221 | x 3:e5d7dda7cd28 c_B0 [rewritten as 4:391a2bf12b1b by server (at 1970-01-01 00:00 +0000)]
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
222 |/
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
223 | x 2:7f6b0a6f5c25 c_A1 [rewritten as 3:e5d7dda7cd28 by client (at 1970-01-01 00:00 +0000)]
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
224 |/
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
225 | x 1:e1b46f0f979f c_A0 [rewritten as 2:7f6b0a6f5c25 by server (at 1970-01-01 00:00 +0000)]
34650
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
226 |/
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
227 o 0:e82fb8d02bbf ROOT
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
228
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
229 $ hg debugobsolete
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
230 e1b46f0f979f52748347ff8729c59f2ef56e6fe2 7f6b0a6f5c25345a83870963efd827c1798a5959 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'server'}
6c85f4e3d914 test: add a test file dedicated to an important distributed case
Boris Feld <boris.feld@octobus.net>
parents:
diff changeset
231 7f6b0a6f5c25345a83870963efd827c1798a5959 e5d7dda7cd28e6b3f79437e5b8122a38ece0255c 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'client'}
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
232 $ cd ..
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
233
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
234 Check getting changesets after getting the markers
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
235 =================================================
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
236
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
237 This test case covers the scenario where commits are received -after- we
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
238 received some obsolescence markers turning them obsolete.
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
239
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
240 For example, we pull some successors from a repository (with associated
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
241 predecessors marker chain) and then later we pull some intermediate
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
242 precedessors changeset from another repository. Obsolescence markers must
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
243 apply to the intermediate changeset. They have to be obsolete (and hidden).
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
244
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
245 Avoiding pulling the changeset in the first place is a tricky decision because
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
246 there could be non-obsolete ancestors that need to be pulled, but the
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
247 discovery cannot currently find these (this is not the case in this tests). In
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
248 addition, we could also have to pull the changeset because they have children.
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
249 In this case, they would not be hidden (yet) because of the orphan descendant,
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
250 but they would still have to be obsolete. (This is not tested in this case
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
251 either).
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
252
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
253 $ mkdir distributed-chain-building
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
254 $ cd distributed-chain-building
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
255 $ hg init server
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
256 $ cd server
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
257 $ cat << EOF >> .hg/hgrc
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
258 > [ui]
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
259 > username = server
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
260 > EOF
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
261 $ mkcommit ROOT
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
262 $ cd ..
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
263 $ hg clone server repo-Alice
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
264 updating to branch default
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
265 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
266 $ cat << EOF >> repo-Alice/.hg/hgrc
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
267 > [ui]
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
268 > username = alice
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
269 > EOF
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
270 $ hg clone server repo-Bob
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
271 updating to branch default
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
272 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
273 $ cat << EOF >> repo-Bob/.hg/hgrc
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
274 > [ui]
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
275 > username = bob
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
276 > EOF
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
277 $ hg clone server repo-Celeste
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
278 updating to branch default
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
279 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
280 $ cat << EOF >> repo-Celeste/.hg/hgrc
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
281 > [ui]
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
282 > username = celeste
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
283 > EOF
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
284
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
285 Create some changesets locally
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
286
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
287 $ cd repo-Alice
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
288 $ mkcommit c_A0
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
289 $ mkcommit c_B0
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
290 $ cd ..
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
291
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
292 Bob pulls from Alice and rewrites them
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
293
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
294 $ cd repo-Bob
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
295 $ hg pull ../repo-Alice
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
296 pulling from ../repo-Alice
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
297 searching for changes
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
298 adding changesets
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
299 adding manifests
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
300 adding file changes
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
301 added 2 changesets with 2 changes to 2 files
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
302 new changesets d33b0a3a6464:ef908e42ce65 (2 drafts)
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
303 (run 'hg update' to get a working copy)
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
304 $ hg up 'desc("c_A")'
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
305 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
306 $ hg commit --amend -m 'c_A1'
35709
1a09dad8b85a evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents: 35393
diff changeset
307 1 new orphan changesets
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
308 $ hg rebase -r 'desc("c_B0")' -d . # no easy way to rewrite the message with the rebase
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
309 rebasing 2:ef908e42ce65 "c_B0"
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
310 $ hg up
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
311 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
312 $ hg commit --amend -m 'c_B1'
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
313 $ hg log -G
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
314 @ 5:956063ac4557 c_B1
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
315 |
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
316 o 3:5b5708a437f2 c_A1
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
317 |
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
318 o 0:e82fb8d02bbf ROOT
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
319
34850
62a4ccf9784a obsfate: filter out current user if not in verbose
Boris Feld <boris.feld@octobus.net>
parents: 34847
diff changeset
320 $ hg log -G --hidden -v
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
321 @ 5:956063ac4557 c_B1
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
322 |
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
323 | x 4:5ffb9e311b35 c_B0 [rewritten using amend as 5:956063ac4557 by bob (at 1970-01-01 00:00 +0000)]
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
324 |/
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
325 o 3:5b5708a437f2 c_A1
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
326 |
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
327 | x 2:ef908e42ce65 c_B0 [rewritten using rebase as 4:5ffb9e311b35 by bob (at 1970-01-01 00:00 +0000)]
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
328 | |
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
329 | x 1:d33b0a3a6464 c_A0 [rewritten using amend as 3:5b5708a437f2 by bob (at 1970-01-01 00:00 +0000)]
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
330 |/
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
331 o 0:e82fb8d02bbf ROOT
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
332
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
333 $ hg debugobsolete
34961
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
334 d33b0a3a64647d79583526be8107802b1f9fedfa 5b5708a437f27665db42c5a261a539a1bcb2a8c2 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'bob'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
335 ef908e42ce65ef57f970d799acaddde26f58a4cc 5ffb9e311b35f6ab6f76f667ca5d6e595645481b 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'bob'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
336 5ffb9e311b35f6ab6f76f667ca5d6e595645481b 956063ac4557828781733b2d5677a351ce856f59 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'bob'}
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
337 $ cd ..
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
338
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
339 Celeste pulls from Bob and rewrites them again
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
340
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
341 $ cd repo-Celeste
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
342 $ hg pull ../repo-Bob
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
343 pulling from ../repo-Bob
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
344 searching for changes
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
345 adding changesets
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
346 adding manifests
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
347 adding file changes
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
348 added 2 changesets with 2 changes to 2 files
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
349 3 new obsolescence markers
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
350 new changesets 5b5708a437f2:956063ac4557 (2 drafts)
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
351 (run 'hg update' to get a working copy)
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
352 $ hg up 'desc("c_A")'
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
353 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
354 $ hg commit --amend -m 'c_A2'
35709
1a09dad8b85a evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents: 35393
diff changeset
355 1 new orphan changesets
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
356 $ hg rebase -r 'desc("c_B1")' -d . # no easy way to rewrite the message with the rebase
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
357 rebasing 2:956063ac4557 "c_B1"
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
358 $ hg up
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
359 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
360 $ hg commit --amend -m 'c_B2'
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
361 $ hg log -G
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
362 @ 5:77ae25d99ff0 c_B2
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
363 |
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
364 o 3:9866d64649a5 c_A2
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
365 |
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
366 o 0:e82fb8d02bbf ROOT
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
367
34850
62a4ccf9784a obsfate: filter out current user if not in verbose
Boris Feld <boris.feld@octobus.net>
parents: 34847
diff changeset
368 $ hg log -G --hidden -v
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
369 @ 5:77ae25d99ff0 c_B2
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
370 |
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
371 | x 4:3cf8de21cc22 c_B1 [rewritten using amend as 5:77ae25d99ff0 by celeste (at 1970-01-01 00:00 +0000)]
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
372 |/
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
373 o 3:9866d64649a5 c_A2
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
374 |
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
375 | x 2:956063ac4557 c_B1 [rewritten using rebase as 4:3cf8de21cc22 by celeste (at 1970-01-01 00:00 +0000)]
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
376 | |
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
377 | x 1:5b5708a437f2 c_A1 [rewritten using amend as 3:9866d64649a5 by celeste (at 1970-01-01 00:00 +0000)]
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
378 |/
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
379 o 0:e82fb8d02bbf ROOT
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
380
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
381 $ hg debugobsolete
34961
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
382 5ffb9e311b35f6ab6f76f667ca5d6e595645481b 956063ac4557828781733b2d5677a351ce856f59 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'bob'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
383 d33b0a3a64647d79583526be8107802b1f9fedfa 5b5708a437f27665db42c5a261a539a1bcb2a8c2 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'bob'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
384 ef908e42ce65ef57f970d799acaddde26f58a4cc 5ffb9e311b35f6ab6f76f667ca5d6e595645481b 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'bob'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
385 5b5708a437f27665db42c5a261a539a1bcb2a8c2 9866d64649a5d9c5991fe119c7b2c33898114e10 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'celeste'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
386 956063ac4557828781733b2d5677a351ce856f59 3cf8de21cc2282186857d2266eb6b1f9cb85ecf3 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'celeste'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
387 3cf8de21cc2282186857d2266eb6b1f9cb85ecf3 77ae25d99ff07889e181126b1171b94bec8e5227 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'celeste'}
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
388
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
389 Celeste now pushes to the server
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
390
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
391 (note: it would be enough to just have direct Celeste -> Alice exchange here.
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
392 However using a central server seems more common)
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
393
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
394 $ hg push
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34961
diff changeset
395 pushing to $TESTTMP/distributed-chain-building/distributed-chain-building/server
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
396 searching for changes
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
397 adding changesets
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
398 adding manifests
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
399 adding file changes
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
400 added 2 changesets with 2 changes to 2 files
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
401 6 new obsolescence markers
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
402 $ cd ..
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
403
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
404 Now Alice pulls from the server, then from Bob
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
405
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
406 Alice first retrieves the new evolution of its changesets and associated markers
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
407 from the server (note: could be from Celeste directly)
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
408
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
409 $ cd repo-Alice
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
410 $ hg up 'desc(ROOT)'
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
411 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
412 $ hg pull
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34961
diff changeset
413 pulling from $TESTTMP/distributed-chain-building/distributed-chain-building/server
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
414 searching for changes
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
415 adding changesets
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
416 adding manifests
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
417 adding file changes
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
418 added 2 changesets with 0 changes to 2 files (+1 heads)
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
419 6 new obsolescence markers
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
420 obsoleted 2 changesets
39480
89630d0b3e23 phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents: 35709
diff changeset
421 new changesets 9866d64649a5:77ae25d99ff0 (2 drafts)
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
422 (run 'hg heads' to see heads)
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
423 $ hg debugobsolete
34961
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
424 3cf8de21cc2282186857d2266eb6b1f9cb85ecf3 77ae25d99ff07889e181126b1171b94bec8e5227 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'celeste'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
425 5b5708a437f27665db42c5a261a539a1bcb2a8c2 9866d64649a5d9c5991fe119c7b2c33898114e10 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'celeste'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
426 5ffb9e311b35f6ab6f76f667ca5d6e595645481b 956063ac4557828781733b2d5677a351ce856f59 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'bob'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
427 956063ac4557828781733b2d5677a351ce856f59 3cf8de21cc2282186857d2266eb6b1f9cb85ecf3 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'celeste'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
428 d33b0a3a64647d79583526be8107802b1f9fedfa 5b5708a437f27665db42c5a261a539a1bcb2a8c2 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'bob'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
429 ef908e42ce65ef57f970d799acaddde26f58a4cc 5ffb9e311b35f6ab6f76f667ca5d6e595645481b 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'bob'}
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
430
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
431 Then, she pulls from Bob, pulling predecessors of the changeset she has
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
432 already pulled. The changesets are not obsoleted in the Bob repo yet. Their
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
433 successors do not exist in Bob repository yet.
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
434
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
435 $ hg pull ../repo-Bob
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
436 pulling from ../repo-Bob
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
437 searching for changes
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
438 adding changesets
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
439 adding manifests
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
440 adding file changes
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
441 added 2 changesets with 0 changes to 2 files (+1 heads)
39899
f9232b0310ef pullreport: issue a message about "extinct" pulled changesets
Boris Feld <boris.feld@octobus.net>
parents: 39897
diff changeset
442 (2 other changesets obsolete on arrival)
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
443 (run 'hg heads' to see heads)
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
444 $ hg log -G
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
445 o 4:77ae25d99ff0 c_B2
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
446 |
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
447 o 3:9866d64649a5 c_A2
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
448 |
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
449 @ 0:e82fb8d02bbf ROOT
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
450
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
451 $ hg debugobsolete
34961
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
452 3cf8de21cc2282186857d2266eb6b1f9cb85ecf3 77ae25d99ff07889e181126b1171b94bec8e5227 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'celeste'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
453 5b5708a437f27665db42c5a261a539a1bcb2a8c2 9866d64649a5d9c5991fe119c7b2c33898114e10 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'celeste'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
454 5ffb9e311b35f6ab6f76f667ca5d6e595645481b 956063ac4557828781733b2d5677a351ce856f59 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'bob'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
455 956063ac4557828781733b2d5677a351ce856f59 3cf8de21cc2282186857d2266eb6b1f9cb85ecf3 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'celeste'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
456 d33b0a3a64647d79583526be8107802b1f9fedfa 5b5708a437f27665db42c5a261a539a1bcb2a8c2 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'bob'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
457 ef908e42ce65ef57f970d799acaddde26f58a4cc 5ffb9e311b35f6ab6f76f667ca5d6e595645481b 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'bob'}
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
458
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
459 Same tests, but change coming from a bundle
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
460 (testing with a bundle is interesting because absolutely no discovery or
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
461 decision is made in that case, so receiving the changesets are not an option).
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
462
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
463 $ hg rollback
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
464 repository tip rolled back to revision 4 (undo pull)
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
465 $ hg log -G
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
466 o 4:77ae25d99ff0 c_B2
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
467 |
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
468 o 3:9866d64649a5 c_A2
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
469 |
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
470 @ 0:e82fb8d02bbf ROOT
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
471
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
472 $ hg debugobsolete
34961
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
473 3cf8de21cc2282186857d2266eb6b1f9cb85ecf3 77ae25d99ff07889e181126b1171b94bec8e5227 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'celeste'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
474 5b5708a437f27665db42c5a261a539a1bcb2a8c2 9866d64649a5d9c5991fe119c7b2c33898114e10 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'celeste'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
475 5ffb9e311b35f6ab6f76f667ca5d6e595645481b 956063ac4557828781733b2d5677a351ce856f59 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'bob'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
476 956063ac4557828781733b2d5677a351ce856f59 3cf8de21cc2282186857d2266eb6b1f9cb85ecf3 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'celeste'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
477 d33b0a3a64647d79583526be8107802b1f9fedfa 5b5708a437f27665db42c5a261a539a1bcb2a8c2 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'bob'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
478 ef908e42ce65ef57f970d799acaddde26f58a4cc 5ffb9e311b35f6ab6f76f667ca5d6e595645481b 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'bob'}
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
479 $ hg -R ../repo-Bob bundle ../step-1.hg
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
480 searching for changes
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
481 2 changesets found
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
482 $ hg unbundle ../step-1.hg
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
483 adding changesets
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
484 adding manifests
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
485 adding file changes
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
486 added 2 changesets with 0 changes to 2 files (+1 heads)
39899
f9232b0310ef pullreport: issue a message about "extinct" pulled changesets
Boris Feld <boris.feld@octobus.net>
parents: 39897
diff changeset
487 (2 other changesets obsolete on arrival)
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
488 (run 'hg heads' to see heads)
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
489 $ hg log -G
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
490 o 4:77ae25d99ff0 c_B2
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
491 |
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
492 o 3:9866d64649a5 c_A2
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
493 |
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
494 @ 0:e82fb8d02bbf ROOT
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
495
34850
62a4ccf9784a obsfate: filter out current user if not in verbose
Boris Feld <boris.feld@octobus.net>
parents: 34847
diff changeset
496 $ hg log -G --hidden -v
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
497 x 6:956063ac4557 c_B1 [rewritten using amend, rebase as 4:77ae25d99ff0 by celeste (at 1970-01-01 00:00 +0000)]
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
498 |
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
499 x 5:5b5708a437f2 c_A1 [rewritten using amend as 3:9866d64649a5 by celeste (at 1970-01-01 00:00 +0000)]
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
500 |
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
501 | o 4:77ae25d99ff0 c_B2
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
502 | |
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
503 | o 3:9866d64649a5 c_A2
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
504 |/
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
505 | x 2:ef908e42ce65 c_B0 [rewritten using amend, rebase as 6:956063ac4557 by bob (at 1970-01-01 00:00 +0000)]
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
506 | |
34847
e27f1f04c2cf templatekw: introduce obsfate keyword
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
507 | x 1:d33b0a3a6464 c_A0 [rewritten using amend as 5:5b5708a437f2 by bob (at 1970-01-01 00:00 +0000)]
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
508 |/
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
509 @ 0:e82fb8d02bbf ROOT
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
510
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
511 $ hg debugobsolete
34961
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
512 3cf8de21cc2282186857d2266eb6b1f9cb85ecf3 77ae25d99ff07889e181126b1171b94bec8e5227 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'celeste'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
513 5b5708a437f27665db42c5a261a539a1bcb2a8c2 9866d64649a5d9c5991fe119c7b2c33898114e10 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'celeste'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
514 5ffb9e311b35f6ab6f76f667ca5d6e595645481b 956063ac4557828781733b2d5677a351ce856f59 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'bob'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
515 956063ac4557828781733b2d5677a351ce856f59 3cf8de21cc2282186857d2266eb6b1f9cb85ecf3 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'celeste'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
516 d33b0a3a64647d79583526be8107802b1f9fedfa 5b5708a437f27665db42c5a261a539a1bcb2a8c2 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'bob'}
a7e49a5b3e6f obsolete: activate effect-flag by default
Boris Feld <boris.feld@octobus.net>
parents: 34850
diff changeset
517 ef908e42ce65ef57f970d799acaddde26f58a4cc 5ffb9e311b35f6ab6f76f667ca5d6e595645481b 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'bob'}
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
518
42129
232a33a11ce0 pull: deal with locally filtered changeset passed into --rev
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 39899
diff changeset
519
232a33a11ce0 pull: deal with locally filtered changeset passed into --rev
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 39899
diff changeset
520 Same tests, but with --rev, this prevent regressing case where `hg pull --rev
232a33a11ce0 pull: deal with locally filtered changeset passed into --rev
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 39899
diff changeset
521 X` has to process a X that is filtered locally.
232a33a11ce0 pull: deal with locally filtered changeset passed into --rev
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 39899
diff changeset
522
232a33a11ce0 pull: deal with locally filtered changeset passed into --rev
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 39899
diff changeset
523 $ hg rollback
232a33a11ce0 pull: deal with locally filtered changeset passed into --rev
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 39899
diff changeset
524 repository tip rolled back to revision 4 (undo unbundle)
232a33a11ce0 pull: deal with locally filtered changeset passed into --rev
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 39899
diff changeset
525 $ hg pull ../repo-Bob --rev 956063ac4557
232a33a11ce0 pull: deal with locally filtered changeset passed into --rev
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 39899
diff changeset
526 pulling from ../repo-Bob
232a33a11ce0 pull: deal with locally filtered changeset passed into --rev
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 39899
diff changeset
527 searching for changes
232a33a11ce0 pull: deal with locally filtered changeset passed into --rev
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 39899
diff changeset
528 adding changesets
232a33a11ce0 pull: deal with locally filtered changeset passed into --rev
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 39899
diff changeset
529 adding manifests
232a33a11ce0 pull: deal with locally filtered changeset passed into --rev
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 39899
diff changeset
530 adding file changes
232a33a11ce0 pull: deal with locally filtered changeset passed into --rev
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 39899
diff changeset
531 added 2 changesets with 0 changes to 2 files (+1 heads)
232a33a11ce0 pull: deal with locally filtered changeset passed into --rev
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 39899
diff changeset
532 (2 other changesets obsolete on arrival)
232a33a11ce0 pull: deal with locally filtered changeset passed into --rev
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 39899
diff changeset
533 (run 'hg heads' to see heads)
232a33a11ce0 pull: deal with locally filtered changeset passed into --rev
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 39899
diff changeset
534
42130
a362b0b95e42 pull: improved message issued in case of failed update
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42129
diff changeset
535 With --update
a362b0b95e42 pull: improved message issued in case of failed update
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42129
diff changeset
536
a362b0b95e42 pull: improved message issued in case of failed update
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42129
diff changeset
537 $ hg rollback
a362b0b95e42 pull: improved message issued in case of failed update
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42129
diff changeset
538 repository tip rolled back to revision 4 (undo pull)
a362b0b95e42 pull: improved message issued in case of failed update
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42129
diff changeset
539 $ hg pull ../repo-Bob --rev 956063ac4557 --update
a362b0b95e42 pull: improved message issued in case of failed update
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42129
diff changeset
540 pulling from ../repo-Bob
a362b0b95e42 pull: improved message issued in case of failed update
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42129
diff changeset
541 searching for changes
a362b0b95e42 pull: improved message issued in case of failed update
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42129
diff changeset
542 adding changesets
a362b0b95e42 pull: improved message issued in case of failed update
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42129
diff changeset
543 adding manifests
a362b0b95e42 pull: improved message issued in case of failed update
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42129
diff changeset
544 adding file changes
a362b0b95e42 pull: improved message issued in case of failed update
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42129
diff changeset
545 added 2 changesets with 0 changes to 2 files (+1 heads)
a362b0b95e42 pull: improved message issued in case of failed update
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42129
diff changeset
546 (2 other changesets obsolete on arrival)
a362b0b95e42 pull: improved message issued in case of failed update
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42129
diff changeset
547 abort: cannot update to target: filtered revision '6'!
a362b0b95e42 pull: improved message issued in case of failed update
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42129
diff changeset
548 [255]
a362b0b95e42 pull: improved message issued in case of failed update
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42129
diff changeset
549
34651
e88dbbcf2a56 test: add an extra case for obsolescence distributed case
Boris Feld <boris.feld@octobus.net>
parents: 34650
diff changeset
550 $ cd ..
39896
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
551
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
552 Test pull report consistency
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
553 ============================
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
554
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
555 obsolete but visible should be reported
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
556 ---------------------------------------
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
557
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
558 Setup
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
559
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
560 $ hg init repo-a
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
561 $ cat << EOF >> repo-a/.hg/hgrc
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
562 > [ui]
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
563 > username=test
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
564 > EOF
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
565 $ cd repo-a
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
566 $ hg debugbuilddag ..
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
567 $ hg debugobsolete `getid tip`
42893
34a46d48d24e debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 42130
diff changeset
568 1 new obsolescence markers
39896
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
569 obsoleted 1 changesets
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
570 $ cd ../
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
571 $ hg clone --pull repo-a repo-b
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
572 requesting all changes
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
573 adding changesets
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
574 adding manifests
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
575 adding file changes
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
576 added 1 changesets with 0 changes to 0 files
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
577 new changesets 1ea73414a91b (1 drafts)
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
578 updating to branch default
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
579 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
580 $ hg -R repo-a up tip --hidden
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
581 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
582 updated to hidden changeset 66f7d451a68b
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
583 (hidden revision '66f7d451a68b' is pruned)
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
584 $ hg -R repo-a branch foo
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
585 marked working directory as branch foo
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
586 (branches are permanent and global, did you want a bookmark?)
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
587 $ hg -R repo-a commit -m foo
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
588 1 new orphan changesets
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
589
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
590 Actual test
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
591 (BROKEN)
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
592
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
593 $ hg -R repo-b pull
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
594 pulling from $TESTTMP/distributed-chain-building/distributed-chain-building/repo-a
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
595 searching for changes
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
596 adding changesets
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
597 adding manifests
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
598 adding file changes
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
599 added 2 changesets with 0 changes to 0 files
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
600 1 new obsolescence markers
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
601 1 new orphan changesets
39897
a477679f6323 pullreport: skip filtered revs instead of obsolete ones
Boris Feld <boris.feld@octobus.net>
parents: 39896
diff changeset
602 new changesets 66f7d451a68b:95d586532b49 (2 drafts)
39896
642cbc228bad pullreport: add a test to show misreporting of visible changeset
Boris Feld <boris.feld@octobus.net>
parents: 39480
diff changeset
603 (run 'hg update' to get a working copy)