tests/test-extension-isolation.t
author Anton Shestakov <av6@dwimlabs.net>
Fri, 07 Jun 2019 18:14:48 +0800
branchstable
changeset 4687 313565dd75e3
parent 4643 77f3699e711e
child 5139 19b8ffd23795
permissions -rw-r--r--
pick: remove transaction on the whole command (issue6037) At its core, pick is a pretty straightforward and well-behaving command, it uses functions already in core hg, it checks that wdir is clean and that changeset to pick is not public, it checks if there happen to be merge conflicts and can be --continue'd later, etc. It is very similar to graft in core (it also uses mergemod.graft function), but it obsoletes the original changeset. However, graft does not experience this incorrect behavior from issue 6037. What happens in the test case for this issue when we pick a revision that touches both "a" and "b": mergemod.graft() takes the original changeset and tries to apply it to the wdir, which results in "b" being marked as newly added and ready to be committed, "a" updated with the new content and being marked as modified, but "a" also has conflicts. Pick correctly notices this and saves its state before asking for user intervention. So far so good. However, when the command raises InterventionRequired to print a user-facing message and exit while being wrapped in repo.transaction() context manager, the latter partially undoes what mergemod.graft() did: it unmarks "b" as added. And when user continues pick, "b" is therefore not tracked and is not included in the resulting commit. The transaction is not useful here, because it doesn't touch wdir (it's still dirty), it doesn't remove pickstate (and other commands will refuse to work until pick --abort or --continue), it just makes "b" untracked. The solution is to use repo.transaction() only to wrap code that writes data to hg store in the final stages of the command after all checks have passed and is not expected to fail on trivial cases like merge conflicts. For example, committing the picked changeset. But since pick uses repo.commit() for that, and because that function already uses a transaction, wrapping it in another transaction doesn't make sense.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4479
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     1
============================
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     2
Testing extensions isolation
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     3
============================
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     4
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     5
In this test case, we check that a repository using the extensions can co-exist
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     6
with a repository not using the extension.
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     7
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     8
  $ . $TESTDIR/testlib/common.sh
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     9
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    10
Setup
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    11
=====
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    12
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    13
Create repo
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    14
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    15
  $ hg init repo-evo
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    16
  $ cat > repo-evo/.hg/hgrc << EOF
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    17
  > [extensions]
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    18
  > evolve=
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    19
  > EOF
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    20
  $ hg init repo-topic
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    21
  $ cat > repo-topic/.hg/hgrc << EOF
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    22
  > [extensions]
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    23
  > topic=
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    24
  > EOF
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    25
  $ hg init repo-both
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    26
  $ cat > repo-both/.hg/hgrc << EOF
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    27
  > [extensions]
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    28
  > evolve=
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    29
  > topic=
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    30
  > EOF
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    31
  $ hg init repo-no-ext
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    32
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    33
check setup
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    34
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    35
  $ hg -R repo-evo  help -e evolve | head -n 1
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    36
  warning: --repository ignored
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    37
  evolve extension - extends Mercurial feature related to Changeset Evolution
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    38
  $ hg -R repo-both  help -e evolve | head -n 1
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    39
  warning: --repository ignored
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    40
  evolve extension - extends Mercurial feature related to Changeset Evolution
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    41
  $ hg -R repo-no-ext help -e evolve
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    42
  warning: --repository ignored
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    43
  abort: no such help topic: evolve
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    44
  (try 'hg help --keyword evolve')
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    45
  [255]
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    46
  $ hg -R repo-no-ext help -e topic
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    47
  warning: --repository ignored
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    48
  abort: no such help topic: topic
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    49
  (try 'hg help --keyword topic')
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    50
  [255]
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    51
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    52
start hgweb dir for all repo
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    53
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    54
  $ cat > hgweb.conf << EOF
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    55
  > [paths]
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    56
  > / = *
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    57
  > EOF
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    58
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    59
  $ hg serve -p $HGPORT -d --pid-file=hg.pid --web-conf hgweb.conf -A access.log -E error.log
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    60
  $ cat hg.pid >> $DAEMON_PIDS
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    61
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    62
Test isolation
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    63
--------------
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    64
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    65
As of 4.9 (and previous version). It seems like extensions are displayed as
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    66
enabled even for repository where they are not supposed to be. See the output
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    67
tagged `no-false`.
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    68
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    69
(however, topic and evolve are not supposed to affect other repository as shown
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    70
in the rest of this test).
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    71
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    72
  $ get-with-headers.py $LOCALIP:$HGPORT 'repo-no-ext/help/extensions' | grep 'enabled extensions' -A 7
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    73
  [1]
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    74
  $ get-with-headers.py $LOCALIP:$HGPORT 'repo-evo/help/extensions' | grep 'enabled extensions' -A 7
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    75
  enabled extensions:
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    76
  </p>
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    77
  <dl>
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    78
   <dt>evolve
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    79
   <dd>extends Mercurial feature related to Changeset Evolution
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    80
  </dl>
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    81
  <p>
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    82
  disabled extensions:
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    83
  $ get-with-headers.py $LOCALIP:$HGPORT 'repo-topic/help/extensions' | grep 'enabled extensions' -A 7
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    84
  enabled extensions:
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    85
  </p>
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    86
  <dl>
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    87
   <dt>evolve (no-false !)
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    88
   <dd>extends Mercurial feature related to Changeset Evolution (no-false !)
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    89
   <dt>topic
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    90
   <dd>support for topic branches
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    91
  </dl>
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    92
  $ get-with-headers.py $LOCALIP:$HGPORT 'repo-both/help/extensions' | grep 'enabled extensions' -A 9
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    93
  enabled extensions:
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    94
  </p>
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    95
  <dl>
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    96
   <dt>evolve
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    97
   <dd>extends Mercurial feature related to Changeset Evolution
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    98
   <dt>topic
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    99
   <dd>support for topic branches
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   100
  </dl>
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   101
  <p>
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   102
  disabled extensions:
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   103
  $ get-with-headers.py $LOCALIP:$HGPORT 'repo-no-ext/help/extensions' | grep 'enabled extensions' -A 9
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   104
  enabled extensions: (no-false !)
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   105
  </p> (no-false !)
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   106
  <dl> (no-false !)
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   107
   <dt>evolve (no-false !)
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   108
   <dd>extends Mercurial feature related to Changeset Evolution (no-false !)
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   109
   <dt>topic (no-false !)
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   110
   <dd>support for topic branches (no-false !)
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   111
  </dl> (no-false !)
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   112
  <p> (no-false !)
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   113
  disabled extensions: (no-false !)
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   114
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   115
make sure repos don't affect each other (and check both ways)
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   116
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   117
Check evolve isolation
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   118
-----------------------
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   119
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   120
  $ hg debugcapabilities http://$LOCALIP:$HGPORT/repo-no-ext | egrep 'topics|evoext'
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   121
  [1]
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   122
  $ hg debugcapabilities http://$LOCALIP:$HGPORT/repo-evo | egrep 'topics|evoext'
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   123
    _evoext_getbundle_obscommon
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   124
    _evoext_obshashrange_v1
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   125
  $ hg debugcapabilities http://$LOCALIP:$HGPORT/repo-no-ext | egrep 'topics|evoext'
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   126
  [1]
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   127
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   128
Check topic isolation
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   129
---------------------
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   130
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   131
  $ hg debugcapabilities http://$LOCALIP:$HGPORT/repo-no-ext | egrep 'topics|evoext'
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   132
  [1]
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   133
  $ hg debugcapabilities http://$LOCALIP:$HGPORT/repo-topic | egrep 'topics|evoext'
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   134
    topics
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   135
  $ hg debugcapabilities http://$LOCALIP:$HGPORT/repo-no-ext | egrep 'topics|evoext'
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   136
  [1]
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   137
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   138
Check coupled isolation
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   139
-----------------------
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   140
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   141
  $ hg debugcapabilities http://$LOCALIP:$HGPORT/repo-no-ext | egrep 'topics|evoext'
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   142
  [1]
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   143
  $ hg debugcapabilities http://$LOCALIP:$HGPORT/repo-both | egrep 'topics|evoext'
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   144
    _evoext_getbundle_obscommon
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   145
    _evoext_obshashrange_v1
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   146
    topics
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   147
  $ hg debugcapabilities http://$LOCALIP:$HGPORT/repo-evo | egrep 'topics|evoext'
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   148
    _evoext_getbundle_obscommon
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   149
    _evoext_obshashrange_v1
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   150
  $ hg debugcapabilities http://$LOCALIP:$HGPORT/repo-topic | egrep 'topics|evoext'
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   151
    topics
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   152
  $ hg debugcapabilities http://$LOCALIP:$HGPORT/repo-evo | egrep 'topics|evoext'
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   153
    _evoext_getbundle_obscommon
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   154
    _evoext_obshashrange_v1
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   155
  $ hg debugcapabilities http://$LOCALIP:$HGPORT/repo-no-ext | egrep 'topics|evoext'
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   156
  [1]
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   157
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   158
Final cleanup
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   159
-------------
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   160
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   161
  $ cat error.log
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   162
2db0aca03a88 extensions: avoid enabling evolve for unrelated repositories (issue6057)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   163
  $ $RUNTESTDIR/killdaemons.py $DAEMON_PIDS