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 |