Merge lp:~lifeless/bzr/bug-398668 into lp:~bzr/bzr/trunk-old
- bug-398668
- Merge into trunk-old
Status: | Merged | ||||
---|---|---|---|---|---|
Merged at revision: | not available | ||||
Proposed branch: | lp:~lifeless/bzr/bug-398668 | ||||
Merge into: | lp:~bzr/bzr/trunk-old | ||||
Diff against target: | 504 lines | ||||
To merge this branch: | bzr merge lp:~lifeless/bzr/bug-398668 | ||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
John A Meinel | Approve | ||
Review via email: mp+10288@code.launchpad.net |
This proposal supersedes a proposal from 2009-08-17.
Commit message
Description of the change
Robert Collins (lifeless) wrote : Posted in a previous version of this proposal | # |
Robert Collins (lifeless) wrote : | # |
The diff is likely still a problem - here is a manual diff.
=== modified file 'NEWS'
--- NEWS 2009-08-15 09:15:03 +0000
+++ NEWS 2009-08-17 23:19:17 +0000
@@ -9,6 +9,21 @@
In Development
##############
+Compatibility Breaks
+******
+
+* The default format for bzr is now ``2a``. This format brings many
+ significant performance and size improvements. bzr can pull from
+ any existing repository into a ``2a`` one, but can only transfer
+ into ``rich-root`` repositories from ``2a``. The Upgrade guide
+ has more information about this change. (Robert Collins)
+
+New Features
+************
+
+Bug Fixes
+*********
+
Improvements
************
@@ -16,6 +31,18 @@
--version`` and ``bzr selftest``.
(Martin Pool, #409137)
+Documentation
+*************
+
+API Changes
+***********
+
+Internals
+*********
+
+Testing
+*******
+
bzr 1.18
########
@@ -58,6 +85,11 @@
* StreamSource generates rich roots from non-rich root sources correctly
now. (Andrew Bennetts, #368921)
+* When deciding whether a repository was compatible for upgrading or
+ fetching, we previously incorrectly checked the default repository
+ format for the bzrdir format, rather than the format that was actually
+ present on disk. (Martin Pool, #408824)
+
Improvements
************
@@ -105,8 +137,8 @@
can run the https tests. (Denys Duchier, #392401)
-bzr 1.18
-########
+bzr 1.18rc1
+###########
:Codename: little traveller
:1.18rc1: 2009-08-10
=== modified file 'bzrlib/branch.py'
--- bzrlib/branch.py 2009-08-17 06:17:21 +0000
+++ bzrlib/branch.py 2009-08-17 06:19:20 +0000
@@ -2067,7 +2067,7 @@
BranchFormat.
BranchFormat.
BranchFormat.
-BranchFormat.
+BranchFormat.
_legacy_formats = [BzrBranchForma
]
network_
=== modified file 'bzrlib/bzrdir.py'
--- bzrlib/bzrdir.py 2009-08-17 06:17:21 +0000
+++ bzrlib/bzrdir.py 2009-08-17 07:47:50 +0000
@@ -130,8 +130,7 @@
def check_conversio
- source_repo_format = self._format.
- source_
+ self.open_
@staticmethod
def _check_
@@ -3865,11 +3864,11 @@
# The following format should be an alias for the rich root equivalent
# of the default format
format_
- 'bzrlib.
- help='Default format, rich root variant. (needed for bzr-svn and bzr-git).',
- branch_
- tree_format=
+ 'bzrlib.
+ branch_
+ tree_format=
alias=True,
- )
+ help='Same as 2a.')
+
# The current format that is made on 'bzr init'.
-format_re...
Robert Collins (lifeless) wrote : | # |
There are still two sub-proposals up for review.
https:/
https:/
John A Meinel (jameinel) wrote : | # |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
...
> # The following format should be an alias for the rich root equivalent
> # of the default format
> format_
> - 'bzrlib.
> - help='Default format, rich root variant. (needed for bzr-svn and bzr-git).',
> - branch_
> - tree_format=
> + 'bzrlib.
> + branch_
> + tree_format=
> alias=True,
> - )
> + help='Same as 2a.')
> +
> # The current format that is made on 'bzr init'.
> -format_
> +format_
^- I'm 75% sure that we want the default WT format to be
"WorkingTreeFor
brings in support for 'views'. And View support was considered
incomplete, and thus why it was split out into a different format.
...
v- Obviously changing the above to '5' will bump all of these as well.
> Format:
> control: Meta directory format 1
> - working tree: Working tree format 4
> + working tree: Working tree format 6
> branch: Branch format 4
> repository: Weave repository format 6
>
> @@ -453,7 +449,7 @@
>
...
> -__default_format = WorkingTreeForm
> +__default_format = WorkingTreeForm
> WorkingTreeForm
> -WorkingTreeFor
> WorkingTreeForm
> +WorkingTreeFor
> WorkingTreeForm
> WorkingTreeForm
> # formats which have no format string are not discoverable
^- This would also be effected.
John
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://
iEYEARECAAYFAkq
/p0AnR+
=3UXs
-----END PGP SIGNATURE-----
John A Meinel (jameinel) wrote : | # |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Robert Collins wrote:
> Robert Collins has proposed merging lp:~lifeless/bzr/bug-398668 into lp:bzr.
>
> The diff is likely still a problem - here is a manual diff.
Sorry, I meant to include:
review: approve
Provided there is agreement about WT5 vs WT6.
John
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://
iEYEARECAAYFAkq
NP4AnRP63XK5SOc
=cqKQ
-----END PGP SIGNATURE-----
Robert Collins (lifeless) wrote : | # |
On Tue, 2009-08-18 at 13:42 +0000, John A Meinel wrote:
> Review: Approve
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Robert Collins wrote:
> > Robert Collins has proposed merging lp:~lifeless/bzr/bug-398668 into lp:bzr.
> >
> > The diff is likely still a problem - here is a manual diff.
>
> Sorry, I meant to include:
> review: approve
>
> Provided there is agreement about WT5 vs WT6.
2a is format 6, and thats a supported format. Assuming that you're
right, we need to actually downgrade 2a in 1.16/1.17/1.18 as well -
definitely out of scope for this patch - and while changing the default
will increase the number of 2a users out there, we have from now until
the release to decide on this.
There is one outstanding log test I need to change as well, but I'll
land that change asynchronously - I don't want to let this [somewhat
fragile branch] bitrot at all.
Thanks for the review.
-Rob
Ian Clatworthy (ian-clatworthy) wrote : | # |
Robert Collins wrote:
> On Tue, 2009-08-18 at 13:42 +0000, John A Meinel wrote:
>> Review: Approve
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA1
>>
>> Robert Collins wrote:
>>> Robert Collins has proposed merging lp:~lifeless/bzr/bug-398668 into lp:bzr.
>>>
>>> The diff is likely still a problem - here is a manual diff.
>> Sorry, I meant to include:
>> review: approve
>>
>> Provided there is agreement about WT5 vs WT6.
>
> 2a is format 6, and thats a supported format. Assuming that you're
> right, we need to actually downgrade 2a in 1.16/1.17/1.18 as well -
I'd prefer to keep the format exactly as it is now and stay with WT6.
I'm happy to make filtered views an experimental-only feature for 2.0,
say so loudly in the doc and hide the view command if appropriate. But I
don't want to remove the ability to store the filtered view metadata in
the default format.
Ian C.
Robert Collins (lifeless) wrote : | # |
On Wed, 2009-08-19 at 01:03 +0000, Ian Clatworthy wrote:
>
> > 2a is format 6, and thats a supported format. Assuming that you're
> > right, we need to actually downgrade 2a in 1.16/1.17/1.18 as well -
>
> I'd prefer to keep the format exactly as it is now and stay with WT6.
> I'm happy to make filtered views an experimental-only feature for 2.0,
> say so loudly in the doc and hide the view command if appropriate. But
> I
> don't want to remove the ability to store the filtered view metadata
> in
> the default format.
I don't have any particular opinion.
The default is 2a with wt6 trees, at this point.
Cheers,
Rob
Preview Diff
1 | === modified file 'NEWS' |
2 | --- NEWS 2009-08-18 07:20:02 +0000 |
3 | +++ NEWS 2009-08-18 20:35:49 +0000 |
4 | @@ -28,6 +28,43 @@ |
5 | Compatibility Breaks |
6 | ******************** |
7 | |
8 | +* The default format for bzr is now ``2a``. This format brings many |
9 | + significant performance and size improvements. bzr can pull from |
10 | + any existing repository into a ``2a`` one, but can only transfer |
11 | + into ``rich-root`` repositories from ``2a``. The Upgrade guide |
12 | + has more information about this change. (Robert Collins) |
13 | + |
14 | +New Features |
15 | +************ |
16 | + |
17 | +Bug Fixes |
18 | +********* |
19 | + |
20 | +Improvements |
21 | +************ |
22 | + |
23 | +* A better description of the platform is shown in crash tracebacks, ``bzr |
24 | + --version`` and ``bzr selftest``. |
25 | + (Martin Pool, #409137) |
26 | + |
27 | +Documentation |
28 | +************* |
29 | + |
30 | +API Changes |
31 | +*********** |
32 | + |
33 | +Internals |
34 | +********* |
35 | + |
36 | +Testing |
37 | +******* |
38 | + |
39 | +bzr 1.18 |
40 | +######## |
41 | + |
42 | +Compatibility Breaks |
43 | +******************** |
44 | + |
45 | * Committing directly to a stacked branch from a lightweight checkout will |
46 | no longer work. In previous versions this would appear to work but would |
47 | generate repositories with insufficient data to create deltas, leading |
48 | @@ -116,8 +153,8 @@ |
49 | can run the https tests. (Denys Duchier, #392401) |
50 | |
51 | |
52 | -bzr 1.18 |
53 | -######## |
54 | +bzr 1.18rc1 |
55 | +########### |
56 | |
57 | :Codename: little traveller |
58 | :1.18rc1: 2009-08-10 |
59 | |
60 | === modified file 'bzrlib/branch.py' |
61 | --- bzrlib/branch.py 2009-08-17 06:17:21 +0000 |
62 | +++ bzrlib/branch.py 2009-08-18 20:35:49 +0000 |
63 | @@ -2067,7 +2067,7 @@ |
64 | BranchFormat.register_format(__format6) |
65 | BranchFormat.register_format(__format7) |
66 | BranchFormat.register_format(__format8) |
67 | -BranchFormat.set_default_format(__format6) |
68 | +BranchFormat.set_default_format(__format7) |
69 | _legacy_formats = [BzrBranchFormat4(), |
70 | ] |
71 | network_format_registry.register( |
72 | |
73 | === modified file 'bzrlib/bzrdir.py' |
74 | --- bzrlib/bzrdir.py 2009-08-18 01:38:56 +0000 |
75 | +++ bzrlib/bzrdir.py 2009-08-18 20:35:50 +0000 |
76 | @@ -3864,11 +3864,11 @@ |
77 | # The following format should be an alias for the rich root equivalent |
78 | # of the default format |
79 | format_registry.register_metadir('default-rich-root', |
80 | - 'bzrlib.repofmt.pack_repo.RepositoryFormatKnitPack4', |
81 | - help='Default format, rich root variant. (needed for bzr-svn and bzr-git).', |
82 | - branch_format='bzrlib.branch.BzrBranchFormat6', |
83 | - tree_format='bzrlib.workingtree.WorkingTreeFormat4', |
84 | + 'bzrlib.repofmt.groupcompress_repo.RepositoryFormat2a', |
85 | + branch_format='bzrlib.branch.BzrBranchFormat7', |
86 | + tree_format='bzrlib.workingtree.WorkingTreeFormat6', |
87 | alias=True, |
88 | - ) |
89 | + help='Same as 2a.') |
90 | + |
91 | # The current format that is made on 'bzr init'. |
92 | -format_registry.set_default('pack-0.92') |
93 | +format_registry.set_default('2a') |
94 | |
95 | === modified file 'bzrlib/tests/blackbox/test_info.py' |
96 | --- bzrlib/tests/blackbox/test_info.py 2009-08-14 13:55:30 +0000 |
97 | +++ bzrlib/tests/blackbox/test_info.py 2009-08-18 20:35:50 +0000 |
98 | @@ -37,11 +37,7 @@ |
99 | |
100 | def setUp(self): |
101 | ExternalBase.setUp(self) |
102 | - self._repo_strings = ( |
103 | - "1.6 or 1.6.1-rich-root " |
104 | - "or 1.9 or 1.9-rich-root " |
105 | - "or dirstate or dirstate-tags or " |
106 | - "pack-0.92 or rich-root or rich-root-pack") |
107 | + self._repo_strings = "2a or development-subtree" |
108 | |
109 | def test_info_non_existing(self): |
110 | if sys.platform == "win32": |
111 | @@ -291,7 +287,7 @@ |
112 | |
113 | Format: |
114 | control: Meta directory format 1 |
115 | - working tree: Working tree format 4 |
116 | + working tree: Working tree format 6 |
117 | branch: Branch format 4 |
118 | repository: Weave repository format 6 |
119 | |
120 | @@ -453,7 +449,7 @@ |
121 | |
122 | Format: |
123 | control: Meta directory format 1 |
124 | - working tree: Working tree format 4 |
125 | + working tree: Working tree format 6 |
126 | branch: Branch format 4 |
127 | repository: Weave repository format 6 |
128 | |
129 | @@ -586,7 +582,7 @@ |
130 | |
131 | Format: |
132 | control: Meta directory format 1 |
133 | - working tree: Working tree format 4 |
134 | + working tree: Working tree format 6 |
135 | branch: %s |
136 | repository: %s |
137 | |
138 | @@ -617,14 +613,14 @@ |
139 | # Out of date checkout |
140 | out, err = self.run_bzr('info -v tree/checkout') |
141 | self.assertEqualDiff( |
142 | -"""Checkout (format: dirstate) |
143 | +"""Checkout (format: unnamed) |
144 | Location: |
145 | checkout root: tree/checkout |
146 | checkout of branch: repo/branch |
147 | |
148 | Format: |
149 | control: Meta directory format 1 |
150 | - working tree: Working tree format 4 |
151 | + working tree: Working tree format 6 |
152 | branch: %s |
153 | repository: %s |
154 | |
155 | @@ -656,14 +652,14 @@ |
156 | tree3.add('b') |
157 | out, err = self.run_bzr('info tree/checkout --verbose') |
158 | self.assertEqualDiff( |
159 | -"""Checkout (format: dirstate) |
160 | +"""Checkout (format: unnamed) |
161 | Location: |
162 | checkout root: tree/checkout |
163 | checkout of branch: repo/branch |
164 | |
165 | Format: |
166 | control: Meta directory format 1 |
167 | - working tree: Working tree format 4 |
168 | + working tree: Working tree format 6 |
169 | branch: %s |
170 | repository: %s |
171 | |
172 | @@ -705,7 +701,7 @@ |
173 | |
174 | Format: |
175 | control: Meta directory format 1 |
176 | - working tree: Working tree format 4 |
177 | + working tree: Working tree format 6 |
178 | branch: %s |
179 | repository: %s |
180 | |
181 | @@ -1131,7 +1127,7 @@ |
182 | (False, False): 'Checkout', |
183 | }[(shared_repo is not None, light_checkout)] |
184 | format = {True: self._repo_strings, |
185 | - False: 'dirstate'}[light_checkout] |
186 | + False: 'unnamed'}[light_checkout] |
187 | if repo_locked: |
188 | repo_locked = lco_tree.branch.repository.get_physical_lock_status() |
189 | if repo_locked or branch_locked or tree_locked: |
190 | |
191 | === modified file 'bzrlib/tests/blackbox/test_init.py' |
192 | --- bzrlib/tests/blackbox/test_init.py 2009-08-12 21:58:32 +0000 |
193 | +++ bzrlib/tests/blackbox/test_init.py 2009-08-18 20:35:50 +0000 |
194 | @@ -35,7 +35,7 @@ |
195 | |
196 | def setUp(self): |
197 | ExternalBase.setUp(self) |
198 | - self._default_label = 'pack-0.92' |
199 | + self._default_label = '2a' |
200 | |
201 | def test_init_with_format(self): |
202 | # Verify bzr init --format constructs something plausible |
203 | |
204 | === modified file 'bzrlib/tests/blackbox/test_shared_repository.py' |
205 | --- bzrlib/tests/blackbox/test_shared_repository.py 2009-03-23 14:59:43 +0000 |
206 | +++ bzrlib/tests/blackbox/test_shared_repository.py 2009-08-18 20:35:50 +0000 |
207 | @@ -27,7 +27,7 @@ |
208 | def test_make_repository(self): |
209 | out, err = self.run_bzr("init-repository a") |
210 | self.assertEqual(out, |
211 | -"""Shared repository with trees (format: pack-0.92) |
212 | +"""Shared repository with trees (format: 2a) |
213 | Location: |
214 | shared repository: a |
215 | """) |
216 | |
217 | === modified file 'bzrlib/tests/per_repository/test_add_fallback_repository.py' |
218 | --- bzrlib/tests/per_repository/test_add_fallback_repository.py 2009-03-23 14:59:43 +0000 |
219 | +++ bzrlib/tests/per_repository/test_add_fallback_repository.py 2009-08-18 20:35:50 +0000 |
220 | @@ -29,14 +29,7 @@ |
221 | class TestAddFallbackRepository(TestCaseWithRepository): |
222 | |
223 | def test_add_fallback_repository(self): |
224 | - if isinstance(self.repository_format, remote.RemoteRepositoryFormat): |
225 | - # RemoteRepository by default builds a default format real |
226 | - # repository, but the default format is unstackble. So explicitly |
227 | - # make a stackable real repository and use that. |
228 | - repo = self.make_repository('repo', format='1.9') |
229 | - repo = bzrdir.BzrDir.open(self.get_url('repo')).open_repository() |
230 | - else: |
231 | - repo = self.make_repository('repo') |
232 | + repo = self.make_repository('repo') |
233 | tree = self.make_branch_and_tree('branch') |
234 | if not repo._format.supports_external_lookups: |
235 | self.assertRaises(errors.UnstackableRepositoryFormat, |
236 | |
237 | === modified file 'bzrlib/tests/per_repository/test_repository.py' |
238 | --- bzrlib/tests/per_repository/test_repository.py 2009-06-26 09:24:34 +0000 |
239 | +++ bzrlib/tests/per_repository/test_repository.py 2009-08-18 20:35:50 +0000 |
240 | @@ -929,8 +929,14 @@ |
241 | transport.mkdir('.') |
242 | target_bzrdir = bzrdir_format.initialize_on_transport(transport) |
243 | branch = BzrBranchFormat6().initialize(target_bzrdir) |
244 | - #branch = self.make_branch('repo/branch', format='pack-0.92') |
245 | - self.make_branch('stack-on-me') |
246 | + if not repo.supports_rich_root(): |
247 | + stack_on_format = "pack-0.92" |
248 | + else: |
249 | + if repo._format.supports_chks: |
250 | + stack_on_format = "2a" |
251 | + else: |
252 | + stack_on_format = "1.9-rich-root" |
253 | + self.make_branch('stack-on-me', format=stack_on_format) |
254 | self.make_bzrdir('.').get_config().set_default_stack_on('stack-on-me') |
255 | target = branch.bzrdir.clone(self.get_url('target')) |
256 | # The target branch supports stacking if the source repository does. |
257 | |
258 | === modified file 'bzrlib/tests/test_branch.py' |
259 | --- bzrlib/tests/test_branch.py 2009-07-10 05:49:34 +0000 |
260 | +++ bzrlib/tests/test_branch.py 2009-08-18 20:35:50 +0000 |
261 | @@ -40,6 +40,7 @@ |
262 | BzrBranch5, |
263 | BzrBranchFormat5, |
264 | BzrBranchFormat6, |
265 | + BzrBranchFormat7, |
266 | PullResult, |
267 | _run_with_write_locked_target, |
268 | ) |
269 | @@ -60,7 +61,7 @@ |
270 | def test_default_format(self): |
271 | # update this if you change the default branch format |
272 | self.assertIsInstance(BranchFormat.get_default_format(), |
273 | - BzrBranchFormat6) |
274 | + BzrBranchFormat7) |
275 | |
276 | def test_default_format_is_same_as_bzrdir_default(self): |
277 | # XXX: it might be nice if there was only one place the default was |
278 | |
279 | === modified file 'bzrlib/tests/test_dirstate.py' |
280 | --- bzrlib/tests/test_dirstate.py 2009-07-15 01:13:20 +0000 |
281 | +++ bzrlib/tests/test_dirstate.py 2009-08-18 20:35:50 +0000 |
282 | @@ -419,7 +419,7 @@ |
283 | (('', '', tree.get_root_id()), # common details |
284 | [('d', '', 0, False, dirstate.DirState.NULLSTAT), # current tree |
285 | ('d', '', 0, False, rev_id), # first parent details |
286 | - ('d', '', 0, False, rev_id2), # second parent details |
287 | + ('d', '', 0, False, rev_id), # second parent details |
288 | ])]) |
289 | state = dirstate.DirState.from_tree(tree, 'dirstate') |
290 | self.check_state_with_reopen(expected_result, state) |
291 | @@ -500,7 +500,7 @@ |
292 | (('', '', tree.get_root_id()), # common details |
293 | [('d', '', 0, False, dirstate.DirState.NULLSTAT), # current tree |
294 | ('d', '', 0, False, rev_id), # first parent details |
295 | - ('d', '', 0, False, rev_id2), # second parent details |
296 | + ('d', '', 0, False, rev_id), # second parent details |
297 | ]), |
298 | (('', 'a file', 'a-file-id'), # common |
299 | [('f', '', 0, False, dirstate.DirState.NULLSTAT), # current |
300 | @@ -1000,7 +1000,7 @@ |
301 | [(('', '', root_id), [ |
302 | ('d', '', 0, False, dirstate.DirState.NULLSTAT), |
303 | ('d', '', 0, False, revid1), |
304 | - ('d', '', 0, False, revid2) |
305 | + ('d', '', 0, False, revid1) |
306 | ])], |
307 | list(state._iter_entries())) |
308 | finally: |
309 | @@ -1034,7 +1034,7 @@ |
310 | (('', '', root_id), [ |
311 | ('d', '', 0, False, dirstate.DirState.NULLSTAT), |
312 | ('d', '', 0, False, revid1.encode('utf8')), |
313 | - ('d', '', 0, False, revid2.encode('utf8')) |
314 | + ('d', '', 0, False, revid1.encode('utf8')) |
315 | ]), |
316 | (('', 'a file', 'file-id'), [ |
317 | ('a', '', 0, False, ''), |
318 | |
319 | === modified file 'bzrlib/tests/test_foreign.py' |
320 | --- bzrlib/tests/test_foreign.py 2009-08-14 04:30:32 +0000 |
321 | +++ bzrlib/tests/test_foreign.py 2009-08-18 20:35:50 +0000 |
322 | @@ -320,7 +320,7 @@ |
323 | foreign.update_workingtree_fileids(wt, target_basis) |
324 | wt.lock_read() |
325 | try: |
326 | - self.assertEquals([root_id, "bla-b"], list(wt.inventory)) |
327 | + self.assertEquals(set([root_id, "bla-b"]), set(wt.inventory)) |
328 | finally: |
329 | wt.unlock() |
330 | |
331 | |
332 | === modified file 'bzrlib/tests/test_log.py' |
333 | --- bzrlib/tests/test_log.py 2009-08-17 19:31:29 +0000 |
334 | +++ bzrlib/tests/test_log.py 2009-08-18 20:35:50 +0000 |
335 | @@ -142,6 +142,9 @@ |
336 | lf = LogCatcher() |
337 | log.show_log(wt.branch, lf, verbose=True) |
338 | committed_msg = lf.revisions[0].rev.message |
339 | + if msg == committed_msg: |
340 | + raise tests.KnownFailure( |
341 | + "Commit message was preserved, but it wasn't expected to be.") |
342 | self.assertNotEqual(msg, committed_msg) |
343 | self.assertTrue(len(committed_msg) > len(msg)) |
344 | |
345 | |
346 | === modified file 'bzrlib/tests/test_remote.py' |
347 | --- bzrlib/tests/test_remote.py 2009-08-14 00:55:42 +0000 |
348 | +++ bzrlib/tests/test_remote.py 2009-08-18 20:35:50 +0000 |
349 | @@ -661,8 +661,9 @@ |
350 | network_name = reference_format.network_name() |
351 | client.add_expected_call( |
352 | 'BzrDir.create_repository', ('quack/', |
353 | - 'Bazaar pack repository format 1 (needs bzr 0.92)\n', 'False'), |
354 | - 'success', ('ok', 'no', 'no', 'no', network_name)) |
355 | + 'Bazaar repository format 2a (needs bzr 1.16 or later)\n', |
356 | + 'False'), |
357 | + 'success', ('ok', 'yes', 'yes', 'yes', network_name)) |
358 | a_bzrdir = RemoteBzrDir(transport, remote.RemoteBzrDirFormat(), |
359 | _client=client) |
360 | repo = a_bzrdir.create_repository() |
361 | @@ -670,9 +671,9 @@ |
362 | self.assertIsInstance(repo, remote.RemoteRepository) |
363 | # its format should have the settings from the response |
364 | format = repo._format |
365 | - self.assertFalse(format.rich_root_data) |
366 | - self.assertFalse(format.supports_tree_reference) |
367 | - self.assertFalse(format.supports_external_lookups) |
368 | + self.assertTrue(format.rich_root_data) |
369 | + self.assertTrue(format.supports_tree_reference) |
370 | + self.assertTrue(format.supports_external_lookups) |
371 | self.assertEqual(network_name, format.network_name()) |
372 | |
373 | |
374 | @@ -2354,6 +2355,7 @@ |
375 | """ |
376 | # Define a stream using generators so that it isn't rewindable. |
377 | inv = inventory.Inventory(revision_id='rev1') |
378 | + inv.root.revision = 'rev1' |
379 | def stream_with_inv_delta(): |
380 | yield ('inventories', inventories_substream()) |
381 | yield ('inventory-deltas', inventory_delta_substream()) |
382 | |
383 | === modified file 'bzrlib/tests/test_selftest.py' |
384 | --- bzrlib/tests/test_selftest.py 2009-08-15 09:15:03 +0000 |
385 | +++ bzrlib/tests/test_selftest.py 2009-08-18 20:35:50 +0000 |
386 | @@ -40,6 +40,7 @@ |
387 | workingtree, |
388 | ) |
389 | from bzrlib.repofmt import ( |
390 | + groupcompress_repo, |
391 | pack_repo, |
392 | weaverepo, |
393 | ) |
394 | @@ -215,24 +216,24 @@ |
395 | from bzrlib.tests.per_repository import formats_to_scenarios |
396 | formats = [("(c)", remote.RemoteRepositoryFormat()), |
397 | ("(d)", repository.format_registry.get( |
398 | - 'Bazaar pack repository format 1 (needs bzr 0.92)\n'))] |
399 | + 'Bazaar repository format 2a (needs bzr 1.16 or later)\n'))] |
400 | no_vfs_scenarios = formats_to_scenarios(formats, "server", "readonly", |
401 | None) |
402 | vfs_scenarios = formats_to_scenarios(formats, "server", "readonly", |
403 | vfs_transport_factory="vfs") |
404 | # no_vfs generate scenarios without vfs_transport_factory |
405 | - self.assertEqual([ |
406 | + expected = [ |
407 | ('RemoteRepositoryFormat(c)', |
408 | {'bzrdir_format': remote.RemoteBzrDirFormat(), |
409 | 'repository_format': remote.RemoteRepositoryFormat(), |
410 | 'transport_readonly_server': 'readonly', |
411 | 'transport_server': 'server'}), |
412 | - ('RepositoryFormatKnitPack1(d)', |
413 | + ('RepositoryFormat2a(d)', |
414 | {'bzrdir_format': bzrdir.BzrDirMetaFormat1(), |
415 | - 'repository_format': pack_repo.RepositoryFormatKnitPack1(), |
416 | + 'repository_format': groupcompress_repo.RepositoryFormat2a(), |
417 | 'transport_readonly_server': 'readonly', |
418 | - 'transport_server': 'server'})], |
419 | - no_vfs_scenarios) |
420 | + 'transport_server': 'server'})] |
421 | + self.assertEqual(expected, no_vfs_scenarios) |
422 | self.assertEqual([ |
423 | ('RemoteRepositoryFormat(c)', |
424 | {'bzrdir_format': remote.RemoteBzrDirFormat(), |
425 | @@ -240,9 +241,9 @@ |
426 | 'transport_readonly_server': 'readonly', |
427 | 'transport_server': 'server', |
428 | 'vfs_transport_factory': 'vfs'}), |
429 | - ('RepositoryFormatKnitPack1(d)', |
430 | + ('RepositoryFormat2a(d)', |
431 | {'bzrdir_format': bzrdir.BzrDirMetaFormat1(), |
432 | - 'repository_format': pack_repo.RepositoryFormatKnitPack1(), |
433 | + 'repository_format': groupcompress_repo.RepositoryFormat2a(), |
434 | 'transport_readonly_server': 'readonly', |
435 | 'transport_server': 'server', |
436 | 'vfs_transport_factory': 'vfs'})], |
437 | |
438 | === modified file 'bzrlib/tests/test_smart.py' |
439 | --- bzrlib/tests/test_smart.py 2009-08-17 20:53:59 +0000 |
440 | +++ bzrlib/tests/test_smart.py 2009-08-18 20:35:50 +0000 |
441 | @@ -456,7 +456,7 @@ |
442 | def test_stacked_branch(self): |
443 | """Opening a stacked branch does not open the stacked-on branch.""" |
444 | trunk = self.make_branch('trunk') |
445 | - feature = self.make_branch('feature', format='1.9') |
446 | + feature = self.make_branch('feature') |
447 | feature.set_stacked_on_url(trunk.base) |
448 | opened_branches = [] |
449 | Branch.hooks.install_named_hook('open', opened_branches.append, None) |
450 | |
451 | === modified file 'bzrlib/tests/test_version_info.py' |
452 | --- bzrlib/tests/test_version_info.py 2009-04-06 02:54:14 +0000 |
453 | +++ bzrlib/tests/test_version_info.py 2009-08-18 20:35:50 +0000 |
454 | @@ -148,12 +148,11 @@ |
455 | stanza = regen(check_for_clean=True, include_file_revisions=True) |
456 | self.assertEqual(['False'], stanza.get_all('clean')) |
457 | |
458 | - # XXX: This assumes it's being run against a repository that updates |
459 | - # the root revision on every commit. Newer ones that use |
460 | - # RootCommitBuilder won't update it on each commit. |
461 | + # This assumes it's being run against a tree that does not update the |
462 | + # root revision on every commit. |
463 | file_rev_stanza = get_one_stanza(stanza, 'file-revisions') |
464 | self.assertEqual(['', 'a', 'b', 'c'], file_rev_stanza.get_all('path')) |
465 | - self.assertEqual(['r3', 'r3', 'r2', 'unversioned'], |
466 | + self.assertEqual(['r1', 'r3', 'r2', 'unversioned'], |
467 | file_rev_stanza.get_all('revision')) |
468 | os.remove('branch/c') |
469 | |
470 | @@ -171,7 +170,7 @@ |
471 | file_rev_stanza = get_one_stanza(stanza, 'file-revisions') |
472 | self.assertEqual(['', 'a', 'b', 'c', 'd'], |
473 | file_rev_stanza.get_all('path')) |
474 | - self.assertEqual(['r3', 'modified', 'renamed to d', 'new', |
475 | + self.assertEqual(['r1', 'modified', 'renamed to d', 'new', |
476 | 'renamed from b'], |
477 | file_rev_stanza.get_all('revision')) |
478 | |
479 | @@ -181,7 +180,7 @@ |
480 | stanza = regen(check_for_clean=True, include_file_revisions=True) |
481 | file_rev_stanza = get_one_stanza(stanza, 'file-revisions') |
482 | self.assertEqual(['', 'a', 'c', 'd'], file_rev_stanza.get_all('path')) |
483 | - self.assertEqual(['r4', 'r4', 'unversioned', 'removed'], |
484 | + self.assertEqual(['r1', 'r4', 'unversioned', 'removed'], |
485 | file_rev_stanza.get_all('revision')) |
486 | |
487 | def test_python_null(self): |
488 | |
489 | === modified file 'bzrlib/workingtree.py' |
490 | --- bzrlib/workingtree.py 2009-08-14 02:35:01 +0000 |
491 | +++ bzrlib/workingtree.py 2009-08-18 20:35:50 +0000 |
492 | @@ -3030,10 +3030,10 @@ |
493 | return self.get_format_string() |
494 | |
495 | |
496 | -__default_format = WorkingTreeFormat4() |
497 | +__default_format = WorkingTreeFormat6() |
498 | WorkingTreeFormat.register_format(__default_format) |
499 | -WorkingTreeFormat.register_format(WorkingTreeFormat6()) |
500 | WorkingTreeFormat.register_format(WorkingTreeFormat5()) |
501 | +WorkingTreeFormat.register_format(WorkingTreeFormat4()) |
502 | WorkingTreeFormat.register_format(WorkingTreeFormat3()) |
503 | WorkingTreeFormat.set_default_format(__default_format) |
504 | # formats which have no format string are not discoverable |
This makes 2a the default format.
The web diff will be overly large - there are many approved components
of this branch currently landing on PQM.
So to review, you'll probably want to pull my bzr.dev once the current
branch has landed and merge. I'll do that myself and update the branch,
but even the lp will take hours to get up to speed.