1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
*************************************
Bazaar and the Launchpad Code release
*************************************
Launchpad will be released as open source before the end of July 2009,
including all its history.
We want to release the source for download through Bazaar.
We expect there will be considerable interest in downloading and looking
through the source, and then in pushing back branches for integration.
Issues
******
* Bazaar's brisbane-core (aka 2.0) format must be stable and reliable
before the release is published. It's been tested on several projects
but not yet widely used in production.
* The format should be branded '2.0' or '2.0beta' not 'development'.
* Launchpad must cope reliably with large amounts of load. Much of it will
be anonymous access over http, which can be served passively from
Apache and more efficiently than from Python.
* Stacking must work in bzr brisbane-core
<https://bugs.launchpad.net/bzr/+bug/373455>
(It's arguably not strictly required, but without it it'll be hard to
actually work on the branches, and doing another format change
afterwards would be bad.)
* "Things don't work the first time." We may need to land more fixes from
bzr into Launchpad after initial testing before it's ready to go.
* Clients that can read this format should be available for all important
formats.
* It would be annoying to ask people to upgrade just after downloading all
the data: large upgrades of Launchpad's repository take hours at least.
* If Launchpad has too many incoming SSH connections, it should fall back
gracefully.
Plan
****
* Fix stacking in brisbane-core <https://bugs.launchpad.net/bzr/+bug/373455>
* Rename or alias the format to '2.0'.
* Fix other critical bugs targetted to 2.0:
<https://launchpad.net/bzr/+milestone/2.0>
* If these fixes are reasonably small, target them to a 1.15.1rc1 and
push it immediately; otherwise merge to 1.16rc1. Release and test.
* Merge that release into Launchpad's rocketfuel branch.
* Roll out that Launchpad release onto lpnet.
* Upgrade Launchpad branches.
* Test performance of Launchpad under load, over both ssh and http.
Perhaps recruit Canonical people to pull simultaneously from around the
world.
* Check performance over dumb http is adequate, both in throughput for the
user and load on the server.
* Install some load-limiting for ssh, either at the application or the
network level.
* Announce the Launchpad open source release.
Not to be done
**************
It would be nice to support nested trees in this release. If it's ready
we'll merge it, but finishing it is not a higher priority than making
brisbane-core available in a timely 2.0 and a good Launchpad
open source release.
|