~launchpad-pqm/launchpad/devel

12392.1.2 by Jonathan Lange
Make sure all documents are linked to.
1
============
2
About Malone
3
============
1271 by Canonical.com Patch Queue Manager
add malone vision doc
4
5
The world has many excellent bug tracking tools already. It would not make
6
sense to create another bugtracker unless the vision behind that software
7
was substantially different to anything that had gone before it. This
8
document outlines that vision, explaining what it is that I hope Malone will
9
do for the open source community.
10
11
The Vision behind Malone
12392.1.2 by Jonathan Lange
Make sure all documents are linked to.
12
========================
1271 by Canonical.com Patch Queue Manager
add malone vision doc
13
14
Malone is a unified bug tracker for the entire open source world. It is
15
designed to allow the whole open source community to collaborate on software
16
defect management, especially when a single piece of code is being used
17
across many projects. Malone presents a single page which gathers together
18
the combined wisdom and knowledge of the open source world regarding a
19
specific software defect.
20
21
Upstream and Distributions
12392.1.2 by Jonathan Lange
Make sure all documents are linked to.
22
==========================
1271 by Canonical.com Patch Queue Manager
add malone vision doc
23
24
A unique feature of Malone is that it understands the structure of the open
12392.1.2 by Jonathan Lange
Make sure all documents are linked to.
25
source community::
1271 by Canonical.com Patch Queue Manager
add malone vision doc
26
27
  Software is developed by individuals or groups with a common interest in a
28
  specific problem. We call this group "upstream". That software is
29
  distributed in its pristine state ("tarballs", usually) and is usually
30
  designed to be compiled and run on a variety of platforms.
12392.1.2 by Jonathan Lange
Make sure all documents are linked to.
31
1271 by Canonical.com Patch Queue Manager
add malone vision doc
32
  However, most people who use that software will not get it directly from
33
  upstream, build it and install it locally. They will install a package
34
  that has already been prepared for the specific platform they are running
35
  on. For example, on Gentoo, they will type "emerge foo". On Ubuntu, they
36
  would type "apt-get install foo". And on RedHat they would install a
37
  custom RPM. So the same software code is being repackaged many times, for
38
  Gentoo, Ubuntu, RedHat, and many other platforms.
39
40
A natural consequence of this repackaging is that a bug in that software
41
might be detected and/or fixed by a variety of different people, without
42
upstream being aware of either the bug or the fix. In many cases, the people
43
doing the repackaging have entirely separate bug tracking tools to upstream,
44
and it is difficult for them to pass their information and patches to
45
upstream directly.
46
47
Malone explicitly tracks the status of a bug both upstream and in any
3936.1.1 by Tom Haddon
Test commit that simply changes references to "the Launchpad" to "Launchpad" in doc/malone.txt
48
distributions registered in Launchpad. This makes it possible, for
1271 by Canonical.com Patch Queue Manager
add malone vision doc
49
example, to see immediately if a fix has been found for a given bug by any
50
of the participating distributions, or upstream. The bug page shows this
51
information very prominently.
52
53
Watches
12392.1.2 by Jonathan Lange
Make sure all documents are linked to.
54
=======
1271 by Canonical.com Patch Queue Manager
add malone vision doc
55
56
It's unlikely that the whole world will shift to Malone. Many larger
57
projects have their own bug tracking tools (Bugzilla, Sourceforge and
58
Roundup are commonly used) and some have even created custom tools for this
59
purpose. For that reason, Malone supports BugWatches. A BugWatch is a
60
reference to a different bugtracker that is tracking the same bug. Of course
61
it will have a different bug number in that system, and the integration
62
between Malone and that remote bug system is possibly limited, compared to
63
the richness of the Malone data model, but this still allows us to keep
64
track of a bug in a different bug tracker. For example, a bug in the Firefox
65
package on Ubuntu would be tracked in Malone. If the same bug has been
66
identified upstream, it would be recorded in bugzilla.mozilla.org, and we
67
would create a BugWatch in the Malone bug pointing at that upstream bug.
68
69
Email Integration
12392.1.2 by Jonathan Lange
Make sure all documents are linked to.
70
=================
1271 by Canonical.com Patch Queue Manager
add malone vision doc
71
72
It's important that Malone be usable entirely in email. Many open source
73
developers use their email to track work that needs to be done. So all of
74
Malone's features should be accessible via email, including changing the
75
status of a bug, adding and updating watches, and possibly also requesting
76
reports of bugs on a product or distrbution.
77
78
Distribution Bugs
12392.1.2 by Jonathan Lange
Make sure all documents are linked to.
79
=================
1271 by Canonical.com Patch Queue Manager
add malone vision doc
80
81
Malone is designed to track bugs upstream, and in distributions. The
82
requirements for a distribution bugtracker are somewhat specialised. A
83
distribution consists of many source packages and binary packages, and it
84
must be possible to track bugs at a fine level of granularity such as at the
85
source/binary package level.
86
87
Malone allows us to create bugs that belong only to a distribution, or to a
88
sourcepackage in a distribution if we have that information. Bugs that are
89
not associated with a sourcepackage can be thought of as "untriaged" bugs.
90
In some cases, we should be able to know not only which source package, but
91
also the precise binary package that manifests the bug.
92
5121.2.8 by Stuart Bishop
Renaming in doctests
93
Milestones and DistroSeries
12392.1.2 by Jonathan Lange
Make sure all documents are linked to.
94
===========================
1271 by Canonical.com Patch Queue Manager
add malone vision doc
95
96
In addition, it's important to be able to know which bugs need to be fix for
97
a given release of the distribution, or a given milestone upstream. Malone
5121.2.8 by Stuart Bishop
Renaming in doctests
98
allows us to specify a milestone or a distroseries by which a bug needs to
1271 by Canonical.com Patch Queue Manager
add malone vision doc
99
be fixed, which allows QA teams to keep track of the progress they are
100
making towards a release.
101
102
Version Tracking
12392.1.2 by Jonathan Lange
Make sure all documents are linked to.
103
================
1271 by Canonical.com Patch Queue Manager
add malone vision doc
104
105
One very difficult problem faced by support teams in the open source world
106
is that users may not all be running the latest version of a piece of code.
107
In fact, that's pretty much guaranteed. So Malone needs to be able to say
108
whether a bug is found in a particular version of a package or not.
109
110
Future
12392.1.2 by Jonathan Lange
Make sure all documents are linked to.
111
======
112
113
Bazaar Integration
114
------------------
115
116
Malone is part of Launchpad, a web based portal for open source
117
developers. Another component of that portal is the Bazaar, a repository of
118
data and metadata about code stored in the Bazaar revision control system. We
119
hope that Bazaar will be embraced by the open source world, as it solves a
120
number of problems with traditional centralised revision control systems and
121
is again designed to support distributed disconnected operation.
122
123
Once more people start keeping their code in Bazaar, it should become possible
124
to streamline the cooperation process even further. For example, if the fix
125
for a particular Malone bug can be found in a Bazaar changeset, then it should
126
be possible for upstream and other distributions to merge in that fix to their
127
codebase automatically and easily. The integration could even be
128
bidirectional - once a fix had been merged in, Bazaar could possibly detect
129
that and mark the bug fixed in that codebase automatically.
1271 by Canonical.com Patch Queue Manager
add malone vision doc
130
131