annotate tests/test-namespaces.t @ 6619:1ee748766685

evolve: ignore attribute-error in compat code for simplemerge.Merge3Text
author Anton Shestakov <av6@dwimlabs.net>
date Thu, 28 Dec 2023 14:21:34 -0300
parents 9e442e116621
children e0712a00154e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6236
7ad8107d953a topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
1 https://www.mercurial-scm.org/wiki/TopicPlan#sub_branches.2C_namespacing_and_representation
7ad8107d953a topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
2
7ad8107d953a topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
3 $ . "$TESTDIR/testlib/topic_setup.sh"
7ad8107d953a topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
4
6238
6bbd16579f0f topic: list namespaces with debug-namespaces
Anton Shestakov <av6@dwimlabs.net>
parents: 6237
diff changeset
5 $ hg init repo
6bbd16579f0f topic: list namespaces with debug-namespaces
Anton Shestakov <av6@dwimlabs.net>
parents: 6237
diff changeset
6 $ cd repo
6bbd16579f0f topic: list namespaces with debug-namespaces
Anton Shestakov <av6@dwimlabs.net>
parents: 6237
diff changeset
7
6552
81e89d943a4e topic: pretend changeset has no topic namespace if it doesn't have a topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6551
diff changeset
8 Setting a topic namespace alone doesn't affect wdir()
81e89d943a4e topic: pretend changeset has no topic namespace if it doesn't have a topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6551
diff changeset
9
6239
8861e33f3bb2 topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents: 6238
diff changeset
10 $ hg debug-topic-namespace space-name
8861e33f3bb2 topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents: 6238
diff changeset
11 marked working directory as topic namespace: space-name
8861e33f3bb2 topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents: 6238
diff changeset
12 $ hg debug-topic-namespaces
8861e33f3bb2 topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents: 6238
diff changeset
13 space-name
8861e33f3bb2 topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents: 6238
diff changeset
14
6241
85abf58c3d8c topic: namespace template keyword
Anton Shestakov <av6@dwimlabs.net>
parents: 6240
diff changeset
15 $ hg log -r 'wdir()' -T '{topic_namespace}\n'
6552
81e89d943a4e topic: pretend changeset has no topic namespace if it doesn't have a topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6551
diff changeset
16 none
81e89d943a4e topic: pretend changeset has no topic namespace if it doesn't have a topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6551
diff changeset
17
81e89d943a4e topic: pretend changeset has no topic namespace if it doesn't have a topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6551
diff changeset
18 $ hg log -r 'wdir()' -T '{fqbn}\n'
81e89d943a4e topic: pretend changeset has no topic namespace if it doesn't have a topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6551
diff changeset
19 default
81e89d943a4e topic: pretend changeset has no topic namespace if it doesn't have a topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6551
diff changeset
20
81e89d943a4e topic: pretend changeset has no topic namespace if it doesn't have a topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6551
diff changeset
21 But after setting a topic the already-set namespace is visible on wdir()
81e89d943a4e topic: pretend changeset has no topic namespace if it doesn't have a topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6551
diff changeset
22
81e89d943a4e topic: pretend changeset has no topic namespace if it doesn't have a topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6551
diff changeset
23 $ hg topic feature
81e89d943a4e topic: pretend changeset has no topic namespace if it doesn't have a topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6551
diff changeset
24 marked working directory as topic: feature
81e89d943a4e topic: pretend changeset has no topic namespace if it doesn't have a topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6551
diff changeset
25 $ hg topics
81e89d943a4e topic: pretend changeset has no topic namespace if it doesn't have a topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6551
diff changeset
26 * feature (0 changesets)
81e89d943a4e topic: pretend changeset has no topic namespace if it doesn't have a topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6551
diff changeset
27
81e89d943a4e topic: pretend changeset has no topic namespace if it doesn't have a topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6551
diff changeset
28 $ hg log -r 'wdir()' -T '{topic_namespace}\n'
6241
85abf58c3d8c topic: namespace template keyword
Anton Shestakov <av6@dwimlabs.net>
parents: 6240
diff changeset
29 space-name
85abf58c3d8c topic: namespace template keyword
Anton Shestakov <av6@dwimlabs.net>
parents: 6240
diff changeset
30
6243
91d9a279b84a topic: fqbn template keyword
Anton Shestakov <av6@dwimlabs.net>
parents: 6241
diff changeset
31 $ hg log -r 'wdir()' -T '{fqbn}\n'
6552
81e89d943a4e topic: pretend changeset has no topic namespace if it doesn't have a topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6551
diff changeset
32 default//space-name/feature
6243
91d9a279b84a topic: fqbn template keyword
Anton Shestakov <av6@dwimlabs.net>
parents: 6241
diff changeset
33
6610
ae7c75c43f92 topic: properly decode topic and topic namespace after reading from disk
Anton Shestakov <av6@dwimlabs.net>
parents: 6552
diff changeset
34 Non-ascii topic namespace name
ae7c75c43f92 topic: properly decode topic and topic namespace after reading from disk
Anton Shestakov <av6@dwimlabs.net>
parents: 6552
diff changeset
35
ae7c75c43f92 topic: properly decode topic and topic namespace after reading from disk
Anton Shestakov <av6@dwimlabs.net>
parents: 6552
diff changeset
36 $ hg debug-topic-namespace --clear
ae7c75c43f92 topic: properly decode topic and topic namespace after reading from disk
Anton Shestakov <av6@dwimlabs.net>
parents: 6552
diff changeset
37 $ hg --encoding utf-8 debug-topic-namespace æ
ae7c75c43f92 topic: properly decode topic and topic namespace after reading from disk
Anton Shestakov <av6@dwimlabs.net>
parents: 6552
diff changeset
38 marked working directory as topic namespace: \xc3\xa6 (esc)
ae7c75c43f92 topic: properly decode topic and topic namespace after reading from disk
Anton Shestakov <av6@dwimlabs.net>
parents: 6552
diff changeset
39 $ hg --encoding utf-8 debug-topic-namespaces
ae7c75c43f92 topic: properly decode topic and topic namespace after reading from disk
Anton Shestakov <av6@dwimlabs.net>
parents: 6552
diff changeset
40 æ (esc)
ae7c75c43f92 topic: properly decode topic and topic namespace after reading from disk
Anton Shestakov <av6@dwimlabs.net>
parents: 6552
diff changeset
41 $ hg --encoding ascii debug-topic-namespaces
ae7c75c43f92 topic: properly decode topic and topic namespace after reading from disk
Anton Shestakov <av6@dwimlabs.net>
parents: 6552
diff changeset
42 ? (esc)
ae7c75c43f92 topic: properly decode topic and topic namespace after reading from disk
Anton Shestakov <av6@dwimlabs.net>
parents: 6552
diff changeset
43 $ hg --encoding latin1 debug-topic-namespaces
ae7c75c43f92 topic: properly decode topic and topic namespace after reading from disk
Anton Shestakov <av6@dwimlabs.net>
parents: 6552
diff changeset
44 \xe6 (esc)
ae7c75c43f92 topic: properly decode topic and topic namespace after reading from disk
Anton Shestakov <av6@dwimlabs.net>
parents: 6552
diff changeset
45
6612
94bf2f307b75 topic: check that topic namespace names are human-readable like topics
Anton Shestakov <av6@dwimlabs.net>
parents: 6610
diff changeset
46 $ hg --encoding utf-8 debug-topic-namespace ©
94bf2f307b75 topic: check that topic namespace names are human-readable like topics
Anton Shestakov <av6@dwimlabs.net>
parents: 6610
diff changeset
47 abort: invalid topic namespace name: '\xc2\xa9' (esc)
94bf2f307b75 topic: check that topic namespace names are human-readable like topics
Anton Shestakov <av6@dwimlabs.net>
parents: 6610
diff changeset
48 (topic namespace names can only consist of alphanumeric, '-', '_' and '.' characters)
94bf2f307b75 topic: check that topic namespace names are human-readable like topics
Anton Shestakov <av6@dwimlabs.net>
parents: 6610
diff changeset
49 [10]
94bf2f307b75 topic: check that topic namespace names are human-readable like topics
Anton Shestakov <av6@dwimlabs.net>
parents: 6610
diff changeset
50
94bf2f307b75 topic: check that topic namespace names are human-readable like topics
Anton Shestakov <av6@dwimlabs.net>
parents: 6610
diff changeset
51 $ hg --encoding latin1 debug-topic-namespace æ
94bf2f307b75 topic: check that topic namespace names are human-readable like topics
Anton Shestakov <av6@dwimlabs.net>
parents: 6610
diff changeset
52 abort: invalid topic namespace name: '\xc3\xa6' (esc)
94bf2f307b75 topic: check that topic namespace names are human-readable like topics
Anton Shestakov <av6@dwimlabs.net>
parents: 6610
diff changeset
53 (topic namespace names can only consist of alphanumeric, '-', '_' and '.' characters)
94bf2f307b75 topic: check that topic namespace names are human-readable like topics
Anton Shestakov <av6@dwimlabs.net>
parents: 6610
diff changeset
54 [10]
94bf2f307b75 topic: check that topic namespace names are human-readable like topics
Anton Shestakov <av6@dwimlabs.net>
parents: 6610
diff changeset
55
6239
8861e33f3bb2 topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents: 6238
diff changeset
56 $ hg branches
8861e33f3bb2 topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents: 6238
diff changeset
57
8861e33f3bb2 topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents: 6238
diff changeset
58 $ hg debug-topic-namespace --clear
6238
6bbd16579f0f topic: list namespaces with debug-namespaces
Anton Shestakov <av6@dwimlabs.net>
parents: 6237
diff changeset
59 $ hg debug-topic-namespaces
6542
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
60
6552
81e89d943a4e topic: pretend changeset has no topic namespace if it doesn't have a topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6551
diff changeset
61 $ hg topic --clear
81e89d943a4e topic: pretend changeset has no topic namespace if it doesn't have a topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6551
diff changeset
62 clearing empty topic "feature"
6542
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
63 $ hg topics
6238
6bbd16579f0f topic: list namespaces with debug-namespaces
Anton Shestakov <av6@dwimlabs.net>
parents: 6237
diff changeset
64
6239
8861e33f3bb2 topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents: 6238
diff changeset
65 $ hg debugtopicnamespace --clear nonsense
8861e33f3bb2 topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents: 6238
diff changeset
66 abort: cannot use --clear when setting a topic namespace
6615
9e442e116621 topic: use InputError instead of simple Abort for topic namespaces checks
Anton Shestakov <av6@dwimlabs.net>
parents: 6612
diff changeset
67 [10]
6239
8861e33f3bb2 topic: setting current repo namespace with debug-namespace
Anton Shestakov <av6@dwimlabs.net>
parents: 6238
diff changeset
68
6240
2686ecc90791 topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6239
diff changeset
69 $ hg branch stable
2686ecc90791 topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6239
diff changeset
70 marked working directory as branch stable
2686ecc90791 topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6239
diff changeset
71 (branches are permanent and global, did you want a bookmark?)
2686ecc90791 topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6239
diff changeset
72 $ hg debug-topic-namespace alice
2686ecc90791 topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6239
diff changeset
73 marked working directory as topic namespace: alice
2686ecc90791 topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6239
diff changeset
74 $ hg topic feature
2686ecc90791 topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6239
diff changeset
75 marked working directory as topic: feature
2686ecc90791 topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6239
diff changeset
76 $ echo a > a
2686ecc90791 topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6239
diff changeset
77 $ hg ci -qAm a
2686ecc90791 topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6239
diff changeset
78
2686ecc90791 topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6239
diff changeset
79 $ hg debug-topic-namespaces
2686ecc90791 topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6239
diff changeset
80 alice
2686ecc90791 topic: store topic namespace in commit extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6239
diff changeset
81
6241
85abf58c3d8c topic: namespace template keyword
Anton Shestakov <av6@dwimlabs.net>
parents: 6240
diff changeset
82 $ hg log -r . -T '{rev}: {branch} {topic_namespace} {topic}\n'
85abf58c3d8c topic: namespace template keyword
Anton Shestakov <av6@dwimlabs.net>
parents: 6240
diff changeset
83 0: stable alice feature
85abf58c3d8c topic: namespace template keyword
Anton Shestakov <av6@dwimlabs.net>
parents: 6240
diff changeset
84
6243
91d9a279b84a topic: fqbn template keyword
Anton Shestakov <av6@dwimlabs.net>
parents: 6241
diff changeset
85 $ hg log -r . -T '{rev}: {fqbn}\n'
91d9a279b84a topic: fqbn template keyword
Anton Shestakov <av6@dwimlabs.net>
parents: 6241
diff changeset
86 0: stable//alice/feature
91d9a279b84a topic: fqbn template keyword
Anton Shestakov <av6@dwimlabs.net>
parents: 6241
diff changeset
87
6271
caf302fb8f4d topic: use branch//namespace/topic format everywhere except exchange
Anton Shestakov <av6@dwimlabs.net>
parents: 6267
diff changeset
88 $ hg branches
caf302fb8f4d topic: use branch//namespace/topic format everywhere except exchange
Anton Shestakov <av6@dwimlabs.net>
parents: 6267
diff changeset
89 stable//alice/feature 0:69c7dbf6acd1
caf302fb8f4d topic: use branch//namespace/topic format everywhere except exchange
Anton Shestakov <av6@dwimlabs.net>
parents: 6267
diff changeset
90
6245
a54db3e55c88 topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6243
diff changeset
91 Updating to a revision with a namespace should activate it
a54db3e55c88 topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6243
diff changeset
92
a54db3e55c88 topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6243
diff changeset
93 $ hg up null
a54db3e55c88 topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6243
diff changeset
94 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
a54db3e55c88 topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6243
diff changeset
95 $ hg debug-topic-namespace
6542
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
96 none
6245
a54db3e55c88 topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6243
diff changeset
97 $ hg topics
a54db3e55c88 topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6243
diff changeset
98 feature (1 changesets)
a54db3e55c88 topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6243
diff changeset
99 $ hg up 0
a54db3e55c88 topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6243
diff changeset
100 switching to topic-namespace alice
a54db3e55c88 topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6243
diff changeset
101 switching to topic feature
a54db3e55c88 topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6243
diff changeset
102 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
a54db3e55c88 topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6243
diff changeset
103 $ hg debug-topic-namespace
a54db3e55c88 topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6243
diff changeset
104 alice
a54db3e55c88 topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6243
diff changeset
105 $ hg topics
a54db3e55c88 topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6243
diff changeset
106 * feature (1 changesets)
a54db3e55c88 topic: switch to namespace when updating to a commit, similar to topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6243
diff changeset
107
6310
43166bd57d6c tests: addressing topic namespaces by name alone is not supported
Anton Shestakov <av6@dwimlabs.net>
parents: 6271
diff changeset
108 Updating to a topic namespace is not supported
43166bd57d6c tests: addressing topic namespaces by name alone is not supported
Anton Shestakov <av6@dwimlabs.net>
parents: 6271
diff changeset
109
43166bd57d6c tests: addressing topic namespaces by name alone is not supported
Anton Shestakov <av6@dwimlabs.net>
parents: 6271
diff changeset
110 $ hg up alice
43166bd57d6c tests: addressing topic namespaces by name alone is not supported
Anton Shestakov <av6@dwimlabs.net>
parents: 6271
diff changeset
111 abort: unknown revision 'alice'
43166bd57d6c tests: addressing topic namespaces by name alone is not supported
Anton Shestakov <av6@dwimlabs.net>
parents: 6271
diff changeset
112 [10]
43166bd57d6c tests: addressing topic namespaces by name alone is not supported
Anton Shestakov <av6@dwimlabs.net>
parents: 6271
diff changeset
113
6536
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
114 Export/import of topic namespaces
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
115
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
116 $ hg export
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
117 # HG changeset patch
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
118 # User test
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
119 # Date 0 0
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
120 # Thu Jan 01 00:00:00 1970 +0000
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
121 # Branch stable
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
122 # Node ID 69c7dbf6acd180eeec055dd67933badd3601d45f
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
123 # Parent 0000000000000000000000000000000000000000
6542
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
124 # EXP-Topic-Namespace alice
6536
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
125 # EXP-Topic feature
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
126 a
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
127
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
128 diff -r 000000000000 -r 69c7dbf6acd1 a
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
129 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
130 +++ b/a Thu Jan 01 00:00:00 1970 +0000
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
131 @@ -0,0 +1,1 @@
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
132 +a
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
133
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
134 $ hg import - << EOF
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
135 > # HG changeset patch
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
136 > # User test
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
137 > # Date 0 0
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
138 > # Thu Jan 01 00:00:00 1970 +0000
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
139 > # Branch another-branch
6542
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
140 > # Node ID 1111111111111111111111111111111111111111
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
141 > # Parent 2222222222222222222222222222222222222222
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
142 > # EXP-Topic-Namespace mynamespace
6536
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
143 > # EXP-Topic mytopic
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
144 > added z
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
145 >
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
146 > diff --git a/z b/z
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
147 > new file mode 100644
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
148 > --- /dev/null
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
149 > +++ b/z
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
150 > @@ -0,0 +1,1 @@
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
151 > +z
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
152 > EOF
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
153 applying patch from stdin
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
154
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
155 $ hg log -r tip -T '{rev}: {branch} {topic_namespace} {topic}\n'
6542
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
156 1: stable mynamespace mytopic
6536
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
157
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
158 $ hg log -r tip -T '{rev}: {fqbn}\n'
6542
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
159 1: stable//mynamespace/mytopic
6536
90b631fde2d7 topic: only set topic on workingcommitctx if it doesn't already have one
Anton Shestakov <av6@dwimlabs.net>
parents: 6310
diff changeset
160
6550
fa14b9fc953d tests: show extras after importing a patch with topic and namespace
Anton Shestakov <av6@dwimlabs.net>
parents: 6543
diff changeset
161 $ hg log -r tip -T '{rev}: {join(extras, " ")}\n'
fa14b9fc953d tests: show extras after importing a patch with topic and namespace
Anton Shestakov <av6@dwimlabs.net>
parents: 6543
diff changeset
162 1: branch=stable topic=mytopic topic-namespace=mynamespace
fa14b9fc953d tests: show extras after importing a patch with topic and namespace
Anton Shestakov <av6@dwimlabs.net>
parents: 6543
diff changeset
163
6543
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
164 Importing a patch with default namespace and topic values
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
165
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
166 $ hg import - << EOF
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
167 > # HG changeset patch
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
168 > # User test
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
169 > # Date 0 0
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
170 > # Thu Jan 01 00:00:00 1970 +0000
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
171 > # Branch stable
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
172 > # Node ID 1111111111111111111111111111111111111111
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
173 > # Parent 2222222222222222222222222222222222222222
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
174 > # EXP-Topic-Namespace none
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
175 > # EXP-Topic
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
176 > more z
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
177 >
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
178 > diff --git a/z b/z
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
179 > --- a/z
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
180 > +++ b/z
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
181 > @@ -1,1 +1,1 @@
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
182 > -z
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
183 > +zebra
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
184 > EOF
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
185 applying patch from stdin
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
186
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
187 $ hg log -r tip -T '{rev}: {branch} {topic_namespace} {topic}\n'
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
188 2: stable none
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
189
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
190 $ hg log -r tip -T '{rev}: {fqbn}\n'
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
191 2: stable
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
192
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
193 $ hg log -r tip -T '{rev}: {join(extras, " ")}\n'
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
194 2: branch=stable
b0cbad4d841f tests: importing with default topic&namespace values doesn't add extras
Anton Shestakov <av6@dwimlabs.net>
parents: 6542
diff changeset
195
6551
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
196 Importing a patch with topic namespace set and topic unset
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
197
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
198 $ hg import - << EOF
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
199 > # HG changeset patch
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
200 > # User test
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
201 > # Date 0 0
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
202 > # Thu Jan 01 00:00:00 1970 +0000
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
203 > # Branch stable
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
204 > # Node ID 1111111111111111111111111111111111111111
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
205 > # Parent 2222222222222222222222222222222222222222
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
206 > # EXP-Topic-Namespace mynamespace
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
207 > # EXP-Topic
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
208 > more z
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
209 >
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
210 > diff --git a/z b/z
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
211 > --- a/z
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
212 > +++ b/z
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
213 > @@ -1,1 +1,1 @@
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
214 > -zebra
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
215 > +z
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
216 > EOF
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
217 applying patch from stdin
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
218
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
219 $ hg log -r tip -T '{rev}: {branch} {topic_namespace} {topic}\n'
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
220 3: stable none
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
221
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
222 $ hg log -r tip -T '{rev}: {fqbn}\n'
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
223 3: stable
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
224
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
225 $ hg log -r tip -T '{rev}: {join(extras, " ")}\n'
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
226 3: branch=stable
198b87917ba8 tests: import a patch with topic namespace, but without topic
Anton Shestakov <av6@dwimlabs.net>
parents: 6550
diff changeset
227
6261
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
228 Revsets
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
229
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
230 $ nslog() {
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
231 > hg log -T '{rev}: {topic_namespace}\n' -r "$1"
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
232 > }
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
233
6542
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
234 $ nslog 'topicnamespace()'
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
235 0: alice
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
236 1: mynamespace
6261
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
237 $ nslog 'topicnamespace(:)'
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
238 0: alice
6542
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
239 1: mynamespace
6261
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
240 $ nslog 'topicnamespace(all())'
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
241 0: alice
6542
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
242 1: mynamespace
6261
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
243 $ nslog 'topicnamespace(topicnamespace("alice"))'
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
244 0: alice
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
245 $ nslog 'topicnamespace(wdir())'
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
246 0: alice
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
247 $ nslog 'topicnamespace("re:ice$")'
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
248 0: alice
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
249 $ nslog 'topicnamespace(nonsense)'
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
250 abort: unknown revision 'nonsense'
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
251 [10]
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
252
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
253 $ nslog 'topicnamespace("re:nonsense")'
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
254 $ nslog 'topicnamespace("literal:nonsense")'
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
255 abort: topic namespace 'nonsense' does not exist
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
256 [10]
a2491c578d2b topic: namespace revset predicate
Anton Shestakov <av6@dwimlabs.net>
parents: 6245
diff changeset
257
6236
7ad8107d953a topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
258 Parsing
7ad8107d953a topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
259
7ad8107d953a topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
260 $ hg debugparsefqbn foo/bar//user26/feature -T '[{branch}] <{topic_namespace}> ({topic})\n'
7ad8107d953a topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
261 [foo/bar] <user26> (feature)
7ad8107d953a topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
262
7ad8107d953a topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
263 no double slashes means it's a named branch
7ad8107d953a topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
264 $ hg debug-parse-fqbn foo/bar
7ad8107d953a topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
265 branch: foo/bar
6542
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
266 namespace: none
6236
7ad8107d953a topic: introduce topic namespaces concept starting with simple parsing
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
267 topic:
6237
0b9042408809 topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents: 6236
diff changeset
268
0b9042408809 topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents: 6236
diff changeset
269 Formatting
0b9042408809 topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents: 6236
diff changeset
270
0b9042408809 topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents: 6236
diff changeset
271 $ hg debugformatfqbn -b branch -n namespace -t topic
0b9042408809 topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents: 6236
diff changeset
272 branch//namespace/topic
0b9042408809 topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents: 6236
diff changeset
273
0b9042408809 topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents: 6236
diff changeset
274 $ hg debug-format-fqbn -n namespace
0b9042408809 topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents: 6236
diff changeset
275 //namespace/
0b9042408809 topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents: 6236
diff changeset
276
0b9042408809 topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents: 6236
diff changeset
277 $ hg debug-format-fqbn -b foo/bar -n user26 -t feature
0b9042408809 topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents: 6236
diff changeset
278 foo/bar//user26/feature
0b9042408809 topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents: 6236
diff changeset
279
6266
213db29a19e9 topic: ability to shorten branch//namespace/topic strings when possible
Anton Shestakov <av6@dwimlabs.net>
parents: 6261
diff changeset
280 default values
213db29a19e9 topic: ability to shorten branch//namespace/topic strings when possible
Anton Shestakov <av6@dwimlabs.net>
parents: 6261
diff changeset
281
6542
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
282 $ hg debug-format-fqbn -b default -n none -t '' --no-short
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
283 default//none/
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
284 $ hg debug-format-fqbn -b default -n none -t '' --short
6266
213db29a19e9 topic: ability to shorten branch//namespace/topic strings when possible
Anton Shestakov <av6@dwimlabs.net>
parents: 6261
diff changeset
285 default
213db29a19e9 topic: ability to shorten branch//namespace/topic strings when possible
Anton Shestakov <av6@dwimlabs.net>
parents: 6261
diff changeset
286
6267
1eb543272657 topic: switch to the short fqbn format by default
Anton Shestakov <av6@dwimlabs.net>
parents: 6266
diff changeset
287 $ hg debug-format-fqbn -b default -n namespace -t '' --no-short
6266
213db29a19e9 topic: ability to shorten branch//namespace/topic strings when possible
Anton Shestakov <av6@dwimlabs.net>
parents: 6261
diff changeset
288 default//namespace/
213db29a19e9 topic: ability to shorten branch//namespace/topic strings when possible
Anton Shestakov <av6@dwimlabs.net>
parents: 6261
diff changeset
289 $ hg debug-format-fqbn -b default -n namespace -t '' --short
213db29a19e9 topic: ability to shorten branch//namespace/topic strings when possible
Anton Shestakov <av6@dwimlabs.net>
parents: 6261
diff changeset
290 default//namespace/
213db29a19e9 topic: ability to shorten branch//namespace/topic strings when possible
Anton Shestakov <av6@dwimlabs.net>
parents: 6261
diff changeset
291
6542
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
292 $ hg debug-format-fqbn -b default -n none -t topic --no-short
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
293 default//none/topic
ca1c219bd59f branching: merge with stable
Anton Shestakov <av6@dwimlabs.net>
parents: 6536
diff changeset
294 $ hg debug-format-fqbn -b default -n none -t topic --short
6266
213db29a19e9 topic: ability to shorten branch//namespace/topic strings when possible
Anton Shestakov <av6@dwimlabs.net>
parents: 6261
diff changeset
295 default//topic
213db29a19e9 topic: ability to shorten branch//namespace/topic strings when possible
Anton Shestakov <av6@dwimlabs.net>
parents: 6261
diff changeset
296
6237
0b9042408809 topic: formatting branch, namespace and topic into fully qualified branch name
Anton Shestakov <av6@dwimlabs.net>
parents: 6236
diff changeset
297 $ cd ..