annotate tests/test-merge8.t @ 28164:ad11edefa7c4

localrepo: move new repo requirements into standalone function (API) This patch extracts the code for determining requirements for a new repo into a standalone function. By doing so, future code that will perform an in-place repository upgrade (e.g. to generaldelta) can examine the set of proposed new requirements and possibly take additional actions (such as adding dotencode or fncache) when performing the upgrade. This patch is marked as API because _baserequirements (which was added in b090601a80d1 so extensions could override it) has been removed and will presumably impact whatever extension it was added for. Consumers should be able to monkeypatch the new function to achieve the same functionality. The "create" argument has been dropped because the function is only called in one location and "create" is always true in that case. While it makes logical sense for this code to be a method so extensions can implement a custom repo class / method to override it, this won't actually work. This is because requirements determination occurs during localrepository.__init__ and this is before the "reposetup" "callback" is fired. So, the only way for extensions to customize requirements would be to overwrite localrepo.localrepository or to monkeypatch a function on a module during extsetup(). Since we try to keep localrepository small, we use a standalone function. There is probably room to offer extensions a "hook" point to alter repository creation. But that is scope bloat.
author Gregory Szorc <gregory.szorc@gmail.com>
date Mon, 15 Feb 2016 13:20:20 -0800
parents f2719b387380
children eb586ed5d8ce
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11981
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
1 Test for changeset ba7c74081861
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
2 (update dirstate correctly for non-branchmerge updates)
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
3 $ hg init a
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
4 $ cd a
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
5 $ echo a > a
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
6 $ hg add a
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
7 $ hg commit -m a
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
8 $ cd ..
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
9 $ hg clone a b
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
10 updating to branch default
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
11 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
12 $ cd a
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
13 $ hg mv a b
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
14 $ hg commit -m move
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
15 $ echo b >> b
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
16 $ hg commit -m b
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
17 $ cd ../b
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
18 $ hg pull ../a
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
19 pulling from ../a
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
20 searching for changes
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
21 adding changesets
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
22 adding manifests
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
23 adding file changes
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
24 added 2 changesets with 2 changes to 1 files
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
25 (run 'hg update' to get a working copy)
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
26 $ hg update
518b90d66fad tests: unify test-merge8
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3389
diff changeset
27 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 11981
diff changeset
28
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 11981
diff changeset
29 $ cd ..