Merge lp:~intellectronica/launchpad/no-patches-message into lp:launchpad

Proposed by Karl Fogel
Status: Merged
Approved by: Michael Hudson-Doyle
Approved revision: no longer in the source branch.
Merged at revision: not available
Proposed branch: lp:~intellectronica/launchpad/no-patches-message
Merge into: lp:launchpad
Diff against target: 1526 lines (+1204/-11)
10 files modified
database/sampledata/current-dev.sql (+640/-2)
lib/canonical/launchpad/icing/style.css (+1/-1)
lib/lp/bugs/browser/bugtarget.py (+64/-2)
lib/lp/bugs/browser/configure.zcml (+8/-1)
lib/lp/bugs/interfaces/bugtarget.py (+1/-1)
lib/lp/bugs/interfaces/bugtask.py (+4/-0)
lib/lp/bugs/model/bugtarget.py (+1/-1)
lib/lp/bugs/stories/patches-view/patches-view.txt (+325/-0)
lib/lp/bugs/templates/bugtarget-patches.pt (+136/-0)
lib/lp/testing/factory.py (+24/-3)
To merge this branch: bzr merge lp:~intellectronica/launchpad/no-patches-message
Reviewer Review Type Date Requested Status
Martin Albisetti (community) ui Approve
Michael Hudson-Doyle Approve
Review via email: mp+18428@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Karl Fogel (kfogel) wrote :

(See bug #506018 for more on what the "+patches" view does.)

To test this branch, apply this diff to database/sample/current-dev.sql:

  http://people.canonical.com/~kfogel/patches-view/patches-view-current-dev-sql.diff.gz

Then do 'make schema' and 'make run', and visit:

  https://bugs.launchpad.dev/ubuntu/warty/+patches

You should see an infobox message saying:

  "There are no patches associated with Warty at this time."

But if you visit other URLs, like these...

  https://bugs.launchpad.dev/ubuntu/hoary/+patches
  https://bugs.launchpad.dev/patches-view-test/+patches

...you will see patches listed.

Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :
Download full text (32.1 KiB)

Hi there,

This branch is pretty cool to see, I'm sure it will be very useful!

I have quite a few comments below though, so I'm going to have to vote "Needs Fixing".

Cheers,
mwh

> === modified file 'lib/lp/bugs/browser/bugtarget.py'
> --- lib/lp/bugs/browser/bugtarget.py 2010-01-29 19:00:47 +0000
> +++ lib/lp/bugs/browser/bugtarget.py 2010-02-02 02:15:24 +0000
> @@ -1,4 +1,4 @@
> -# Copyright 2009 Canonical Ltd. This software is licensed under the
> +# Copyright 2010 Canonical Ltd. This software is licensed under the
> # GNU Affero General Public License version 3 (see the file LICENSE).
>
> """IBugTarget-related browser views."""
> @@ -7,6 +7,7 @@
>
> __all__ = [
> "BugsVHostBreadcrumb",
> + "BugsPatchesView",
> "BugTargetBugListingView",
> "BugTargetBugTagsView",
> "BugTargetBugsView",
> @@ -19,8 +20,10 @@
>
> import cgi
> from cStringIO import StringIO
> +from datetime import datetime
> from email import message_from_string
> from operator import itemgetter
> +from pytz import timezone
> from simplejson import dumps
> import tempfile
> import urllib
> @@ -40,6 +43,7 @@
> from canonical.config import config
> from lp.bugs.browser.bugtask import BugTaskSearchListingView
> from lp.bugs.interfaces.bug import IBug
> +from lp.bugs.interfaces.bugattachment import BugAttachmentType
> from canonical.launchpad.browser.feeds import (
> BugFeedLink, BugTargetLatestBugsFeedLink, FeedsMixin,
> PersonLatestBugsFeedLink)
> @@ -48,7 +52,8 @@
> IBugTarget, IOfficialBugTagTargetPublic, IOfficialBugTagTargetRestricted)
> from lp.bugs.interfaces.bug import IBugSet
> from lp.bugs.interfaces.bugtask import (
> - BugTaskStatus, IBugTaskSet, UNRESOLVED_BUGTASK_STATUSES)
> + BugTaskStatus, IBugTaskSet, UNRESOLVED_BUGTASK_STATUSES,
> + UNRESOLVED_PLUS_FIXRELEASED_BUGTASK_STATUSES)
> from canonical.launchpad.interfaces.launchpad import (
> IHasExternalBugTracker, ILaunchpadUsage)
> from canonical.launchpad.interfaces.hwdb import IHWSubmissionSet
> @@ -73,6 +78,7 @@
> LaunchpadEditFormView, LaunchpadFormView, LaunchpadView, action,
> canonical_url, custom_widget, safe_action)
> from canonical.launchpad.webapp.authorization import check_permission
> +from canonical.launchpad.webapp.batching import BatchNavigator
> from canonical.launchpad.webapp.tales import BugTrackerFormatterAPI
> from canonical.launchpad.validators.name import valid_name_pattern
> from canonical.launchpad.webapp.menu import structured
> @@ -1384,3 +1390,59 @@
> class BugsVHostBreadcrumb(Breadcrumb):
> rootsite = 'bugs'
> text = 'Bugs'
> +
> +
> +class BugsPatchesView(LaunchpadView):
> + """View list of patch attachments associated with bugs."""
> +
> + @property
> + def label(self):
> + """The display label for the view."""
> + return 'Patch attachments in %s' % self.context.displayname
> +
> + def batchedPatchTasks(self):
> + """Return a BatchNavigator for bug tasks with patch attachments."""
> + # XXX: Karl Fogel 2010-02-01 bug=515584: we should be using a
> + # Zope form instead of validating the values by hand in the
> + # code. Doing it the Z...

review: Needs Fixing
Revision history for this message
Karl Fogel (kfogel) wrote :

Michael, thanks. It turns out all your comments were on changes from my https://code.edge.launchpad.net/~kfogel/launchpad/506018-patch-report branch, which Tom merged into his branch to have the right context in which to make his changes. Abel had already reviewed my branch once, and I'd updated it in response, so you effectively did the second review.

Anyway: Tom's changes are fine, presumably :-).

As for mine, I've addressed most of your concerns. See these revisions:

 * http://bazaar.launchpad.net/~kfogel/launchpad/506018-patch-report/revision/10190
 * http://bazaar.launchpad.net/~kfogel/launchpad/506018-patch-report/revision/10191
 * http://bazaar.launchpad.net/~kfogel/launchpad/506018-patch-report/revision/10192
 * http://bazaar.launchpad.net/~kfogel/launchpad/506018-patch-report/revision/10193
 * http://bazaar.launchpad.net/~kfogel/launchpad/506018-patch-report/revision/10194

Regarding things not addressed in the above commits:

Regarding "XXX: Karl Fogel 2010-02-01 bug=515584", I have not done it yet, because we're under time pressure to get this branch into staging in time for Jorge to use it in a demo. Hence the XXX.

The copyright year changes follow up to other changes already landed.

We still don't have at est for patch view on a project group; I have left an "XXX" about that due to the time constraints. However, I have fixed it so the column name is "Project" (meaning Product) not "Package", when doing patches view on a project group -- thanks for the excellent suggestion.

Regarding your comment about the new factory.doAsUser() method: "Do you really need to commit here? Zope-level users and database transactions are basically orthogonal." I asked Abel, who said: "yes, I think we must commit here. A story test does not access the database directly, but via a web server, which has its own database connection. When we manipulate the database via factroy.makeSomething(), the connetcion of the web server does not 'see' any change, if we don't commit(). Also, I think we get an error message if we don't commit when the web server accesses the DB after a factory.mkeWhatever() call."

Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Karl Fogel wrote:
> Michael, thanks. It turns out all your comments were on changes from my https://code.edge.launchpad.net/~kfogel/launchpad/506018-patch-report branch, which Tom merged into his branch to have the right context in which to make his changes. Abel had already reviewed my branch once, and I'd updated it in response, so you effectively did the second review.

Ah, so a prerequisite branch should have been set when proposing the
branch for merging...

> Anyway: Tom's changes are fine, presumably :-).
>
> As for mine, I've addressed most of your concerns. See these revisions:
>
> * http://bazaar.launchpad.net/~kfogel/launchpad/506018-patch-report/revision/10190
> * http://bazaar.launchpad.net/~kfogel/launchpad/506018-patch-report/revision/10191
> * http://bazaar.launchpad.net/~kfogel/launchpad/506018-patch-report/revision/10192
> * http://bazaar.launchpad.net/~kfogel/launchpad/506018-patch-report/revision/10193
> * http://bazaar.launchpad.net/~kfogel/launchpad/506018-patch-report/revision/10194
>
> Regarding things not addressed in the above commits:
>
> Regarding "XXX: Karl Fogel 2010-02-01 bug=515584", I have not done it yet, because we're under time pressure to get this branch into staging in time for Jorge to use it in a demo. Hence the XXX.

Well, OK. I think it would take much much less time than the 2 test
suite runs it takes to get stuff onto staging, but...

> The copyright year changes follow up to other changes already landed.
>
> We still don't have at est for patch view on a project group; I have left an "XXX" about that due to the time constraints. However, I have fixed it so the column name is "Project" (meaning Product) not "Package", when doing patches view on a project group -- thanks for the excellent suggestion.

Thanks!

> Regarding your comment about the new factory.doAsUser() method: "Do you really need to commit here? Zope-level users and database transactions are basically orthogonal." I asked Abel, who said: "yes, I think we must commit here. A story test does not access the database directly, but via a web server, which has its own database connection. When we manipulate the database via factroy.makeSomething(), the connetcion of the web server does not 'see' any change, if we don't commit(). Also, I think we get an error message if we don't commit when the web server accesses the DB after a factory.mkeWhatever() call."

As I think we just established on #launchpad-dev, I think Abel is wrong
in the particulars here, but I guess I don't care all that much.

 vote approve
 merge approved

Cheers,
mwh
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAktohtcACgkQeTTOPm7A7kg4WACgllYxd55yDVeYZMqUSonaJw/0
3+0AoIR/1xBaEnJlOilQ1nLIC1ISjwND
=7jeF
-----END PGP SIGNATURE-----

review: Approve
Revision history for this message
Karl Fogel (kfogel) wrote :

Michael Hudson <email address hidden> writes:
>Ah, so a prerequisite branch should have been set when proposing the
>branch for merging...

D'oh. Got it now, thanks.

>> Regarding "XXX: Karl Fogel 2010-02-01 bug=515584", I have not done it yet, because we're under time pressure to get this branch into staging in time for Jorge to use it in a demo. Hence the XXX.
>
>Well, OK. I think it would take much much less time than the 2 test
>suite runs it takes to get stuff onto staging, but...

For you, or for a more experienced me, yes. But I'm fully loaded right
now getting the other changes ready in time, and the people I would ask
for help on this are too -- hence deferring the form fix.

>> Regarding your comment about the new factory.doAsUser() method: "Do you really need to commit here? Zope-level users and database transactions are basically orthogonal." I asked Abel, who said: "yes, I think we must commit here. A story test does not access the database directly, but via a web server, which has its own database connection. When we manipulate the database via factroy.makeSomething(), the connetcion of the web server does not 'see' any change, if we don't commit(). Also, I think we get an error message if we don't commit when the web server accesses the DB after a factory.mkeWhatever() call."
>
>As I think we just established on #launchpad-dev, I think Abel is wrong
>in the particulars here, but I guess I don't care all that much.
>
> vote approve
> merge approved

Thanks.

Does that mean if I took out the transaction.commit, everything would
still work? (Would you recommend I do that?)

Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :

Karl Fogel wrote:

> Does that mean if I took out the transaction.commit, everything would
> still work? (Would you recommend I do that?)

I would recommend you try it, and if the tests still pass, do it.

Cheers,
mwh

Revision history for this message
Martin Albisetti (beuno) :
review: Approve (ui)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'database/sampledata/current-dev.sql'
--- database/sampledata/current-dev.sql 2010-01-18 21:30:20 +0000
+++ database/sampledata/current-dev.sql 2010-02-02 01:39:18 +0000
@@ -1356,6 +1356,17 @@
1356INSERT INTO bug (id, datecreated, name, title, description, owner, duplicateof, fti, private, security_related, date_last_updated, date_made_private, who_made_private, date_last_message, number_of_duplicates, message_count, users_affected_count, users_unaffected_count, heat, heat_last_updated) VALUES (13, '2007-07-27 20:00:58.299796', NULL, 'Launchpad CSS and JS is not testible', 'The messages placed on this bug are for eyeball viewing of JS and CSS behaviour.', 12, NULL, NULL, false, false, '2007-07-27 20:29:46.336737', NULL, NULL, NULL, 0, 2, 0, 0, 0, NULL);1356INSERT INTO bug (id, datecreated, name, title, description, owner, duplicateof, fti, private, security_related, date_last_updated, date_made_private, who_made_private, date_last_message, number_of_duplicates, message_count, users_affected_count, users_unaffected_count, heat, heat_last_updated) VALUES (13, '2007-07-27 20:00:58.299796', NULL, 'Launchpad CSS and JS is not testible', 'The messages placed on this bug are for eyeball viewing of JS and CSS behaviour.', 12, NULL, NULL, false, false, '2007-07-27 20:29:46.336737', NULL, NULL, NULL, 0, 2, 0, 0, 0, NULL);
1357INSERT INTO bug (id, datecreated, name, title, description, owner, duplicateof, fti, private, security_related, date_last_updated, date_made_private, who_made_private, date_last_message, number_of_duplicates, message_count, users_affected_count, users_unaffected_count, heat, heat_last_updated) VALUES (14, '2007-08-09 11:39:16.836856', NULL, 'jokosher exposes personal details in its actions portlet', 'Jokosher discloses to any passerby the fact that I am single and unwed in its actions portlet. Please fix this blatant violacion of privacy now!!', 63, NULL, NULL, true, true, '2007-08-09 11:39:16.836856', NULL, NULL, NULL, 0, 1, 0, 0, 0, NULL);1357INSERT INTO bug (id, datecreated, name, title, description, owner, duplicateof, fti, private, security_related, date_last_updated, date_made_private, who_made_private, date_last_message, number_of_duplicates, message_count, users_affected_count, users_unaffected_count, heat, heat_last_updated) VALUES (14, '2007-08-09 11:39:16.836856', NULL, 'jokosher exposes personal details in its actions portlet', 'Jokosher discloses to any passerby the fact that I am single and unwed in its actions portlet. Please fix this blatant violacion of privacy now!!', 63, NULL, NULL, true, true, '2007-08-09 11:39:16.836856', NULL, NULL, NULL, 0, 1, 0, 0, 0, NULL);
1358INSERT INTO bug (id, datecreated, name, title, description, owner, duplicateof, fti, private, security_related, date_last_updated, date_made_private, who_made_private, date_last_message, number_of_duplicates, message_count, users_affected_count, users_unaffected_count, heat, heat_last_updated) VALUES (15, '2007-12-18 16:30:19.103679', NULL, 'Nonsensical bugs are useless', 'Like this one, natch.', 16, NULL, NULL, false, false, '2007-12-18 16:31:34.972893', NULL, NULL, '2007-12-18 16:31:34.790641', 0, 7, 0, 0, 0, NULL);1358INSERT INTO bug (id, datecreated, name, title, description, owner, duplicateof, fti, private, security_related, date_last_updated, date_made_private, who_made_private, date_last_message, number_of_duplicates, message_count, users_affected_count, users_unaffected_count, heat, heat_last_updated) VALUES (15, '2007-12-18 16:30:19.103679', NULL, 'Nonsensical bugs are useless', 'Like this one, natch.', 16, NULL, NULL, false, false, '2007-12-18 16:31:34.972893', NULL, NULL, '2007-12-18 16:31:34.790641', 0, 7, 0, 0, 0, NULL);
1359INSERT INTO bug (id, datecreated, name, title, description, owner, duplicateof, fti, private, security_related, date_last_updated, date_made_private, who_made_private, date_last_message, number_of_duplicates, message_count, users_affected_count, users_unaffected_count, heat, heat_last_updated) VALUES (16, '2010-01-12 20:45:21.127561', NULL, 'Bug A: No attachments at all.', 'Enough said.', 12, NULL, NULL, false, false, '2010-01-13 17:22:11.58624', NULL, NULL, '2010-01-12 20:45:21.127561', 0, 1, 1, 0, 0, NULL);
1360INSERT INTO bug (id, datecreated, name, title, description, owner, duplicateof, fti, private, security_related, date_last_updated, date_made_private, who_made_private, date_last_message, number_of_duplicates, message_count, users_affected_count, users_unaffected_count, heat, heat_last_updated) VALUES (17, '2010-01-12 22:22:46.153194', NULL, 'Bug B: one non-patch attachment.', 'This is the second bug.', 12, NULL, NULL, false, false, '2010-01-13 17:22:45.081926', NULL, NULL, '2010-01-12 22:28:27.800017', 0, 2, 1, 0, 0, NULL);
1361INSERT INTO bug (id, datecreated, name, title, description, owner, duplicateof, fti, private, security_related, date_last_updated, date_made_private, who_made_private, date_last_message, number_of_duplicates, message_count, users_affected_count, users_unaffected_count, heat, heat_last_updated) VALUES (18, '2010-01-13 14:16:19.911349', NULL, 'Bug C: one patch attachment.', 'This is the third bug in the project, and it has the first attachment that is a patch.', 12, NULL, NULL, false, false, '2010-01-27 22:30:14.500892', NULL, NULL, '2010-01-13 14:16:19.911349', 0, 2, 1, 0, 0, NULL);
1362INSERT INTO bug (id, datecreated, name, title, description, owner, duplicateof, fti, private, security_related, date_last_updated, date_made_private, who_made_private, date_last_message, number_of_duplicates, message_count, users_affected_count, users_unaffected_count, heat, heat_last_updated) VALUES (19, '2010-01-13 14:18:01.028701', NULL, 'Bug D: one patch attachment (really an image file).', 'Bug number four, with patch attachment.
1363
1364', 12, NULL, NULL, false, false, '2010-01-13 17:27:10.529755', NULL, NULL, '2010-01-13 14:18:01.028701', 0, 2, 1, 0, 0, NULL);
1365INSERT INTO bug (id, datecreated, name, title, description, owner, duplicateof, fti, private, security_related, date_last_updated, date_made_private, who_made_private, date_last_message, number_of_duplicates, message_count, users_affected_count, users_unaffected_count, heat, heat_last_updated) VALUES (20, '2010-01-13 14:19:01.243841', NULL, 'Bug E: no attachments.', 'Bug five has no attachment.', 12, NULL, NULL, false, false, '2010-01-13 17:23:49.957979', NULL, NULL, '2010-01-13 14:19:01.243841', 0, 1, 1, 0, 0, NULL);
1366INSERT INTO bug (id, datecreated, name, title, description, owner, duplicateof, fti, private, security_related, date_last_updated, date_made_private, who_made_private, date_last_message, number_of_duplicates, message_count, users_affected_count, users_unaffected_count, heat, heat_last_updated) VALUES (21, '2010-01-13 14:20:12.307283', NULL, 'Bug F: one non-patch attachment (same image that Bug D calls a patch).', 'Bug six has a non-patch attachment (but it''s the same as an earlier bug called a patch attachment).', 12, NULL, NULL, false, false, '2010-01-13 17:27:33.740526', NULL, NULL, '2010-01-13 14:20:12.307283', 0, 2, 1, 0, 0, NULL);
1367INSERT INTO bug (id, datecreated, name, title, description, owner, duplicateof, fti, private, security_related, date_last_updated, date_made_private, who_made_private, date_last_message, number_of_duplicates, message_count, users_affected_count, users_unaffected_count, heat, heat_last_updated) VALUES (22, '2010-01-13 14:22:45.617948', NULL, 'Bug G: one patch attachment.', 'Bug seven has a patch attachment.', 12, NULL, NULL, false, false, '2010-01-13 17:27:52.792443', NULL, NULL, '2010-01-13 14:22:45.617948', 0, 2, 1, 0, 0, NULL);
1368INSERT INTO bug (id, datecreated, name, title, description, owner, duplicateof, fti, private, security_related, date_last_updated, date_made_private, who_made_private, date_last_message, number_of_duplicates, message_count, users_affected_count, users_unaffected_count, heat, heat_last_updated) VALUES (23, '2010-01-13 18:23:45.763802', NULL, 'Bug H: two attachments, one patch, one not.', 'This is Bug H. It has two attachments. One is a patch, the other is not.', 12, NULL, NULL, false, false, '2010-01-13 18:27:05.39843', NULL, NULL, '2010-01-13 18:27:05.201874', 0, 3, 1, 0, 0, NULL);
1369INSERT INTO bug (id, datecreated, name, title, description, owner, duplicateof, fti, private, security_related, date_last_updated, date_made_private, who_made_private, date_last_message, number_of_duplicates, message_count, users_affected_count, users_unaffected_count, heat, heat_last_updated) VALUES (24, '2010-01-13 18:29:46.39858', NULL, 'Bug I: six attachments (three patches, three non-patches).', 'This is Bug I. It has six attachments, of which three are patches.', 12, NULL, NULL, false, false, '2010-01-22 16:28:30.566586', NULL, NULL, '2010-01-13 18:34:21.130592', 0, 7, 1, 0, 0, NULL);
13591370
13601371
1361ALTER TABLE bug ENABLE TRIGGER ALL;1372ALTER TABLE bug ENABLE TRIGGER ALL;
@@ -1399,6 +1410,68 @@
1399INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (34, 15, '2007-12-18 16:30:19.103679', 16, 'bug', NULL, NULL, 'added bug');1410INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (34, 15, '2007-12-18 16:30:19.103679', 16, 'bug', NULL, NULL, 'added bug');
1400INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (35, 15, '2007-12-18 16:30:47.889614', 16, 'bug', NULL, NULL, 'assigned to thunderbird');1411INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (35, 15, '2007-12-18 16:30:47.889614', 16, 'bug', NULL, NULL, 'assigned to thunderbird');
1401INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (36, 15, '2007-12-18 16:31:34.790641', 62, 'thunderbird: status', 'Unknown', 'New', NULL);1412INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (36, 15, '2007-12-18 16:31:34.790641', 62, 'thunderbird: status', 'Unknown', 'New', NULL);
1413INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (37, 16, '2010-01-12 20:45:21.127561', 12, 'bug', NULL, NULL, 'added bug');
1414INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (38, 17, '2010-01-12 22:22:46.153194', 12, 'bug', NULL, NULL, 'added bug');
1415INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (39, 17, '2010-01-12 22:28:27.800017', 12, 'attachment added', NULL, 'bigjools.png http://launchpad.dev:58080/93/bigjools.png', NULL);
1416INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (40, 18, '2010-01-13 14:16:19.911349', 12, 'bug', NULL, NULL, 'added bug');
1417INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (41, 18, '2010-01-13 14:16:19.911349', 12, 'attachment added', NULL, 'test patch http://launchpad.dev:58080/94/test-patch.txt', NULL);
1418INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (42, 19, '2010-01-13 14:18:01.028701', 12, 'bug', NULL, NULL, 'added bug');
1419INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (43, 19, '2010-01-13 14:18:01.028701', 12, 'attachment added', NULL, 'An image file. Let''s see what mime type it gets. http://launchpad.dev:58080/95/nobody.png', NULL);
1420INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (44, 19, '2010-01-13 14:18:27.630313', 12, 'summary', 'The fourth bug has a non-patch attachment.', 'The fourth bug has a attachment.', NULL);
1421INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (45, 19, '2010-01-13 14:18:34.066926', 12, 'description', 'Bug number four, with a non-patch attachment.', 'Bug number four, with patch attachment.
1422
1423', NULL);
1424INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (46, 20, '2010-01-13 14:19:01.243841', 12, 'bug', NULL, NULL, 'added bug');
1425INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (47, 21, '2010-01-13 14:20:12.307283', 12, 'bug', NULL, NULL, 'added bug');
1426INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (48, 21, '2010-01-13 14:20:12.307283', 12, 'attachment added', NULL, 'An image, this time not as a patch. http://launchpad.dev:58080/96/nobody.png', NULL);
1427INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (49, 22, '2010-01-13 14:22:45.617948', 12, 'bug', NULL, NULL, 'added bug');
1428INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (50, 22, '2010-01-13 14:22:45.617948', 12, 'attachment added', NULL, 'Some patch. http://launchpad.dev:58080/97/ignore-this.patch', NULL);
1429INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (51, 19, '2010-01-13 14:26:47.46993', 12, 'summary', 'The fourth bug has a attachment.', 'The fourth bug has a patch attachment.', NULL);
1430INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (52, 16, '2010-01-13 17:21:46.537052', 12, 'summary', 'The first bug has no patch attachment.', 'No attachments at all.', NULL);
1431INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (53, 16, '2010-01-13 17:22:11.382144', 12, 'summary', 'No attachments at all.', 'Bug A: No attachments at all.', NULL);
1432INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (54, 17, '2010-01-13 17:22:24.925081', 12, 'summary', 'The second bug has the first attachment, but it''s not a patch.', 'Bug B: non-patch attachment.', NULL);
1433INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (55, 18, '2010-01-13 17:22:37.743448', 12, 'summary', 'The third bug has the first patch attachment.', 'Bug C: one patch attachment.', NULL);
1434INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (56, 17, '2010-01-13 17:22:44.88561', 12, 'summary', 'Bug B: non-patch attachment.', 'Bug B: one non-patch attachment.', NULL);
1435INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (57, 20, '2010-01-13 17:23:32.153195', 12, 'summary', 'Bug number five has no attachment.', 'Bug D: no attachments.', NULL);
1436INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (58, 20, '2010-01-13 17:23:49.760696', 12, 'summary', 'Bug D: no attachments.', 'Bug E: no attachments.', NULL);
1437INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (59, 19, '2010-01-13 17:27:10.325536', 12, 'summary', 'The fourth bug has a patch attachment.', 'Bug D: one patch attachment (really an image file).', NULL);
1438INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (60, 21, '2010-01-13 17:27:28.108308', 12, 'summary', 'Bug six has a non-patch attachment (but same as earlier was called a patch).', 'Bug F: one non-patch attachment (same image thaht Bug D calls a patch).', NULL);
1439INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (61, 21, '2010-01-13 17:27:33.53256', 12, 'summary', 'Bug F: one non-patch attachment (same image thaht Bug D calls a patch).', 'Bug F: one non-patch attachment (same image that Bug D calls a patch).', NULL);
1440INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (62, 22, '2010-01-13 17:27:52.536624', 12, 'summary', 'Bug seven has a patch attachment.', 'Bug G: one patch attachment.', NULL);
1441INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (63, 23, '2010-01-13 18:23:45.763802', 12, 'bug', NULL, NULL, 'added bug');
1442INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (64, 23, '2010-01-13 18:26:37.318632', 12, 'attachment added', NULL, 'Patch attachment to Bug H. http://launchpad.dev:58080/98/another-diff.txt', NULL);
1443INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (65, 23, '2010-01-13 18:27:05.201874', 12, 'attachment added', NULL, 'Non-patch attachment to Bug H (same as patch attachment, btw). http://launchpad.dev:58080/99/another-diff.txt', NULL);
1444INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (66, 24, '2010-01-13 18:29:46.39858', 12, 'bug', NULL, NULL, 'added bug');
1445INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (67, 24, '2010-01-13 18:29:46.39858', 12, 'attachment added', NULL, 'first patch attachment to Bug I http://launchpad.dev:58080/100/another-diff.txt', NULL);
1446INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (68, 24, '2010-01-13 18:30:30.467005', 12, 'attachment added', NULL, 'second patch attachment to bug I http://launchpad.dev:58080/101/test-patch.txt', NULL);
1447INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (69, 24, '2010-01-13 18:31:54.707866', 12, 'attachment added', NULL, 'first non-patch attachment to Bug I http://launchpad.dev:58080/102/barcelona-laundry.jpg', NULL);
1448INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (70, 24, '2010-01-13 18:32:47.18092', 12, 'attachment added', NULL, 'second non-patch attachment to Bug I http://launchpad.dev:58080/103/esther-helen-exley.jpg', NULL);
1449INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (71, 24, '2010-01-13 18:33:38.232304', 12, 'attachment added', NULL, 'third patch attachment to Bug I http://launchpad.dev:58080/104/rf-setup-patch.txt', NULL);
1450INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (72, 24, '2010-01-13 18:34:21.130592', 12, 'attachment added', NULL, 'third non-patch attachment to Bug I http://launchpad.dev:58080/105/vonage-cancellation.pdf', NULL);
1451INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (73, 18, '2010-01-20 21:17:00.883889', 12, 'bug task added', NULL, 'firefox', NULL);
1452INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (74, 18, '2010-01-20 21:18:49.833838', 12, 'bug task added', NULL, 'cdrkit (Ubuntu)', NULL);
1453INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (75, 24, '2010-01-20 21:20:10.669476', 12, 'bug task added', NULL, 'gentoo', NULL);
1454INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (76, 24, '2010-01-20 21:20:35.930261', 12, 'bug task added', NULL, 'libstdc++ (Ubuntu)', NULL);
1455INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (77, 24, '2010-01-20 21:21:09.866741', 12, 'bug task added', NULL, 'firefox', NULL);
1456INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (78, 24, '2010-01-20 21:21:33.597745', 12, 'bug task added', NULL, 'evolution', NULL);
1457INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (79, 18, '2010-01-20 21:22:54.717976', 12, 'firefox: importance', 'Undecided', 'Wishlist', NULL);
1458INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (80, 24, '2010-01-20 21:23:26.85161', 12, 'evolution: importance', 'Undecided', 'Low', NULL);
1459INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (81, 24, '2010-01-20 21:23:29.895717', 12, 'firefox: importance', 'Undecided', 'Wishlist', NULL);
1460INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (82, 24, '2010-01-20 21:23:39.33682', 12, 'patches-view-test: importance', 'Undecided', 'High', NULL);
1461INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (83, 24, '2010-01-20 21:23:52.874688', 12, 'patches-view-test: status', 'New', 'Incomplete', NULL);
1462INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (84, 24, '2010-01-20 21:23:57.506344', 12, 'evolution: status', 'New', 'Confirmed', NULL);
1463INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (85, 18, '2010-01-20 21:41:58.449444', 12, 'cdrkit (Ubuntu): status', 'New', 'Confirmed', NULL);
1464INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (86, 18, '2010-01-21 15:38:51.601715', 12, 'bug task added', NULL, 'alsa-utils (Ubuntu)', NULL);
1465INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (87, 18, '2010-01-21 15:40:28.504905', 12, 'bug task added', NULL, 'at (Ubuntu)', NULL);
1466INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (88, 24, '2010-01-22 16:28:29.7187', 16, 'libstdc++ (Ubuntu): importance', 'Undecided', 'Critical', NULL);
1467INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (89, 24, '2010-01-22 17:23:55.406526', 16, 'nominated for series', NULL, 'patches-view-test/trunk', NULL);
1468INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (90, 24, '2010-01-22 17:23:55.406526', 16, 'bug task added', NULL, 'patches-view-test/trunk', NULL);
1469INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (91, 18, '2010-01-26 20:13:16.909946', 16, 'nominated for series', NULL, 'Ubuntu Hoary', NULL);
1470INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (92, 18, '2010-01-26 20:13:16.909946', 16, 'bug task added', NULL, 'alsa-utils (Ubuntu Hoary)', NULL);
1471INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (93, 18, '2010-01-26 20:13:16.909946', 16, 'bug task added', NULL, 'at (Ubuntu Hoary)', NULL);
1472INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (94, 18, '2010-01-26 20:13:16.909946', 16, 'bug task added', NULL, 'cdrkit (Ubuntu Hoary)', NULL);
1473INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (95, 18, '2010-01-27 22:19:05.667291', 16, 'patches-view-test: assignee', NULL, 'Foo Bar (name16)', NULL);
1474INSERT INTO bugactivity (id, bug, datechanged, person, whatchanged, oldvalue, newvalue, message) VALUES (96, 18, '2010-01-27 22:30:14.068436', 16, 'at (Ubuntu Hoary): assignee', NULL, 'Foo Bar (name16)', NULL);
14021475
14031476
1404ALTER TABLE bugactivity ENABLE TRIGGER ALL;1477ALTER TABLE bugactivity ENABLE TRIGGER ALL;
@@ -1406,6 +1479,15 @@
14061479
1407ALTER TABLE bugaffectsperson DISABLE TRIGGER ALL;1480ALTER TABLE bugaffectsperson DISABLE TRIGGER ALL;
14081481
1482INSERT INTO bugaffectsperson (id, bug, person, affected) VALUES (1, 16, 12, true);
1483INSERT INTO bugaffectsperson (id, bug, person, affected) VALUES (2, 17, 12, true);
1484INSERT INTO bugaffectsperson (id, bug, person, affected) VALUES (3, 18, 12, true);
1485INSERT INTO bugaffectsperson (id, bug, person, affected) VALUES (4, 19, 12, true);
1486INSERT INTO bugaffectsperson (id, bug, person, affected) VALUES (5, 20, 12, true);
1487INSERT INTO bugaffectsperson (id, bug, person, affected) VALUES (6, 21, 12, true);
1488INSERT INTO bugaffectsperson (id, bug, person, affected) VALUES (7, 22, 12, true);
1489INSERT INTO bugaffectsperson (id, bug, person, affected) VALUES (8, 23, 12, true);
1490INSERT INTO bugaffectsperson (id, bug, person, affected) VALUES (9, 24, 12, true);
14091491
14101492
1411ALTER TABLE bugaffectsperson ENABLE TRIGGER ALL;1493ALTER TABLE bugaffectsperson ENABLE TRIGGER ALL;
@@ -1413,6 +1495,19 @@
14131495
1414ALTER TABLE bugattachment DISABLE TRIGGER ALL;1496ALTER TABLE bugattachment DISABLE TRIGGER ALL;
14151497
1498INSERT INTO bugattachment (id, message, name, title, libraryfile, bug, type) VALUES (1, 52, NULL, 'bigjools.png', 93, 17, 2);
1499INSERT INTO bugattachment (id, message, name, title, libraryfile, bug, type) VALUES (2, 55, NULL, 'test patch', 94, 18, 1);
1500INSERT INTO bugattachment (id, message, name, title, libraryfile, bug, type) VALUES (3, 58, NULL, 'An image file. Let''s see what mime type it gets.', 95, 19, 1);
1501INSERT INTO bugattachment (id, message, name, title, libraryfile, bug, type) VALUES (4, 64, NULL, 'An image, this time not as a patch.', 96, 21, 2);
1502INSERT INTO bugattachment (id, message, name, title, libraryfile, bug, type) VALUES (5, 67, NULL, 'Some patch.', 97, 22, 1);
1503INSERT INTO bugattachment (id, message, name, title, libraryfile, bug, type) VALUES (6, 82, NULL, 'Patch attachment to Bug H.', 98, 23, 1);
1504INSERT INTO bugattachment (id, message, name, title, libraryfile, bug, type) VALUES (7, 84, NULL, 'Non-patch attachment to Bug H (same as patch attachment, btw).', 99, 23, 2);
1505INSERT INTO bugattachment (id, message, name, title, libraryfile, bug, type) VALUES (8, 87, NULL, 'first patch attachment to Bug I', 100, 24, 1);
1506INSERT INTO bugattachment (id, message, name, title, libraryfile, bug, type) VALUES (9, 89, NULL, 'second patch attachment to bug I', 101, 24, 1);
1507INSERT INTO bugattachment (id, message, name, title, libraryfile, bug, type) VALUES (10, 91, NULL, 'first non-patch attachment to Bug I', 102, 24, 2);
1508INSERT INTO bugattachment (id, message, name, title, libraryfile, bug, type) VALUES (11, 93, NULL, 'second non-patch attachment to Bug I', 103, 24, 2);
1509INSERT INTO bugattachment (id, message, name, title, libraryfile, bug, type) VALUES (12, 95, NULL, 'third patch attachment to Bug I', 104, 24, 1);
1510INSERT INTO bugattachment (id, message, name, title, libraryfile, bug, type) VALUES (13, 97, NULL, 'third non-patch attachment to Bug I', 105, 24, 2);
14161511
14171512
1418ALTER TABLE bugattachment ENABLE TRIGGER ALL;1513ALTER TABLE bugattachment ENABLE TRIGGER ALL;
@@ -1475,6 +1570,28 @@
1475INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (34, 15, 47, 11, '<20050517202044.GA23231@spring.luon.net>', true);1570INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (34, 15, 47, 11, '<20050517202044.GA23231@spring.luon.net>', true);
1476INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (35, 15, 48, 11, '<20050617140011.GA15638@piware.de>', true);1571INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (35, 15, 48, 11, '<20050617140011.GA15638@piware.de>', true);
1477INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (36, 15, 49, 11, '<42BD2E36.9090809@gmx.de>', true);1572INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (36, 15, 49, 11, '<42BD2E36.9090809@gmx.de>', true);
1573INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (37, 16, 50, NULL, NULL, true);
1574INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (38, 17, 51, NULL, NULL, true);
1575INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (39, 17, 52, NULL, NULL, true);
1576INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (40, 18, 54, NULL, NULL, true);
1577INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (41, 18, 55, NULL, NULL, true);
1578INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (42, 19, 57, NULL, NULL, true);
1579INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (43, 19, 58, NULL, NULL, true);
1580INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (44, 20, 62, NULL, NULL, true);
1581INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (45, 21, 63, NULL, NULL, true);
1582INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (46, 21, 64, NULL, NULL, true);
1583INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (47, 22, 66, NULL, NULL, true);
1584INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (48, 22, 67, NULL, NULL, true);
1585INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (49, 23, 81, NULL, NULL, true);
1586INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (50, 23, 82, NULL, NULL, true);
1587INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (51, 23, 84, NULL, NULL, true);
1588INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (52, 24, 86, NULL, NULL, true);
1589INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (53, 24, 87, NULL, NULL, true);
1590INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (54, 24, 89, NULL, NULL, true);
1591INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (55, 24, 91, NULL, NULL, true);
1592INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (56, 24, 93, NULL, NULL, true);
1593INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (57, 24, 95, NULL, NULL, true);
1594INSERT INTO bugmessage (id, bug, message, bugwatch, remote_comment_id, visible) VALUES (58, 24, 97, NULL, NULL, true);
14781595
14791596
1480ALTER TABLE bugmessage ENABLE TRIGGER ALL;1597ALTER TABLE bugmessage ENABLE TRIGGER ALL;
@@ -1486,6 +1603,8 @@
1486INSERT INTO bugnomination (id, bug, distroseries, productseries, status, date_created, date_decided, owner, decider) VALUES (2, 1, 3, NULL, 10, '2006-08-21 22:21:14.60328', NULL, 52, NULL);1603INSERT INTO bugnomination (id, bug, distroseries, productseries, status, date_created, date_decided, owner, decider) VALUES (2, 1, 3, NULL, 10, '2006-08-21 22:21:14.60328', NULL, 52, NULL);
1487INSERT INTO bugnomination (id, bug, distroseries, productseries, status, date_created, date_decided, owner, decider) VALUES (3, 2, 3, NULL, 20, '2006-08-21 22:23:08.163936', '2006-08-21 22:23:08.332055', 1, 1);1604INSERT INTO bugnomination (id, bug, distroseries, productseries, status, date_created, date_decided, owner, decider) VALUES (3, 2, 3, NULL, 20, '2006-08-21 22:23:08.163936', '2006-08-21 22:23:08.332055', 1, 1);
1488INSERT INTO bugnomination (id, bug, distroseries, productseries, status, date_created, date_decided, owner, decider) VALUES (4, 5, NULL, 2, 20, '2007-01-04 15:00:50.431687', '2007-01-04 15:00:50.552021', 16, 16);1605INSERT INTO bugnomination (id, bug, distroseries, productseries, status, date_created, date_decided, owner, decider) VALUES (4, 5, NULL, 2, 20, '2007-01-04 15:00:50.431687', '2007-01-04 15:00:50.552021', 16, 16);
1606INSERT INTO bugnomination (id, bug, distroseries, productseries, status, date_created, date_decided, owner, decider) VALUES (5, 24, NULL, 32, 20, '2010-01-22 17:23:55.406526', '2010-01-22 17:23:55.588315', 16, 16);
1607INSERT INTO bugnomination (id, bug, distroseries, productseries, status, date_created, date_decided, owner, decider) VALUES (6, 18, 3, NULL, 20, '2010-01-26 20:13:16.909946', '2010-01-26 20:13:17.17565', 16, 16);
14891608
14901609
1491ALTER TABLE bugnomination ENABLE TRIGGER ALL;1610ALTER TABLE bugnomination ENABLE TRIGGER ALL;
@@ -1493,6 +1612,77 @@
14931612
1494ALTER TABLE bugnotification DISABLE TRIGGER ALL;1613ALTER TABLE bugnotification DISABLE TRIGGER ALL;
14951614
1615INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (1, 16, 50, true, NULL);
1616INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (2, 17, 51, true, NULL);
1617INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (3, 17, 52, true, NULL);
1618INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (4, 17, 53, false, NULL);
1619INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (5, 18, 54, true, NULL);
1620INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (6, 18, 55, true, NULL);
1621INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (7, 18, 56, false, NULL);
1622INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (8, 19, 57, true, NULL);
1623INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (9, 19, 58, true, NULL);
1624INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (10, 19, 59, false, NULL);
1625INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (11, 19, 60, false, NULL);
1626INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (12, 19, 61, false, NULL);
1627INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (13, 20, 62, true, NULL);
1628INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (14, 21, 63, true, NULL);
1629INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (15, 21, 64, true, NULL);
1630INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (16, 21, 65, false, NULL);
1631INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (17, 22, 66, true, NULL);
1632INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (18, 22, 67, true, NULL);
1633INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (19, 22, 68, false, NULL);
1634INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (20, 19, 69, false, NULL);
1635INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (21, 16, 70, false, NULL);
1636INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (22, 16, 71, false, NULL);
1637INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (23, 17, 72, false, NULL);
1638INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (24, 18, 73, false, NULL);
1639INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (25, 17, 74, false, NULL);
1640INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (26, 20, 75, false, NULL);
1641INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (27, 20, 76, false, NULL);
1642INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (28, 19, 77, false, NULL);
1643INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (29, 21, 78, false, NULL);
1644INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (30, 21, 79, false, NULL);
1645INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (31, 22, 80, false, NULL);
1646INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (32, 23, 81, true, NULL);
1647INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (33, 23, 82, true, NULL);
1648INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (34, 23, 83, false, NULL);
1649INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (35, 23, 84, true, NULL);
1650INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (36, 23, 85, false, NULL);
1651INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (37, 24, 86, true, NULL);
1652INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (38, 24, 87, true, NULL);
1653INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (39, 24, 88, false, NULL);
1654INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (40, 24, 89, true, NULL);
1655INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (41, 24, 90, false, NULL);
1656INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (42, 24, 91, true, NULL);
1657INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (43, 24, 92, false, NULL);
1658INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (44, 24, 93, true, NULL);
1659INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (45, 24, 94, false, NULL);
1660INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (46, 24, 95, true, NULL);
1661INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (47, 24, 96, false, NULL);
1662INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (48, 24, 97, true, NULL);
1663INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (49, 24, 98, false, NULL);
1664INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (50, 18, 99, false, NULL);
1665INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (51, 18, 100, false, NULL);
1666INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (52, 24, 101, false, NULL);
1667INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (53, 24, 102, false, NULL);
1668INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (54, 24, 103, false, NULL);
1669INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (55, 24, 104, false, NULL);
1670INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (56, 18, 105, false, NULL);
1671INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (57, 24, 106, false, NULL);
1672INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (58, 24, 107, false, NULL);
1673INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (59, 24, 108, false, NULL);
1674INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (60, 24, 109, false, NULL);
1675INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (61, 24, 110, false, NULL);
1676INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (62, 18, 111, false, NULL);
1677INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (63, 18, 112, false, NULL);
1678INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (64, 18, 113, false, NULL);
1679INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (65, 24, 114, false, NULL);
1680INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (66, 24, 115, false, NULL);
1681INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (67, 18, 116, false, NULL);
1682INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (68, 18, 117, false, NULL);
1683INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (69, 18, 118, false, NULL);
1684INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (70, 18, 119, false, NULL);
1685INSERT INTO bugnotification (id, bug, message, is_comment, date_emailed) VALUES (71, 18, 120, false, NULL);
14961686
14971687
1498ALTER TABLE bugnotification ENABLE TRIGGER ALL;1688ALTER TABLE bugnotification ENABLE TRIGGER ALL;
@@ -1514,6 +1704,110 @@
15141704
1515ALTER TABLE bugnotificationrecipient DISABLE TRIGGER ALL;1705ALTER TABLE bugnotificationrecipient DISABLE TRIGGER ALL;
15161706
1707INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (1, 1, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1708INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (2, 2, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1709INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (3, 3, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1710INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (4, 4, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1711INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (5, 5, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1712INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (6, 6, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1713INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (7, 7, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1714INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (8, 8, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1715INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (9, 9, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1716INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (10, 10, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1717INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (11, 11, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1718INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (12, 12, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1719INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (13, 13, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1720INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (14, 14, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1721INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (15, 15, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1722INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (16, 16, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1723INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (17, 17, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1724INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (18, 18, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1725INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (19, 19, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1726INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (20, 20, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1727INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (21, 21, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1728INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (22, 22, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1729INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (23, 23, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1730INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (24, 24, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1731INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (25, 25, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1732INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (26, 26, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1733INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (27, 27, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1734INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (28, 28, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1735INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (29, 29, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1736INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (30, 30, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1737INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (31, 31, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1738INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (32, 32, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1739INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (33, 33, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1740INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (34, 34, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1741INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (35, 35, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1742INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (36, 36, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1743INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (37, 37, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1744INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (38, 38, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1745INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (39, 39, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1746INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (40, 40, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1747INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (41, 41, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1748INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (42, 42, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1749INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (43, 43, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1750INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (44, 44, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1751INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (45, 45, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1752INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (46, 46, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1753INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (47, 47, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1754INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (48, 48, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1755INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (49, 49, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1756INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (50, 50, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1757INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (51, 51, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1758INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (52, 51, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
1759INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (53, 52, 1, 'Registrant (Gentoo)', 'You received this bug notification because you are the registrant for Gentoo.');
1760INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (54, 52, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1761INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (55, 53, 1, 'Registrant (Gentoo)', 'You received this bug notification because you are the registrant for Gentoo.');
1762INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (56, 53, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1763INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (57, 53, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
1764INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (58, 54, 1, 'Registrant (Gentoo)', 'You received this bug notification because you are the registrant for Gentoo.');
1765INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (59, 54, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1766INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (60, 54, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
1767INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (61, 55, 1, 'Registrant (Gentoo)', 'You received this bug notification because you are the registrant for Gentoo.');
1768INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (62, 55, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1769INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (63, 55, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
1770INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (64, 56, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1771INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (65, 56, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
1772INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (66, 57, 1, 'Registrant (Gentoo)', 'You received this bug notification because you are the registrant for Gentoo.');
1773INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (67, 57, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1774INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (68, 57, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
1775INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (69, 58, 1, 'Registrant (Gentoo)', 'You received this bug notification because you are the registrant for Gentoo.');
1776INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (70, 58, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1777INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (71, 58, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
1778INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (72, 59, 1, 'Registrant (Gentoo)', 'You received this bug notification because you are the registrant for Gentoo.');
1779INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (73, 59, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1780INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (74, 59, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
1781INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (75, 60, 1, 'Registrant (Gentoo)', 'You received this bug notification because you are the registrant for Gentoo.');
1782INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (76, 60, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1783INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (77, 60, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
1784INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (78, 61, 1, 'Registrant (Gentoo)', 'You received this bug notification because you are the registrant for Gentoo.');
1785INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (79, 61, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1786INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (80, 61, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
1787INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (81, 62, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1788INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (82, 62, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
1789INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (83, 63, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1790INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (84, 63, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
1791INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (85, 64, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1792INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (86, 64, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
1793INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (87, 65, 1, 'Registrant (Gentoo)', 'You received this bug notification because you are the registrant for Gentoo.');
1794INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (88, 65, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1795INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (89, 65, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
1796INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (90, 66, 1, 'Registrant (Gentoo)', 'You received this bug notification because you are the registrant for Gentoo.');
1797INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (91, 66, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1798INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (92, 66, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
1799INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (93, 67, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1800INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (94, 67, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
1801INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (95, 68, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1802INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (96, 68, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
1803INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (97, 69, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1804INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (98, 69, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
1805INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (99, 70, 16, 'Assignee', 'You received this bug notification because you are a bug assignee.');
1806INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (100, 70, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1807INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (101, 70, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
1808INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (102, 71, 16, 'Assignee', 'You received this bug notification because you are a bug assignee.');
1809INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (103, 71, 12, 'Subscriber', 'You received this bug notification because you are a direct subscriber of the bug.');
1810INSERT INTO bugnotificationrecipient (id, bug_notification, person, reason_header, reason_body) VALUES (104, 71, 17, 'Registrant (Ubuntu) @ubuntu-team', 'You received this bug notification because you are a member of Ubuntu Team, which is the registrant for Ubuntu.');
15171811
15181812
1519ALTER TABLE bugnotificationrecipient ENABLE TRIGGER ALL;1813ALTER TABLE bugnotificationrecipient ENABLE TRIGGER ALL;
@@ -1557,6 +1851,15 @@
1557INSERT INTO bugsubscription (id, person, bug, date_created, subscribed_by) VALUES (15, 63, 14, '2007-08-09 11:39:16.836856', 65);1851INSERT INTO bugsubscription (id, person, bug, date_created, subscribed_by) VALUES (15, 63, 14, '2007-08-09 11:39:16.836856', 65);
1558INSERT INTO bugsubscription (id, person, bug, date_created, subscribed_by) VALUES (16, 14, 14, '2007-08-09 11:39:16.836856', 65);1852INSERT INTO bugsubscription (id, person, bug, date_created, subscribed_by) VALUES (16, 14, 14, '2007-08-09 11:39:16.836856', 65);
1559INSERT INTO bugsubscription (id, person, bug, date_created, subscribed_by) VALUES (17, 16, 15, '2007-12-18 16:30:19.103679', 65);1853INSERT INTO bugsubscription (id, person, bug, date_created, subscribed_by) VALUES (17, 16, 15, '2007-12-18 16:30:19.103679', 65);
1854INSERT INTO bugsubscription (id, person, bug, date_created, subscribed_by) VALUES (18, 12, 16, '2010-01-12 20:45:21.127561', 12);
1855INSERT INTO bugsubscription (id, person, bug, date_created, subscribed_by) VALUES (19, 12, 17, '2010-01-12 22:22:46.153194', 12);
1856INSERT INTO bugsubscription (id, person, bug, date_created, subscribed_by) VALUES (20, 12, 18, '2010-01-13 14:16:19.911349', 12);
1857INSERT INTO bugsubscription (id, person, bug, date_created, subscribed_by) VALUES (21, 12, 19, '2010-01-13 14:18:01.028701', 12);
1858INSERT INTO bugsubscription (id, person, bug, date_created, subscribed_by) VALUES (22, 12, 20, '2010-01-13 14:19:01.243841', 12);
1859INSERT INTO bugsubscription (id, person, bug, date_created, subscribed_by) VALUES (23, 12, 21, '2010-01-13 14:20:12.307283', 12);
1860INSERT INTO bugsubscription (id, person, bug, date_created, subscribed_by) VALUES (24, 12, 22, '2010-01-13 14:22:45.617948', 12);
1861INSERT INTO bugsubscription (id, person, bug, date_created, subscribed_by) VALUES (25, 12, 23, '2010-01-13 18:23:45.763802', 12);
1862INSERT INTO bugsubscription (id, person, bug, date_created, subscribed_by) VALUES (26, 12, 24, '2010-01-13 18:29:46.39858', 12);
15601863
15611864
1562ALTER TABLE bugsubscription ENABLE TRIGGER ALL;1865ALTER TABLE bugsubscription ENABLE TRIGGER ALL;
@@ -1607,6 +1910,27 @@
1607INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (33, 14, 20, NULL, NULL, NULL, NULL, 10, NULL, 5, NULL, NULL, '2007-08-09 11:39:16.836856', 63, NULL, NULL, NULL, NULL, 'Jokosher', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);1910INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (33, 14, 20, NULL, NULL, NULL, NULL, 10, NULL, 5, NULL, NULL, '2007-08-09 11:39:16.836856', 63, NULL, NULL, NULL, NULL, 'Jokosher', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);
1608INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (34, 15, 22, NULL, NULL, NULL, NULL, 10, NULL, 5, NULL, NULL, '2007-12-18 16:30:19.103679', 16, NULL, NULL, NULL, NULL, 'Redfish', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);1911INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (34, 15, 22, NULL, NULL, NULL, NULL, 10, NULL, 5, NULL, NULL, '2007-12-18 16:30:19.103679', 16, NULL, NULL, NULL, NULL, 'Redfish', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);
1609INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (35, 15, 8, NULL, NULL, NULL, NULL, 10, NULL, 999, NULL, NULL, '2007-12-18 16:30:47.889614', 16, NULL, 11, NULL, NULL, 'Mozilla Thunderbird', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);1912INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (35, 15, 8, NULL, NULL, NULL, NULL, 10, NULL, 999, NULL, NULL, '2007-12-18 16:30:47.889614', 16, NULL, 11, NULL, NULL, 'Mozilla Thunderbird', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);
1913INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (36, 16, 30, NULL, NULL, NULL, NULL, 10, NULL, 5, NULL, NULL, '2010-01-12 20:45:21.127561', 12, NULL, NULL, NULL, NULL, 'Patches View Test', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);
1914INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (37, 17, 30, NULL, NULL, NULL, NULL, 10, NULL, 5, NULL, NULL, '2010-01-12 22:22:46.153194', 12, NULL, NULL, NULL, NULL, 'Patches View Test', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);
1915INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (38, 18, 30, NULL, NULL, NULL, NULL, 10, NULL, 5, 16, '2010-01-27 22:19:06.095198', '2010-01-13 14:16:19.911349', 12, NULL, NULL, NULL, NULL, 'Patches View Test', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);
1916INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (39, 19, 30, NULL, NULL, NULL, NULL, 10, NULL, 5, NULL, NULL, '2010-01-13 14:18:01.028701', 12, NULL, NULL, NULL, NULL, 'Patches View Test', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);
1917INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (40, 20, 30, NULL, NULL, NULL, NULL, 10, NULL, 5, NULL, NULL, '2010-01-13 14:19:01.243841', 12, NULL, NULL, NULL, NULL, 'Patches View Test', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);
1918INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (41, 21, 30, NULL, NULL, NULL, NULL, 10, NULL, 5, NULL, NULL, '2010-01-13 14:20:12.307283', 12, NULL, NULL, NULL, NULL, 'Patches View Test', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);
1919INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (42, 22, 30, NULL, NULL, NULL, NULL, 10, NULL, 5, NULL, NULL, '2010-01-13 14:22:45.617948', 12, NULL, NULL, NULL, NULL, 'Patches View Test', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);
1920INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (43, 23, 30, NULL, NULL, NULL, NULL, 10, NULL, 5, NULL, NULL, '2010-01-13 18:23:45.763802', 12, NULL, NULL, NULL, NULL, 'Patches View Test', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);
1921INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (44, 24, 30, NULL, NULL, NULL, NULL, 15, NULL, 40, NULL, NULL, '2010-01-13 18:29:46.39858', 12, NULL, NULL, NULL, NULL, 'Patches View Test', NULL, NULL, NULL, NULL, '2010-01-20 21:23:53.052331', '2010-01-20 21:23:53.052331', NULL, NULL, NULL, NULL, 0, NULL);
1922INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (45, 18, 4, NULL, NULL, NULL, NULL, 10, NULL, 10, NULL, NULL, '2010-01-20 21:17:00.883889', 12, NULL, NULL, NULL, NULL, 'Mozilla Firefox', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);
1923INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (46, 18, NULL, 1, NULL, 24, NULL, 20, NULL, 5, NULL, NULL, '2010-01-20 21:18:49.833838', 12, NULL, NULL, NULL, NULL, 'cdrkit (Ubuntu)', '2010-01-20 21:41:58.645349', NULL, NULL, NULL, NULL, '2010-01-20 21:41:58.645349', NULL, NULL, NULL, NULL, 0, NULL);
1924INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (47, 24, NULL, 4, NULL, NULL, NULL, 10, NULL, 5, NULL, NULL, '2010-01-20 21:20:10.669476', 12, NULL, NULL, NULL, NULL, 'Gentoo', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);
1925INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (48, 24, NULL, 1, NULL, 21, NULL, 10, NULL, 50, NULL, NULL, '2010-01-20 21:20:35.930261', 12, NULL, NULL, NULL, NULL, 'libstdc++ (Ubuntu)', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);
1926INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (49, 24, 4, NULL, NULL, NULL, NULL, 10, NULL, 10, NULL, NULL, '2010-01-20 21:21:09.866741', 12, NULL, NULL, NULL, NULL, 'Mozilla Firefox', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);
1927INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (50, 24, 5, NULL, NULL, NULL, NULL, 20, NULL, 20, NULL, NULL, '2010-01-20 21:21:33.597745', 12, NULL, NULL, NULL, NULL, 'Evolution', '2010-01-20 21:23:57.702694', NULL, NULL, NULL, NULL, '2010-01-20 21:23:57.702694', NULL, NULL, NULL, NULL, 0, NULL);
1928INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (51, 18, NULL, 1, NULL, 19, NULL, 10, NULL, 5, NULL, NULL, '2010-01-21 15:38:51.601715', 12, NULL, NULL, NULL, NULL, 'alsa-utils (Ubuntu)', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);
1929INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (52, 18, NULL, 1, NULL, 17, NULL, 10, NULL, 5, 16, '2010-01-27 22:30:14.233883', '2010-01-21 15:40:28.504905', 12, NULL, NULL, NULL, NULL, 'at (Ubuntu)', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);
1930INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (53, 24, NULL, NULL, NULL, NULL, NULL, 15, NULL, 40, NULL, NULL, '2010-01-22 17:23:55.406526', 16, NULL, NULL, NULL, NULL, 'Patches View Test trunk', NULL, NULL, NULL, 32, '2010-01-20 21:23:53.052331', '2010-01-20 21:23:53.052331', NULL, NULL, NULL, NULL, 0, NULL);
1931INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (54, 18, NULL, NULL, 3, 19, NULL, 10, NULL, 5, NULL, NULL, '2010-01-26 20:13:16.909946', 16, NULL, NULL, NULL, NULL, 'alsa-utils (Ubuntu Hoary)', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);
1932INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (55, 18, NULL, NULL, 3, 17, NULL, 10, NULL, 5, 16, '2010-01-27 22:30:14.233883', '2010-01-26 20:13:16.909946', 16, NULL, NULL, NULL, NULL, 'at (Ubuntu Hoary)', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, NULL);
1933INSERT INTO bugtask (id, bug, product, distribution, distroseries, sourcepackagename, binarypackagename, status, priority, importance, assignee, date_assigned, datecreated, owner, milestone, bugwatch, statusexplanation, fti, targetnamecache, date_confirmed, date_inprogress, date_closed, productseries, date_incomplete, date_left_new, date_triaged, date_fix_committed, date_fix_released, date_left_closed, heat_rank, date_milestone_set) VALUES (56, 18, NULL, NULL, 3, 24, NULL, 20, NULL, 5, NULL, NULL, '2010-01-26 20:13:16.909946', 16, NULL, NULL, NULL, NULL, 'cdrkit (Ubuntu Hoary)', '2010-01-20 21:41:58.645349', NULL, NULL, NULL, NULL, '2010-01-20 21:41:58.645349', NULL, NULL, NULL, NULL, 0, NULL);
16101934
16111935
1612ALTER TABLE bugtask ENABLE TRIGGER ALL;1936ALTER TABLE bugtask ENABLE TRIGGER ALL;
@@ -1715,8 +2039,8 @@
17152039
1716ALTER TABLE buildqueue DISABLE TRIGGER ALL;2040ALTER TABLE buildqueue DISABLE TRIGGER ALL;
17172041
1718INSERT INTO buildqueue (id, builder, logtail, lastscore, manual, job, job_type, estimated_duration, processor, virtualized) VALUES (1, 1, 'Dummy sampledata entry, not processing', 1, false, 1, 1, '00:00:00', 1, FALSE);2042INSERT INTO buildqueue (id, builder, logtail, lastscore, manual, job, job_type, estimated_duration) VALUES (1, 1, 'Dummy sampledata entry, not processing', 1, false, 1, 1, '00:00:00');
1719INSERT INTO buildqueue (id, builder, logtail, lastscore, manual, job, job_type, estimated_duration, processor, virtualized) VALUES (2, NULL, NULL, 10, false, 2, 1, '00:01:00', 1, FALSE);2043INSERT INTO buildqueue (id, builder, logtail, lastscore, manual, job, job_type, estimated_duration) VALUES (2, NULL, NULL, 10, false, 2, 1, '00:01:00');
17202044
17212045
1722ALTER TABLE buildqueue ENABLE TRIGGER ALL;2046ALTER TABLE buildqueue ENABLE TRIGGER ALL;
@@ -2870,6 +3194,57 @@
2870INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (61, '2000-03-13 20:46:49.83307', 16, 2, 20, NULL, NULL);3194INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (61, '2000-03-13 20:46:49.83307', 16, 2, 20, NULL, NULL);
2871INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (62, '2001-07-03 21:30:51.583356', 12, 47, NULL, 1, NULL);3195INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (62, '2001-07-03 21:30:51.583356', 12, 47, NULL, 1, NULL);
2872INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (63, '2001-08-09 11:39:16.836856', 63, 1, 20, NULL, NULL);3196INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (63, '2001-08-09 11:39:16.836856', 63, 1, 20, NULL, NULL);
3197INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (64, '2010-01-12 20:45:21.127561', 12, 1, 30, NULL, NULL);
3198INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (65, '2010-01-12 22:22:46.153194', 12, 1, 30, NULL, NULL);
3199INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (66, '2010-01-12 22:28:27.800017', 12, 2, 30, NULL, NULL);
3200INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (67, '2010-01-13 14:16:19.911349', 12, 1, 30, NULL, NULL);
3201INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (68, '2010-01-13 14:16:19.911349', 12, 2, 30, NULL, NULL);
3202INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (69, '2010-01-13 14:18:01.028701', 12, 1, 30, NULL, NULL);
3203INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (70, '2010-01-13 14:18:01.028701', 12, 2, 30, NULL, NULL);
3204INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (71, '2010-01-13 14:18:27.630313', 12, 3, 30, NULL, NULL);
3205INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (72, '2010-01-13 14:18:34.066926', 12, 5, 30, NULL, NULL);
3206INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (73, '2010-01-13 14:19:01.243841', 12, 1, 30, NULL, NULL);
3207INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (74, '2010-01-13 14:20:12.307283', 12, 1, 30, NULL, NULL);
3208INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (75, '2010-01-13 14:20:12.307283', 12, 2, 30, NULL, NULL);
3209INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (76, '2010-01-13 14:22:45.617948', 12, 1, 30, NULL, NULL);
3210INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (77, '2010-01-13 14:22:45.617948', 12, 2, 30, NULL, NULL);
3211INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (78, '2010-01-13 14:26:47.46993', 12, 3, 30, NULL, NULL);
3212INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (79, '2010-01-13 17:21:46.537052', 12, 3, 30, NULL, NULL);
3213INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (80, '2010-01-13 17:22:11.382144', 12, 3, 30, NULL, NULL);
3214INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (81, '2010-01-13 17:22:24.925081', 12, 3, 30, NULL, NULL);
3215INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (82, '2010-01-13 17:22:37.743448', 12, 3, 30, NULL, NULL);
3216INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (83, '2010-01-13 17:22:44.88561', 12, 3, 30, NULL, NULL);
3217INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (84, '2010-01-13 17:23:32.153195', 12, 3, 30, NULL, NULL);
3218INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (85, '2010-01-13 17:23:49.760696', 12, 3, 30, NULL, NULL);
3219INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (86, '2010-01-13 17:27:10.325536', 12, 3, 30, NULL, NULL);
3220INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (87, '2010-01-13 17:27:28.108308', 12, 3, 30, NULL, NULL);
3221INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (88, '2010-01-13 17:27:33.53256', 12, 3, 30, NULL, NULL);
3222INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (89, '2010-01-13 17:27:52.536624', 12, 3, 30, NULL, NULL);
3223INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (90, '2010-01-13 18:23:45.763802', 12, 1, 30, NULL, NULL);
3224INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (91, '2010-01-13 18:26:37.318632', 12, 2, 30, NULL, NULL);
3225INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (92, '2010-01-13 18:27:05.201874', 12, 2, 30, NULL, NULL);
3226INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (93, '2010-01-13 18:29:46.39858', 12, 1, 30, NULL, NULL);
3227INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (94, '2010-01-13 18:29:46.39858', 12, 2, 30, NULL, NULL);
3228INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (95, '2010-01-13 18:30:30.467005', 12, 2, 30, NULL, NULL);
3229INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (96, '2010-01-13 18:31:54.707866', 12, 2, 30, NULL, NULL);
3230INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (97, '2010-01-13 18:32:47.18092', 12, 2, 30, NULL, NULL);
3231INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (98, '2010-01-13 18:33:38.232304', 12, 2, 30, NULL, NULL);
3232INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (99, '2010-01-13 18:34:21.130592', 12, 2, 30, NULL, NULL);
3233INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (100, '2010-01-20 21:17:00.883889', 12, 9, 4, NULL, NULL);
3234INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (101, '2010-01-20 21:18:49.833838', 12, 9, NULL, 1, 24);
3235INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (102, '2010-01-20 21:20:10.669476', 12, 9, NULL, 4, NULL);
3236INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (103, '2010-01-20 21:20:35.930261', 12, 9, NULL, 1, 21);
3237INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (104, '2010-01-20 21:21:09.866741', 12, 9, 4, NULL, NULL);
3238INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (105, '2010-01-20 21:21:33.597745', 12, 9, 5, NULL, NULL);
3239INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (106, '2010-01-20 21:22:54.717976', 12, 18, 4, NULL, NULL);
3240INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (107, '2010-01-20 21:23:26.85161', 12, 18, 5, NULL, NULL);
3241INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (108, '2010-01-20 21:23:29.895717', 12, 18, 4, NULL, NULL);
3242INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (109, '2010-01-20 21:23:39.33682', 12, 18, 30, NULL, NULL);
3243INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (110, '2010-01-20 21:23:57.506344', 12, 17, 5, NULL, NULL);
3244INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (111, '2010-01-20 21:41:58.449444', 12, 17, NULL, 1, 24);
3245INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (112, '2010-01-21 15:38:51.601715', 12, 9, NULL, 1, 19);
3246INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (113, '2010-01-21 15:40:28.504905', 12, 9, NULL, 1, 17);
3247INSERT INTO karma (id, datecreated, person, action, product, distribution, sourcepackagename) VALUES (114, '2010-01-22 16:28:29.7187', 16, 18, NULL, 1, 21);
28733248
28743249
2875ALTER TABLE karma ENABLE TRIGGER ALL;3250ALTER TABLE karma ENABLE TRIGGER ALL;
@@ -3740,6 +4115,19 @@
3740INSERT INTO libraryfilealias (id, content, filename, mimetype, expires, last_accessed, date_created, restricted, hits) VALUES (90, 90, 'pmount_1.0-1_all.deb', 'application/x-debian-package', NULL, '2008-05-08 10:15:32.440132', '2008-05-08 10:10:27.899028', false, 0);4115INSERT INTO libraryfilealias (id, content, filename, mimetype, expires, last_accessed, date_created, restricted, hits) VALUES (90, 90, 'pmount_1.0-1_all.deb', 'application/x-debian-package', NULL, '2008-05-08 10:15:32.440132', '2008-05-08 10:10:27.899028', false, 0);
3741INSERT INTO libraryfilealias (id, content, filename, mimetype, expires, last_accessed, date_created, restricted, hits) VALUES (91, 91, 'upload_22_log.txt', 'application/text', NULL, '2008-07-07 22:30:01.123456', '2008-07-07 22:30:01.123456', false, 0);4116INSERT INTO libraryfilealias (id, content, filename, mimetype, expires, last_accessed, date_created, restricted, hits) VALUES (91, 91, 'upload_22_log.txt', 'application/text', NULL, '2008-07-07 22:30:01.123456', '2008-07-07 22:30:01.123456', false, 0);
3742INSERT INTO libraryfilealias (id, content, filename, mimetype, expires, last_accessed, date_created, restricted, hits) VALUES (92, 92, 'sample-submission-2.xml', 'application/x-bzip2', NULL, '2008-09-30 08:19:00.222131', '2008-09-30 08:19:00.222131', false, 0);4117INSERT INTO libraryfilealias (id, content, filename, mimetype, expires, last_accessed, date_created, restricted, hits) VALUES (92, 92, 'sample-submission-2.xml', 'application/x-bzip2', NULL, '2008-09-30 08:19:00.222131', '2008-09-30 08:19:00.222131', false, 0);
4118INSERT INTO libraryfilealias (id, content, filename, mimetype, expires, last_accessed, date_created, restricted, hits) VALUES (93, 93, 'bigjools.png', 'image/png', NULL, '2010-01-12 22:28:27.800017', '2010-01-12 22:28:27.800017', false, 0);
4119INSERT INTO libraryfilealias (id, content, filename, mimetype, expires, last_accessed, date_created, restricted, hits) VALUES (94, 94, 'test-patch.txt', 'text/plain', NULL, '2010-01-13 14:16:19.911349', '2010-01-13 14:16:19.911349', false, 0);
4120INSERT INTO libraryfilealias (id, content, filename, mimetype, expires, last_accessed, date_created, restricted, hits) VALUES (95, 95, 'nobody.png', 'text/plain', NULL, '2010-01-13 14:18:01.028701', '2010-01-13 14:18:01.028701', false, 0);
4121INSERT INTO libraryfilealias (id, content, filename, mimetype, expires, last_accessed, date_created, restricted, hits) VALUES (96, 96, 'nobody.png', 'image/png', NULL, '2010-01-13 14:20:12.307283', '2010-01-13 14:20:12.307283', false, 0);
4122INSERT INTO libraryfilealias (id, content, filename, mimetype, expires, last_accessed, date_created, restricted, hits) VALUES (97, 97, 'ignore-this.patch', 'text/plain', NULL, '2010-01-13 14:22:45.617948', '2010-01-13 14:22:45.617948', false, 0);
4123INSERT INTO libraryfilealias (id, content, filename, mimetype, expires, last_accessed, date_created, restricted, hits) VALUES (98, 98, 'another-diff.txt', 'text/plain', NULL, '2010-01-13 18:26:37.318632', '2010-01-13 18:26:37.318632', false, 0);
4124INSERT INTO libraryfilealias (id, content, filename, mimetype, expires, last_accessed, date_created, restricted, hits) VALUES (99, 99, 'another-diff.txt', 'text/plain', NULL, '2010-01-13 18:27:05.201874', '2010-01-13 18:27:05.201874', false, 0);
4125INSERT INTO libraryfilealias (id, content, filename, mimetype, expires, last_accessed, date_created, restricted, hits) VALUES (100, 100, 'another-diff.txt', 'text/plain', NULL, '2010-01-13 18:29:46.39858', '2010-01-13 18:29:46.39858', false, 0);
4126INSERT INTO libraryfilealias (id, content, filename, mimetype, expires, last_accessed, date_created, restricted, hits) VALUES (101, 101, 'test-patch.txt', 'text/plain', NULL, '2010-01-13 18:30:30.467005', '2010-01-13 18:30:30.467005', false, 0);
4127INSERT INTO libraryfilealias (id, content, filename, mimetype, expires, last_accessed, date_created, restricted, hits) VALUES (102, 102, 'barcelona-laundry.jpg', 'image/jpeg', NULL, '2010-01-13 18:31:54.707866', '2010-01-13 18:31:54.707866', false, 0);
4128INSERT INTO libraryfilealias (id, content, filename, mimetype, expires, last_accessed, date_created, restricted, hits) VALUES (103, 103, 'esther-helen-exley.jpg', 'image/jpeg', NULL, '2010-01-13 18:32:47.18092', '2010-01-13 18:32:47.18092', false, 0);
4129INSERT INTO libraryfilealias (id, content, filename, mimetype, expires, last_accessed, date_created, restricted, hits) VALUES (104, 104, 'rf-setup-patch.txt', 'text/plain', NULL, '2010-01-13 18:33:38.232304', '2010-01-13 18:33:38.232304', false, 0);
4130INSERT INTO libraryfilealias (id, content, filename, mimetype, expires, last_accessed, date_created, restricted, hits) VALUES (105, 105, 'vonage-cancellation.pdf', 'application/pdf', NULL, '2010-01-13 18:34:21.130592', '2010-01-13 18:34:21.130592', false, 0);
37434131
37444132
3745ALTER TABLE libraryfilealias ENABLE TRIGGER ALL;4133ALTER TABLE libraryfilealias ENABLE TRIGGER ALL;
@@ -3834,6 +4222,19 @@
3834INSERT INTO libraryfilecontent (id, datecreated, filesize, sha1, md5, sha256) VALUES (90, '2008-05-08 10:10:16.866444', 18, '0c805a60b31058a1018680f99447033dcb9d4caa', '8a8a67b8dbc5f203ae8712092c68c7aa', NULL);4222INSERT INTO libraryfilecontent (id, datecreated, filesize, sha1, md5, sha256) VALUES (90, '2008-05-08 10:10:16.866444', 18, '0c805a60b31058a1018680f99447033dcb9d4caa', '8a8a67b8dbc5f203ae8712092c68c7aa', NULL);
3835INSERT INTO libraryfilecontent (id, datecreated, filesize, sha1, md5, sha256) VALUES (91, '2008-07-07 22:30:01.123456', 10, '0c805a60b31058a1018680f99447033dcb9d4c01', '8a8a67b8dbc5f203ae8712092c68c701', NULL);4223INSERT INTO libraryfilecontent (id, datecreated, filesize, sha1, md5, sha256) VALUES (91, '2008-07-07 22:30:01.123456', 10, '0c805a60b31058a1018680f99447033dcb9d4c01', '8a8a67b8dbc5f203ae8712092c68c701', NULL);
3836INSERT INTO libraryfilecontent (id, datecreated, filesize, sha1, md5, sha256) VALUES (92, '2008-09-30 08:19:00.222131', 10, 'f10e2821bbbea527ea02200352313bc059445190', '7815696ecbf1c96e6894b779456d330e', NULL);4224INSERT INTO libraryfilecontent (id, datecreated, filesize, sha1, md5, sha256) VALUES (92, '2008-09-30 08:19:00.222131', 10, 'f10e2821bbbea527ea02200352313bc059445190', '7815696ecbf1c96e6894b779456d330e', NULL);
4225INSERT INTO libraryfilecontent (id, datecreated, filesize, sha1, md5, sha256) VALUES (93, '2010-01-12 22:28:27.800017', 6302, '7592bc722c8954347c11a8f95a54460fe7c92c4a', '19eaeb35afa81e6a537ab083c54df4db', NULL);
4226INSERT INTO libraryfilecontent (id, datecreated, filesize, sha1, md5, sha256) VALUES (94, '2010-01-13 14:16:19.911349', 1391, 'b0f2a8f2dd78f25d852f4398592011d2f102ccf8', '02de56a37dd2678ef3afc14819f07c9f', NULL);
4227INSERT INTO libraryfilecontent (id, datecreated, filesize, sha1, md5, sha256) VALUES (95, '2010-01-13 14:18:01.028701', 2280, '2a100b56cdbb251c95db843ad5142a01a40d9be5', '3da18ccb0800458bbbd7f186e88c436b', NULL);
4228INSERT INTO libraryfilecontent (id, datecreated, filesize, sha1, md5, sha256) VALUES (96, '2010-01-13 14:20:12.307283', 2280, '2a100b56cdbb251c95db843ad5142a01a40d9be5', '3da18ccb0800458bbbd7f186e88c436b', NULL);
4229INSERT INTO libraryfilecontent (id, datecreated, filesize, sha1, md5, sha256) VALUES (97, '2010-01-13 14:22:45.617948', 1391, 'b0f2a8f2dd78f25d852f4398592011d2f102ccf8', '02de56a37dd2678ef3afc14819f07c9f', NULL);
4230INSERT INTO libraryfilecontent (id, datecreated, filesize, sha1, md5, sha256) VALUES (98, '2010-01-13 18:26:37.318632', 540, '7afc411f4a356cf36db1bdbefc3097751bf15e29', 'a28f11e3141320afe818a304968de315', NULL);
4231INSERT INTO libraryfilecontent (id, datecreated, filesize, sha1, md5, sha256) VALUES (99, '2010-01-13 18:27:05.201874', 540, '7afc411f4a356cf36db1bdbefc3097751bf15e29', 'a28f11e3141320afe818a304968de315', NULL);
4232INSERT INTO libraryfilecontent (id, datecreated, filesize, sha1, md5, sha256) VALUES (100, '2010-01-13 18:29:46.39858', 540, '7afc411f4a356cf36db1bdbefc3097751bf15e29', 'a28f11e3141320afe818a304968de315', NULL);
4233INSERT INTO libraryfilecontent (id, datecreated, filesize, sha1, md5, sha256) VALUES (101, '2010-01-13 18:30:30.467005', 1391, 'b0f2a8f2dd78f25d852f4398592011d2f102ccf8', '02de56a37dd2678ef3afc14819f07c9f', NULL);
4234INSERT INTO libraryfilecontent (id, datecreated, filesize, sha1, md5, sha256) VALUES (102, '2010-01-13 18:31:54.707866', 127994, '32d7d60180115aeeb2ffb09f88bc9b281b65a7e4', '9e5c76cd3a2e30992207d0086547360e', NULL);
4235INSERT INTO libraryfilecontent (id, datecreated, filesize, sha1, md5, sha256) VALUES (103, '2010-01-13 18:32:47.18092', 105515, '2c3ba9c20b9ba3a116385664bacb42c71ac812ee', 'e3a26b8983484e4bceda32e0dd324d85', NULL);
4236INSERT INTO libraryfilecontent (id, datecreated, filesize, sha1, md5, sha256) VALUES (104, '2010-01-13 18:33:38.232304', 4324, 'd3a6cc586cf31427cb6bdec493c27f2cf245de58', 'dc8d96c1ecae8d71099981c14e14edb8', NULL);
4237INSERT INTO libraryfilecontent (id, datecreated, filesize, sha1, md5, sha256) VALUES (105, '2010-01-13 18:34:21.130592', 55594, 'cb69cb3e91a19c0ee831b571ff0e121ba57c35db', 'a031e115a3cfecd18fee97c1c42af7a0', NULL);
38374238
38384239
3839ALTER TABLE libraryfilecontent ENABLE TRIGGER ALL;4240ALTER TABLE libraryfilecontent ENABLE TRIGGER ALL;
@@ -4321,6 +4722,77 @@
4321INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (47, '2005-05-17 20:20:44', 'Re: Bug#308994: gnome-volume-manager: dvd+rw unreadable when automounted in burner because mounted read/write', 243615, 46, NULL, '<20050517202044.GA23231@spring.luon.net>', NULL, 78);4722INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (47, '2005-05-17 20:20:44', 'Re: Bug#308994: gnome-volume-manager: dvd+rw unreadable when automounted in burner because mounted read/write', 243615, 46, NULL, '<20050517202044.GA23231@spring.luon.net>', NULL, 78);
4322INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (48, '2005-06-17 14:00:11', 'Re: Bug#308994: gnome-volume-manager: dvd+rw unreadable when automounted in burner because mounted read/write', 243616, 46, NULL, '<20050617140011.GA15638@piware.de>', NULL, 79);4723INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (48, '2005-06-17 14:00:11', 'Re: Bug#308994: gnome-volume-manager: dvd+rw unreadable when automounted in burner because mounted read/write', 243616, 46, NULL, '<20050617140011.GA15638@piware.de>', NULL, 79);
4323INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (49, '2005-06-25 10:13:10', 'Re: Bug#308994: gnome-volume-manager: dvd+rw unreadable when automounted in burner because mounted read/write', 243614, NULL, NULL, '<42BD2E36.9090809@gmx.de>', NULL, 81);4724INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (49, '2005-06-25 10:13:10', 'Re: Bug#308994: gnome-volume-manager: dvd+rw unreadable when automounted in burner because mounted read/write', 243614, NULL, NULL, '<42BD2E36.9090809@gmx.de>', NULL, 81);
4725INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (50, '2010-01-12 20:45:21.127561', 'The first bug has no patch attachment.', 12, NULL, NULL, '<20100112204521.3617.46129.malonedeb@kfogel-work>', NULL, NULL);
4726INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (51, '2010-01-12 22:22:46.153194', 'The second bug has the first attachment, but it''s not a patch.', 12, NULL, NULL, '<20100112222246.19348.2002.malonedeb@kfogel-work>', NULL, NULL);
4727INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (52, '2010-01-12 22:28:27.800017', 'Re: The second bug has the first attachment, but it''s not a patch.', 12, NULL, NULL, '<20100112222827.19348.56893.malone@kfogel-work>', NULL, NULL);
4728INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (53, '2010-01-12 22:28:27.800017', 'Re: The second bug has the first attachment, but it''s not a patch.', 12, NULL, NULL, '<20100112222828.19348.64771.launchpad@kfogel-work>', NULL, NULL);
4729INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (54, '2010-01-13 14:16:19.911349', 'The third bug has the first patch attachment.', 12, NULL, NULL, '<20100113141619.5358.90135.malonedeb@kfogel-work>', NULL, NULL);
4730INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (55, '2010-01-13 14:16:19.911349', 'Re: The third bug has the first patch attachment.', 12, NULL, NULL, '<20100113141620.5358.60178.malone@kfogel-work>', NULL, NULL);
4731INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (56, '2010-01-13 14:16:19.911349', 'Re: The third bug has the first patch attachment.', 12, NULL, NULL, '<20100113141620.5358.25424.launchpad@kfogel-work>', NULL, NULL);
4732INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (57, '2010-01-13 14:18:01.028701', 'The fourth bug has a non-patch attachment.', 12, NULL, NULL, '<20100113141801.5358.87208.malonedeb@kfogel-work>', NULL, NULL);
4733INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (58, '2010-01-13 14:18:01.028701', 'Re: The fourth bug has a non-patch attachment.', 12, NULL, NULL, '<20100113141801.5358.39419.malone@kfogel-work>', NULL, NULL);
4734INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (59, '2010-01-13 14:18:01.028701', 'Re: The fourth bug has a non-patch attachment.', 12, NULL, NULL, '<20100113141801.5358.92085.launchpad@kfogel-work>', NULL, NULL);
4735INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (60, '2010-01-13 14:18:27.630313', 'Re: The fourth bug has a attachment.', 12, NULL, NULL, '<20100113141827.5358.73694.launchpad@kfogel-work>', NULL, NULL);
4736INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (61, '2010-01-13 14:18:34.066926', 'Re: The fourth bug has a attachment.', 12, NULL, NULL, '<20100113141834.5358.46673.launchpad@kfogel-work>', NULL, NULL);
4737INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (62, '2010-01-13 14:19:01.243841', 'Bug number five has no attachment.', 12, NULL, NULL, '<20100113141901.5358.60302.malonedeb@kfogel-work>', NULL, NULL);
4738INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (63, '2010-01-13 14:20:12.307283', 'Bug six has a non-patch attachment (but same as earlier was called a patch).', 12, NULL, NULL, '<20100113142012.5358.56004.malonedeb@kfogel-work>', NULL, NULL);
4739INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (64, '2010-01-13 14:20:12.307283', 'Re: Bug six has a non-patch attachment (but same as earlier was called a patch).', 12, NULL, NULL, '<20100113142012.5358.61043.malone@kfogel-work>', NULL, NULL);
4740INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (65, '2010-01-13 14:20:12.307283', 'Re: Bug six has a non-patch attachment (but same as earlier was called a patch).', 12, NULL, NULL, '<20100113142012.5358.83534.launchpad@kfogel-work>', NULL, NULL);
4741INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (66, '2010-01-13 14:22:45.617948', 'Bug seven has a patch attachment.', 12, NULL, NULL, '<20100113142245.5358.72439.malonedeb@kfogel-work>', NULL, NULL);
4742INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (67, '2010-01-13 14:22:45.617948', 'Re: Bug seven has a patch attachment.', 12, NULL, NULL, '<20100113142245.5358.51636.malone@kfogel-work>', NULL, NULL);
4743INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (68, '2010-01-13 14:22:45.617948', 'Re: Bug seven has a patch attachment.', 12, NULL, NULL, '<20100113142245.5358.4495.launchpad@kfogel-work>', NULL, NULL);
4744INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (69, '2010-01-13 14:26:47.46993', 'Re: The fourth bug has a patch attachment.', 12, NULL, NULL, '<20100113142647.5358.43442.launchpad@kfogel-work>', NULL, NULL);
4745INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (70, '2010-01-13 17:21:46.537052', 'Re: No attachments at all.', 12, NULL, NULL, '<20100113172146.5358.79987.launchpad@kfogel-work>', NULL, NULL);
4746INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (71, '2010-01-13 17:22:11.382144', 'Re: Bug A: No attachments at all.', 12, NULL, NULL, '<20100113172211.5358.62209.launchpad@kfogel-work>', NULL, NULL);
4747INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (72, '2010-01-13 17:22:24.925081', 'Re: Bug B: non-patch attachment.', 12, NULL, NULL, '<20100113172225.5358.57044.launchpad@kfogel-work>', NULL, NULL);
4748INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (73, '2010-01-13 17:22:37.743448', 'Re: Bug C: one patch attachment.', 12, NULL, NULL, '<20100113172237.5358.37093.launchpad@kfogel-work>', NULL, NULL);
4749INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (74, '2010-01-13 17:22:44.88561', 'Re: Bug B: one non-patch attachment.', 12, NULL, NULL, '<20100113172245.5358.16852.launchpad@kfogel-work>', NULL, NULL);
4750INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (75, '2010-01-13 17:23:32.153195', 'Re: Bug D: no attachments.', 12, NULL, NULL, '<20100113172332.5358.90533.launchpad@kfogel-work>', NULL, NULL);
4751INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (76, '2010-01-13 17:23:49.760696', 'Re: Bug E: no attachments.', 12, NULL, NULL, '<20100113172349.5358.24365.launchpad@kfogel-work>', NULL, NULL);
4752INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (77, '2010-01-13 17:27:10.325536', 'Re: Bug D: one patch attachment (really an image file).', 12, NULL, NULL, '<20100113172710.5358.34990.launchpad@kfogel-work>', NULL, NULL);
4753INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (78, '2010-01-13 17:27:28.108308', 'Re: Bug F: one non-patch attachment (same image thaht Bug D calls a patch).', 12, NULL, NULL, '<20100113172728.5358.33754.launchpad@kfogel-work>', NULL, NULL);
4754INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (79, '2010-01-13 17:27:33.53256', 'Re: Bug F: one non-patch attachment (same image that Bug D calls a patch).', 12, NULL, NULL, '<20100113172733.5358.6028.launchpad@kfogel-work>', NULL, NULL);
4755INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (80, '2010-01-13 17:27:52.536624', 'Re: Bug G: one patch attachment.', 12, NULL, NULL, '<20100113172752.5358.82801.launchpad@kfogel-work>', NULL, NULL);
4756INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (81, '2010-01-13 18:23:45.763802', 'Bug H: two attachments, one patch, one not.', 12, NULL, NULL, '<20100113182345.5358.35767.malonedeb@kfogel-work>', NULL, NULL);
4757INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (82, '2010-01-13 18:26:37.318632', 'Re: Bug H: two attachments, one patch, one not.', 12, NULL, NULL, '<20100113182637.5358.46835.malone@kfogel-work>', NULL, NULL);
4758INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (83, '2010-01-13 18:26:37.318632', 'Re: Bug H: two attachments, one patch, one not.', 12, NULL, NULL, '<20100113182637.5358.41333.launchpad@kfogel-work>', NULL, NULL);
4759INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (84, '2010-01-13 18:27:05.201874', 'Re: Bug H: two attachments, one patch, one not.', 12, NULL, NULL, '<20100113182705.5358.62395.malone@kfogel-work>', NULL, NULL);
4760INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (85, '2010-01-13 18:27:05.201874', 'Re: Bug H: two attachments, one patch, one not.', 12, NULL, NULL, '<20100113182705.5358.76691.launchpad@kfogel-work>', NULL, NULL);
4761INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (86, '2010-01-13 18:29:46.39858', 'Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100113182946.5358.76263.malonedeb@kfogel-work>', NULL, NULL);
4762INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (87, '2010-01-13 18:29:46.39858', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100113182946.5358.5131.malone@kfogel-work>', NULL, NULL);
4763INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (88, '2010-01-13 18:29:46.39858', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100113182946.5358.14868.launchpad@kfogel-work>', NULL, NULL);
4764INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (89, '2010-01-13 18:30:30.467005', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100113183030.5358.85602.malone@kfogel-work>', NULL, NULL);
4765INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (90, '2010-01-13 18:30:30.467005', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100113183030.5358.69918.launchpad@kfogel-work>', NULL, NULL);
4766INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (91, '2010-01-13 18:31:54.707866', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100113183154.5358.10140.malone@kfogel-work>', NULL, NULL);
4767INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (92, '2010-01-13 18:31:54.707866', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100113183154.5358.18175.launchpad@kfogel-work>', NULL, NULL);
4768INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (93, '2010-01-13 18:32:47.18092', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100113183247.5358.10006.malone@kfogel-work>', NULL, NULL);
4769INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (94, '2010-01-13 18:32:47.18092', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100113183247.5358.29330.launchpad@kfogel-work>', NULL, NULL);
4770INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (95, '2010-01-13 18:33:38.232304', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100113183338.5358.26039.malone@kfogel-work>', NULL, NULL);
4771INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (96, '2010-01-13 18:33:38.232304', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100113183338.5358.41992.launchpad@kfogel-work>', NULL, NULL);
4772INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (97, '2010-01-13 18:34:21.130592', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100113183421.5358.32215.malone@kfogel-work>', NULL, NULL);
4773INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (98, '2010-01-13 18:34:21.130592', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100113183421.5358.648.launchpad@kfogel-work>', NULL, NULL);
4774INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (99, '2010-01-20 21:17:00.883889', 'Re: Bug C: one patch attachment.', 12, NULL, NULL, '<20100120211701.17445.29712.launchpad@kfogel-work>', NULL, NULL);
4775INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (100, '2010-01-20 21:18:49.833838', 'Re: Bug C: one patch attachment.', 12, NULL, NULL, '<20100120211850.17445.84724.launchpad@kfogel-work>', NULL, NULL);
4776INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (101, '2010-01-20 21:20:10.669476', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100120212010.17445.30818.launchpad@kfogel-work>', NULL, NULL);
4777INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (102, '2010-01-20 21:20:35.930261', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100120212036.17445.94048.launchpad@kfogel-work>', NULL, NULL);
4778INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (103, '2010-01-20 21:21:09.866741', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100120212110.17445.54332.launchpad@kfogel-work>', NULL, NULL);
4779INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (104, '2010-01-20 21:21:33.597745', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100120212133.17445.35200.launchpad@kfogel-work>', NULL, NULL);
4780INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (105, '2010-01-20 21:22:54.717976', 'Re: Bug C: one patch attachment.', 12, NULL, NULL, '<20100120212254.17445.14068.launchpad@kfogel-work>', NULL, NULL);
4781INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (106, '2010-01-20 21:23:26.85161', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100120212327.17445.79653.launchpad@kfogel-work>', NULL, NULL);
4782INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (107, '2010-01-20 21:23:29.895717', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100120212330.17445.31898.launchpad@kfogel-work>', NULL, NULL);
4783INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (108, '2010-01-20 21:23:39.33682', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100120212339.17445.27845.launchpad@kfogel-work>', NULL, NULL);
4784INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (109, '2010-01-20 21:23:52.874688', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100120212353.17445.58578.launchpad@kfogel-work>', NULL, NULL);
4785INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (110, '2010-01-20 21:23:57.506344', 'Re: Bug I: six attachments (three patches, three non-patches).', 12, NULL, NULL, '<20100120212357.17445.63504.launchpad@kfogel-work>', NULL, NULL);
4786INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (111, '2010-01-20 21:41:58.449444', 'Re: Bug C: one patch attachment.', 12, NULL, NULL, '<20100120214158.18968.79883.launchpad@kfogel-work>', NULL, NULL);
4787INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (112, '2010-01-21 15:38:51.601715', 'Re: Bug C: one patch attachment.', 12, NULL, NULL, '<20100121153852.4166.85021.launchpad@kfogel-work>', NULL, NULL);
4788INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (113, '2010-01-21 15:40:28.504905', 'Re: Bug C: one patch attachment.', 12, NULL, NULL, '<20100121154028.4166.46784.launchpad@kfogel-work>', NULL, NULL);
4789INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (114, '2010-01-22 16:28:29.7187', 'Re: Bug I: six attachments (three patches, three non-patches).', 16, NULL, NULL, '<20100122162830.5301.16916.launchpad@kfogel-work>', NULL, NULL);
4790INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (115, '2010-01-22 17:23:55.406526', 'Re: Bug I: six attachments (three patches, three non-patches).', 16, NULL, NULL, '<20100122172355.5301.60732.launchpad@kfogel-work>', NULL, NULL);
4791INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (116, '2010-01-26 20:13:16.909946', 'Re: Bug C: one patch attachment.', 16, NULL, NULL, '<20100126201317.10252.35278.launchpad@kfogel-work>', NULL, NULL);
4792INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (117, '2010-01-26 20:13:16.909946', 'Re: Bug C: one patch attachment.', 16, NULL, NULL, '<20100126201317.10252.72527.launchpad@kfogel-work>', NULL, NULL);
4793INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (118, '2010-01-26 20:13:16.909946', 'Re: Bug C: one patch attachment.', 16, NULL, NULL, '<20100126201317.10252.57614.launchpad@kfogel-work>', NULL, NULL);
4794INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (119, '2010-01-27 22:19:05.667291', 'Re: Bug C: one patch attachment.', 16, NULL, NULL, '<20100127221906.10252.53976.launchpad@kfogel-work>', NULL, NULL);
4795INSERT INTO message (id, datecreated, subject, owner, parent, distribution, rfc822msgid, fti, raw) VALUES (120, '2010-01-27 22:30:14.068436', 'Re: Bug C: one patch attachment.', 16, NULL, NULL, '<20100127223014.10252.23666.launchpad@kfogel-work>', NULL, NULL);
43244796
43254797
4326ALTER TABLE message ENABLE TRIGGER ALL;4798ALTER TABLE message ENABLE TRIGGER ALL;
@@ -4781,6 +5253,166 @@
47815253
47825254
4783', NULL, NULL);5255', NULL, NULL);
5256INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (51, 50, 1, 'Enough said.', NULL, NULL);
5257INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (52, 51, 1, 'This is the second bug.', NULL, NULL);
5258INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (53, 52, 1, 'Attach a non-patch.', NULL, NULL);
5259INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (54, 53, 1, '** Attachment added: "bigjools.png"
5260 http://launchpad.dev:58080/93/bigjools.png', NULL, NULL);
5261INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (55, 54, 1, 'This is the third bug in the project, and it has the first attachment that is a patch.', NULL, NULL);
5262INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (56, 55, 1, NULL, NULL, NULL);
5263INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (57, 56, 1, '** Attachment added: "test patch"
5264 http://launchpad.dev:58080/94/test-patch.txt', NULL, NULL);
5265INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (58, 57, 1, 'Bug number four, with a non-patch attachment.', NULL, NULL);
5266INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (59, 58, 1, NULL, NULL, NULL);
5267INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (60, 59, 1, '** Attachment added: "An image file. Let''s see what mime type it gets."
5268 http://launchpad.dev:58080/95/nobody.png', NULL, NULL);
5269INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (61, 60, 1, '** Summary changed:
5270
5271- The fourth bug has a non-patch attachment.
5272+ The fourth bug has a attachment.', NULL, NULL);
5273INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (62, 61, 1, '** Description changed:
5274
5275- Bug number four, with a non-patch attachment.
5276+ Bug number four, with patch attachment.', NULL, NULL);
5277INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (63, 62, 1, 'Bug five has no attachment.', NULL, NULL);
5278INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (64, 63, 1, 'Bug six has a non-patch attachment (but it''s the same as an earlier bug called a patch attachment).', NULL, NULL);
5279INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (65, 64, 1, NULL, NULL, NULL);
5280INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (66, 65, 1, '** Attachment added: "An image, this time not as a patch."
5281 http://launchpad.dev:58080/96/nobody.png', NULL, NULL);
5282INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (67, 66, 1, 'Bug seven has a patch attachment.', NULL, NULL);
5283INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (68, 67, 1, NULL, NULL, NULL);
5284INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (69, 68, 1, '** Attachment added: "Some patch."
5285 http://launchpad.dev:58080/97/ignore-this.patch', NULL, NULL);
5286INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (70, 69, 1, '** Summary changed:
5287
5288- The fourth bug has a attachment.
5289+ The fourth bug has a patch attachment.', NULL, NULL);
5290INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (71, 70, 1, '** Summary changed:
5291
5292- The first bug has no patch attachment.
5293+ No attachments at all.', NULL, NULL);
5294INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (72, 71, 1, '** Summary changed:
5295
5296- No attachments at all.
5297+ Bug A: No attachments at all.', NULL, NULL);
5298INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (73, 72, 1, '** Summary changed:
5299
5300- The second bug has the first attachment, but it''s not a patch.
5301+ Bug B: non-patch attachment.', NULL, NULL);
5302INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (74, 73, 1, '** Summary changed:
5303
5304- The third bug has the first patch attachment.
5305+ Bug C: one patch attachment.', NULL, NULL);
5306INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (75, 74, 1, '** Summary changed:
5307
5308- Bug B: non-patch attachment.
5309+ Bug B: one non-patch attachment.', NULL, NULL);
5310INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (76, 75, 1, '** Summary changed:
5311
5312- Bug number five has no attachment.
5313+ Bug D: no attachments.', NULL, NULL);
5314INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (77, 76, 1, '** Summary changed:
5315
5316- Bug D: no attachments.
5317+ Bug E: no attachments.', NULL, NULL);
5318INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (78, 77, 1, '** Summary changed:
5319
5320- The fourth bug has a patch attachment.
5321+ Bug D: one patch attachment (really an image file).', NULL, NULL);
5322INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (79, 78, 1, '** Summary changed:
5323
5324- Bug six has a non-patch attachment (but same as earlier was called a patch).
5325+ Bug F: one non-patch attachment (same image thaht Bug D calls a patch).', NULL, NULL);
5326INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (80, 79, 1, '** Summary changed:
5327
5328- Bug F: one non-patch attachment (same image thaht Bug D calls a patch).
5329+ Bug F: one non-patch attachment (same image that Bug D calls a patch).', NULL, NULL);
5330INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (81, 80, 1, '** Summary changed:
5331
5332- Bug seven has a patch attachment.
5333+ Bug G: one patch attachment.', NULL, NULL);
5334INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (82, 81, 1, 'This is Bug H. It has two attachments. One is a patch, the other is not.', NULL, NULL);
5335INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (83, 82, 1, NULL, NULL, NULL);
5336INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (84, 83, 1, '** Attachment added: "Patch attachment to Bug H."
5337 http://launchpad.dev:58080/98/another-diff.txt', NULL, NULL);
5338INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (85, 84, 1, NULL, NULL, NULL);
5339INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (86, 85, 1, '** Attachment added: "Non-patch attachment to Bug H (same as patch attachment, btw)."
5340 http://launchpad.dev:58080/99/another-diff.txt', NULL, NULL);
5341INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (87, 86, 1, 'This is Bug I. It has six attachments, of which three are patches.', NULL, NULL);
5342INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (88, 87, 1, NULL, NULL, NULL);
5343INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (89, 88, 1, '** Attachment added: "first patch attachment to Bug I"
5344 http://launchpad.dev:58080/100/another-diff.txt', NULL, NULL);
5345INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (90, 89, 1, NULL, NULL, NULL);
5346INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (91, 90, 1, '** Attachment added: "second patch attachment to bug I"
5347 http://launchpad.dev:58080/101/test-patch.txt', NULL, NULL);
5348INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (92, 91, 1, NULL, NULL, NULL);
5349INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (93, 92, 1, '** Attachment added: "first non-patch attachment to Bug I"
5350 http://launchpad.dev:58080/102/barcelona-laundry.jpg', NULL, NULL);
5351INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (94, 93, 1, NULL, NULL, NULL);
5352INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (95, 94, 1, '** Attachment added: "second non-patch attachment to Bug I"
5353 http://launchpad.dev:58080/103/esther-helen-exley.jpg', NULL, NULL);
5354INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (96, 95, 1, NULL, NULL, NULL);
5355INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (97, 96, 1, '** Attachment added: "third patch attachment to Bug I"
5356 http://launchpad.dev:58080/104/rf-setup-patch.txt', NULL, NULL);
5357INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (98, 97, 1, NULL, NULL, NULL);
5358INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (99, 98, 1, '** Attachment added: "third non-patch attachment to Bug I"
5359 http://launchpad.dev:58080/105/vonage-cancellation.pdf', NULL, NULL);
5360INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (100, 99, 1, '** Also affects: firefox
5361 Importance: Undecided
5362 Status: New', NULL, NULL);
5363INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (101, 100, 1, '** Also affects: cdrkit (Ubuntu)
5364 Importance: Undecided
5365 Status: New', NULL, NULL);
5366INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (102, 101, 1, '** Also affects: gentoo
5367 Importance: Undecided
5368 Status: New', NULL, NULL);
5369INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (103, 102, 1, '** Also affects: libstdc++ (Ubuntu)
5370 Importance: Undecided
5371 Status: New', NULL, NULL);
5372INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (104, 103, 1, '** Also affects: firefox
5373 Importance: Undecided
5374 Status: New', NULL, NULL);
5375INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (105, 104, 1, '** Also affects: evolution
5376 Importance: Undecided
5377 Status: New', NULL, NULL);
5378INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (106, 105, 1, '** Changed in: firefox
5379 Importance: Undecided => Wishlist', NULL, NULL);
5380INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (107, 106, 1, '** Changed in: evolution
5381 Importance: Undecided => Low', NULL, NULL);
5382INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (108, 107, 1, '** Changed in: firefox
5383 Importance: Undecided => Wishlist', NULL, NULL);
5384INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (109, 108, 1, '** Changed in: patches-view-test
5385 Importance: Undecided => High', NULL, NULL);
5386INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (110, 109, 1, '** Changed in: patches-view-test
5387 Status: New => Incomplete', NULL, NULL);
5388INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (111, 110, 1, '** Changed in: evolution
5389 Status: New => Confirmed', NULL, NULL);
5390INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (112, 111, 1, '** Changed in: cdrkit (Ubuntu)
5391 Status: New => Confirmed', NULL, NULL);
5392INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (113, 112, 1, '** Also affects: alsa-utils (Ubuntu)
5393 Importance: Undecided
5394 Status: New', NULL, NULL);
5395INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (114, 113, 1, '** Also affects: at (Ubuntu)
5396 Importance: Undecided
5397 Status: New', NULL, NULL);
5398INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (115, 114, 1, '** Changed in: libstdc++ (Ubuntu)
5399 Importance: Undecided => Critical', NULL, NULL);
5400INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (116, 115, 1, '** Also affects: patches-view-test/trunk
5401 Importance: High
5402 Status: Incomplete', NULL, NULL);
5403INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (117, 116, 1, '** Also affects: alsa-utils (Ubuntu Hoary)
5404 Importance: Undecided
5405 Status: New', NULL, NULL);
5406INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (118, 117, 1, '** Also affects: at (Ubuntu Hoary)
5407 Importance: Undecided
5408 Status: New', NULL, NULL);
5409INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (119, 118, 1, '** Also affects: cdrkit (Ubuntu Hoary)
5410 Importance: Undecided
5411 Status: Confirmed', NULL, NULL);
5412INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (120, 119, 1, '** Changed in: patches-view-test
5413 Assignee: (unassigned) => Foo Bar (name16)', NULL, NULL);
5414INSERT INTO messagechunk (id, message, sequence, content, blob, fti) VALUES (121, 120, 1, '** Changed in: at (Ubuntu Hoary)
5415 Assignee: (unassigned) => Foo Bar (name16)', NULL, NULL);
47845416
47855417
4786ALTER TABLE messagechunk ENABLE TRIGGER ALL;5418ALTER TABLE messagechunk ENABLE TRIGGER ALL;
@@ -5318,6 +5950,8 @@
5318INSERT INTO pillarname (id, name, product, project, distribution, active, alias_for) VALUES (45, 'epiphany', 27, NULL, NULL, true, NULL);5950INSERT INTO pillarname (id, name, product, project, distribution, active, alias_for) VALUES (45, 'epiphany', 27, NULL, NULL, true, NULL);
5319INSERT INTO pillarname (id, name, product, project, distribution, active, alias_for) VALUES (46, 'intltool', 28, NULL, NULL, true, NULL);5951INSERT INTO pillarname (id, name, product, project, distribution, active, alias_for) VALUES (46, 'intltool', 28, NULL, NULL, true, NULL);
5320INSERT INTO pillarname (id, name, product, project, distribution, active, alias_for) VALUES (47, 'lies', 29, NULL, NULL, true, NULL);5952INSERT INTO pillarname (id, name, product, project, distribution, active, alias_for) VALUES (47, 'lies', 29, NULL, NULL, true, NULL);
5953INSERT INTO pillarname (id, name, product, project, distribution, active, alias_for) VALUES (48, 'patches-view-test', 30, NULL, NULL, true, NULL);
5954INSERT INTO pillarname (id, name, product, project, distribution, active, alias_for) VALUES (49, 'patches-view-group', NULL, 9, NULL, true, NULL);
53215955
53225956
5323ALTER TABLE pillarname ENABLE TRIGGER ALL;5957ALTER TABLE pillarname ENABLE TRIGGER ALL;
@@ -8132,6 +8766,7 @@
8132INSERT INTO product (id, project, owner, name, displayname, title, summary, description, datecreated, homepageurl, screenshotsurl, wikiurl, listurl, programminglang, downloadurl, lastdoap, sourceforgeproject, freshmeatproject, reviewed, active, fti, autoupdate, translationgroup, translationpermission, official_rosetta, official_malone, bug_supervisor, security_contact, driver, bugtracker, development_focus, homepage_content, icon, mugshot, logo, official_answers, private_bugs, private_specs, license_info, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, official_codehosting, license_approved, registrant, remote_product, translation_focus) VALUES (27, NULL, 243648, 'epiphany', 'Epiphany', 'Epiphany Web Browser', 'A default GNOME web browser.', 'description1', '2009-08-24 14:36:04.699204', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, 3, 20, true, false, NULL, NULL, NULL, NULL, 29, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 243648, NULL, NULL);8766INSERT INTO product (id, project, owner, name, displayname, title, summary, description, datecreated, homepageurl, screenshotsurl, wikiurl, listurl, programminglang, downloadurl, lastdoap, sourceforgeproject, freshmeatproject, reviewed, active, fti, autoupdate, translationgroup, translationpermission, official_rosetta, official_malone, bug_supervisor, security_contact, driver, bugtracker, development_focus, homepage_content, icon, mugshot, logo, official_answers, private_bugs, private_specs, license_info, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, official_codehosting, license_approved, registrant, remote_product, translation_focus) VALUES (27, NULL, 243648, 'epiphany', 'Epiphany', 'Epiphany Web Browser', 'A default GNOME web browser.', 'description1', '2009-08-24 14:36:04.699204', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, 3, 20, true, false, NULL, NULL, NULL, NULL, 29, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 243648, NULL, NULL);
8133INSERT INTO product (id, project, owner, name, displayname, title, summary, description, datecreated, homepageurl, screenshotsurl, wikiurl, listurl, programminglang, downloadurl, lastdoap, sourceforgeproject, freshmeatproject, reviewed, active, fti, autoupdate, translationgroup, translationpermission, official_rosetta, official_malone, bug_supervisor, security_contact, driver, bugtracker, development_focus, homepage_content, icon, mugshot, logo, official_answers, private_bugs, private_specs, license_info, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, official_codehosting, license_approved, registrant, remote_product, translation_focus) VALUES (28, NULL, 243649, 'intltool', 'intltool', 'Internationalization build tools', 'Tools to extract translatable messages from different file formats and to merge them back in.', 'description2', '2009-08-24 14:39:04.708167', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, 2, 1, true, false, NULL, NULL, NULL, NULL, 30, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 243649, NULL, NULL);8767INSERT INTO product (id, project, owner, name, displayname, title, summary, description, datecreated, homepageurl, screenshotsurl, wikiurl, listurl, programminglang, downloadurl, lastdoap, sourceforgeproject, freshmeatproject, reviewed, active, fti, autoupdate, translationgroup, translationpermission, official_rosetta, official_malone, bug_supervisor, security_contact, driver, bugtracker, development_focus, homepage_content, icon, mugshot, logo, official_answers, private_bugs, private_specs, license_info, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, official_codehosting, license_approved, registrant, remote_product, translation_focus) VALUES (28, NULL, 243649, 'intltool', 'intltool', 'Internationalization build tools', 'Tools to extract translatable messages from different file formats and to merge them back in.', 'description2', '2009-08-24 14:39:04.708167', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, 2, 1, true, false, NULL, NULL, NULL, NULL, 30, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 243649, NULL, NULL);
8134INSERT INTO product (id, project, owner, name, displayname, title, summary, description, datecreated, homepageurl, screenshotsurl, wikiurl, listurl, programminglang, downloadurl, lastdoap, sourceforgeproject, freshmeatproject, reviewed, active, fti, autoupdate, translationgroup, translationpermission, official_rosetta, official_malone, bug_supervisor, security_contact, driver, bugtracker, development_focus, homepage_content, icon, mugshot, logo, official_answers, private_bugs, private_specs, license_info, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, official_codehosting, license_approved, registrant, remote_product, translation_focus) VALUES (29, NULL, 243650, 'lies', 'Lies', 'Quick production of lies', 'Software to easily and quickly manufacture as many lies as possible. It takes truth as the input', 'description3', '2009-08-24 14:41:04.427117', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, 2, 100, true, false, NULL, NULL, NULL, NULL, 31, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 243650, NULL, NULL);8768INSERT INTO product (id, project, owner, name, displayname, title, summary, description, datecreated, homepageurl, screenshotsurl, wikiurl, listurl, programminglang, downloadurl, lastdoap, sourceforgeproject, freshmeatproject, reviewed, active, fti, autoupdate, translationgroup, translationpermission, official_rosetta, official_malone, bug_supervisor, security_contact, driver, bugtracker, development_focus, homepage_content, icon, mugshot, logo, official_answers, private_bugs, private_specs, license_info, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, official_codehosting, license_approved, registrant, remote_product, translation_focus) VALUES (29, NULL, 243650, 'lies', 'Lies', 'Quick production of lies', 'Software to easily and quickly manufacture as many lies as possible. It takes truth as the input', 'description3', '2009-08-24 14:41:04.427117', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, 2, 100, true, false, NULL, NULL, NULL, NULL, 31, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 243650, NULL, NULL);
8769INSERT INTO product (id, project, owner, name, displayname, title, summary, description, datecreated, homepageurl, screenshotsurl, wikiurl, listurl, programminglang, downloadurl, lastdoap, sourceforgeproject, freshmeatproject, reviewed, active, fti, autoupdate, translationgroup, translationpermission, official_rosetta, official_malone, bug_supervisor, security_contact, driver, bugtracker, development_focus, homepage_content, icon, mugshot, logo, official_answers, private_bugs, private_specs, license_info, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, official_codehosting, license_approved, registrant, remote_product, translation_focus) VALUES (30, 9, 12, 'patches-view-test', 'Patches View Test', 'Test project for +patches view.', 'Summary of Patches View Test.', 'Description of Patches View Test.', '2010-01-12 20:23:51.720963', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, true, NULL, NULL, NULL, NULL, 32, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, true, false, 12, NULL, NULL);
81358770
81368771
8137ALTER TABLE product ENABLE TRIGGER ALL;8772ALTER TABLE product ENABLE TRIGGER ALL;
@@ -8164,6 +8799,7 @@
8164INSERT INTO productlicense (id, product, license) VALUES (7, 28, 130);8799INSERT INTO productlicense (id, product, license) VALUES (7, 28, 130);
8165INSERT INTO productlicense (id, product, license) VALUES (8, 29, 130);8800INSERT INTO productlicense (id, product, license) VALUES (8, 29, 130);
8166INSERT INTO productlicense (id, product, license) VALUES (9, 15, 150);8801INSERT INTO productlicense (id, product, license) VALUES (9, 15, 150);
8802INSERT INTO productlicense (id, product, license) VALUES (10, 30, 220);
81678803
81688804
8169ALTER TABLE productlicense ENABLE TRIGGER ALL;8805ALTER TABLE productlicense ENABLE TRIGGER ALL;
@@ -8401,6 +9037,7 @@
8401INSERT INTO productseries (id, product, name, summary, releasefileglob, releaseverstyle, datecreated, driver, owner, status, translations_autoimport_mode, branch, translations_branch) VALUES (29, 27, 'trunk', 'The "trunk" series represents the primary line of development rather than a stable release branch. This is sometimes also called MAIN or HEAD.', NULL, NULL, '2009-08-24 14:36:04.699204', NULL, 243648, 2, 1, NULL, NULL);9037INSERT INTO productseries (id, product, name, summary, releasefileglob, releaseverstyle, datecreated, driver, owner, status, translations_autoimport_mode, branch, translations_branch) VALUES (29, 27, 'trunk', 'The "trunk" series represents the primary line of development rather than a stable release branch. This is sometimes also called MAIN or HEAD.', NULL, NULL, '2009-08-24 14:36:04.699204', NULL, 243648, 2, 1, NULL, NULL);
8402INSERT INTO productseries (id, product, name, summary, releasefileglob, releaseverstyle, datecreated, driver, owner, status, translations_autoimport_mode, branch, translations_branch) VALUES (30, 28, 'trunk', 'The "trunk" series represents the primary line of development rather than a stable release branch. This is sometimes also called MAIN or HEAD.', NULL, NULL, '2009-08-24 14:39:04.708167', NULL, 243649, 2, 1, NULL, NULL);9038INSERT INTO productseries (id, product, name, summary, releasefileglob, releaseverstyle, datecreated, driver, owner, status, translations_autoimport_mode, branch, translations_branch) VALUES (30, 28, 'trunk', 'The "trunk" series represents the primary line of development rather than a stable release branch. This is sometimes also called MAIN or HEAD.', NULL, NULL, '2009-08-24 14:39:04.708167', NULL, 243649, 2, 1, NULL, NULL);
8403INSERT INTO productseries (id, product, name, summary, releasefileglob, releaseverstyle, datecreated, driver, owner, status, translations_autoimport_mode, branch, translations_branch) VALUES (31, 29, 'trunk', 'The "trunk" series represents the primary line of development rather than a stable release branch. This is sometimes also called MAIN or HEAD.', NULL, NULL, '2009-08-24 14:41:04.427117', NULL, 243650, 2, 1, NULL, NULL);9039INSERT INTO productseries (id, product, name, summary, releasefileglob, releaseverstyle, datecreated, driver, owner, status, translations_autoimport_mode, branch, translations_branch) VALUES (31, 29, 'trunk', 'The "trunk" series represents the primary line of development rather than a stable release branch. This is sometimes also called MAIN or HEAD.', NULL, NULL, '2009-08-24 14:41:04.427117', NULL, 243650, 2, 1, NULL, NULL);
9040INSERT INTO productseries (id, product, name, summary, releasefileglob, releaseverstyle, datecreated, driver, owner, status, translations_autoimport_mode, branch, translations_branch) VALUES (32, 30, 'trunk', 'The "trunk" series represents the primary line of development rather than a stable release branch. This is sometimes also called MAIN or HEAD.', NULL, NULL, '2010-01-12 20:23:51.720963', NULL, 12, 2, 1, NULL, NULL);
84049041
84059042
8406ALTER TABLE productseries ENABLE TRIGGER ALL;9043ALTER TABLE productseries ENABLE TRIGGER ALL;
@@ -8440,6 +9077,7 @@
8440INSERT INTO project (id, owner, name, displayname, title, summary, description, datecreated, homepageurl, wikiurl, lastdoap, sourceforgeproject, freshmeatproject, reviewed, active, fti, translationgroup, translationpermission, driver, bugtracker, homepage_content, icon, mugshot, logo, bug_reporting_guidelines, reviewer_whiteboard, registrant) VALUES (8, 16, 'gimp', 'the GiMP Project', 'The GIMP Project', 'The GIMP Project works in the field of image manipulation and reproduction. The Project is responsible for several pieces of software, such as The GiMP and GiMP-Print.', 'Founded by Spencer Kimball in 1996 with the simple aim of producing a "paint" program, the GIMP project has become one of the defining projects of the open source world. The GIMP itself is an image manipulation program that is beginning to rival even Adobe Photoshop in features and functionality.9077INSERT INTO project (id, owner, name, displayname, title, summary, description, datecreated, homepageurl, wikiurl, lastdoap, sourceforgeproject, freshmeatproject, reviewed, active, fti, translationgroup, translationpermission, driver, bugtracker, homepage_content, icon, mugshot, logo, bug_reporting_guidelines, reviewer_whiteboard, registrant) VALUES (8, 16, 'gimp', 'the GiMP Project', 'The GIMP Project', 'The GIMP Project works in the field of image manipulation and reproduction. The Project is responsible for several pieces of software, such as The GiMP and GiMP-Print.', 'Founded by Spencer Kimball in 1996 with the simple aim of producing a "paint" program, the GIMP project has become one of the defining projects of the open source world. The GIMP itself is an image manipulation program that is beginning to rival even Adobe Photoshop in features and functionality.
84419078
8442The project is loosely organised, with about 15 people making regular contributions. There is no fixed release schedule other than "when it is done".', '2004-10-03 22:27:45.283741', 'http://www.gimp.org/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 16);9079The project is loosely organised, with about 15 people making regular contributions. There is no fixed release schedule other than "when it is done".', '2004-10-03 22:27:45.283741', 'http://www.gimp.org/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 16);
9080INSERT INTO project (id, owner, name, displayname, title, summary, description, datecreated, homepageurl, wikiurl, lastdoap, sourceforgeproject, freshmeatproject, reviewed, active, fti, translationgroup, translationpermission, driver, bugtracker, homepage_content, icon, mugshot, logo, bug_reporting_guidelines, reviewer_whiteboard, registrant) VALUES (9, 16, 'patches-view-group', 'Patches View Project Group', 'FULL NAME OF PATCHES VIEW PROJECT GROUP', 'summary', 'description', '2010-01-22 17:18:55.961276', NULL, NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 16);
84439081
84449082
8445ALTER TABLE project ENABLE TRIGGER ALL;9083ALTER TABLE project ENABLE TRIGGER ALL;
84469084
=== modified file 'lib/canonical/launchpad/icing/style.css'
--- lib/canonical/launchpad/icing/style.css 2010-01-21 22:07:42 +0000
+++ lib/canonical/launchpad/icing/style.css 2010-02-02 01:39:18 +0000
@@ -1463,7 +1463,7 @@
14631463
1464div.popupTitle {1464div.popupTitle {
1465 background: #ffffdc;1465 background: #ffffdc;
1466 padding: 0 1em;1466 padding: 0.5em 1em;
1467 border: 1px black solid;1467 border: 1px black solid;
1468 position: absolute;1468 position: absolute;
1469 display: none;1469 display: none;
14701470
=== modified file 'lib/lp/bugs/browser/bugtarget.py'
--- lib/lp/bugs/browser/bugtarget.py 2010-01-29 19:00:47 +0000
+++ lib/lp/bugs/browser/bugtarget.py 2010-02-02 01:39:18 +0000
@@ -1,4 +1,4 @@
1# Copyright 2009 Canonical Ltd. This software is licensed under the1# Copyright 2010 Canonical Ltd. This software is licensed under the
2# GNU Affero General Public License version 3 (see the file LICENSE).2# GNU Affero General Public License version 3 (see the file LICENSE).
33
4"""IBugTarget-related browser views."""4"""IBugTarget-related browser views."""
@@ -7,6 +7,7 @@
77
8__all__ = [8__all__ = [
9 "BugsVHostBreadcrumb",9 "BugsVHostBreadcrumb",
10 "BugsPatchesView",
10 "BugTargetBugListingView",11 "BugTargetBugListingView",
11 "BugTargetBugTagsView",12 "BugTargetBugTagsView",
12 "BugTargetBugsView",13 "BugTargetBugsView",
@@ -19,8 +20,10 @@
1920
20import cgi21import cgi
21from cStringIO import StringIO22from cStringIO import StringIO
23from datetime import datetime
22from email import message_from_string24from email import message_from_string
23from operator import itemgetter25from operator import itemgetter
26from pytz import timezone
24from simplejson import dumps27from simplejson import dumps
25import tempfile28import tempfile
26import urllib29import urllib
@@ -40,6 +43,7 @@
40from canonical.config import config43from canonical.config import config
41from lp.bugs.browser.bugtask import BugTaskSearchListingView44from lp.bugs.browser.bugtask import BugTaskSearchListingView
42from lp.bugs.interfaces.bug import IBug45from lp.bugs.interfaces.bug import IBug
46from lp.bugs.interfaces.bugattachment import BugAttachmentType
43from canonical.launchpad.browser.feeds import (47from canonical.launchpad.browser.feeds import (
44 BugFeedLink, BugTargetLatestBugsFeedLink, FeedsMixin,48 BugFeedLink, BugTargetLatestBugsFeedLink, FeedsMixin,
45 PersonLatestBugsFeedLink)49 PersonLatestBugsFeedLink)
@@ -48,7 +52,8 @@
48 IBugTarget, IOfficialBugTagTargetPublic, IOfficialBugTagTargetRestricted)52 IBugTarget, IOfficialBugTagTargetPublic, IOfficialBugTagTargetRestricted)
49from lp.bugs.interfaces.bug import IBugSet53from lp.bugs.interfaces.bug import IBugSet
50from lp.bugs.interfaces.bugtask import (54from lp.bugs.interfaces.bugtask import (
51 BugTaskStatus, IBugTaskSet, UNRESOLVED_BUGTASK_STATUSES)55 BugTaskStatus, IBugTaskSet, UNRESOLVED_BUGTASK_STATUSES,
56 UNRESOLVED_PLUS_FIXRELEASED_BUGTASK_STATUSES)
52from canonical.launchpad.interfaces.launchpad import (57from canonical.launchpad.interfaces.launchpad import (
53 IHasExternalBugTracker, ILaunchpadUsage)58 IHasExternalBugTracker, ILaunchpadUsage)
54from canonical.launchpad.interfaces.hwdb import IHWSubmissionSet59from canonical.launchpad.interfaces.hwdb import IHWSubmissionSet
@@ -73,6 +78,7 @@
73 LaunchpadEditFormView, LaunchpadFormView, LaunchpadView, action,78 LaunchpadEditFormView, LaunchpadFormView, LaunchpadView, action,
74 canonical_url, custom_widget, safe_action)79 canonical_url, custom_widget, safe_action)
75from canonical.launchpad.webapp.authorization import check_permission80from canonical.launchpad.webapp.authorization import check_permission
81from canonical.launchpad.webapp.batching import BatchNavigator
76from canonical.launchpad.webapp.tales import BugTrackerFormatterAPI82from canonical.launchpad.webapp.tales import BugTrackerFormatterAPI
77from canonical.launchpad.validators.name import valid_name_pattern83from canonical.launchpad.validators.name import valid_name_pattern
78from canonical.launchpad.webapp.menu import structured84from canonical.launchpad.webapp.menu import structured
@@ -1384,3 +1390,59 @@
1384class BugsVHostBreadcrumb(Breadcrumb):1390class BugsVHostBreadcrumb(Breadcrumb):
1385 rootsite = 'bugs'1391 rootsite = 'bugs'
1386 text = 'Bugs'1392 text = 'Bugs'
1393
1394
1395class BugsPatchesView(LaunchpadView):
1396 """View list of patch attachments associated with bugs."""
1397
1398 @property
1399 def label(self):
1400 """The display label for the view."""
1401 return 'Patch attachments in %s' % self.context.displayname
1402
1403 def batchedPatchTasks(self):
1404 """Return a BatchNavigator for bug tasks with patch attachments."""
1405 # XXX: Karl Fogel 2010-02-01 bug=515584: we should be using a
1406 # Zope form instead of validating the values by hand in the
1407 # code. Doing it the Zope form way would specify rendering
1408 # and validation from the same enum, and thus observe DRY.
1409 orderby = self.request.get("orderby")
1410 if (orderby is not None and
1411 orderby not in ["-importance", "status", "targetname",
1412 "datecreated", "-datecreated"]):
1413 raise AssertionError("patch task batch navigator ordered by "
1414 "invalid value '%s'" % orderby)
1415 return BatchNavigator(
1416 self.context.searchTasks(
1417 None, user=self.user, order_by=orderby,
1418 status=UNRESOLVED_PLUS_FIXRELEASED_BUGTASK_STATUSES,
1419 omit_duplicates=True, has_patch=True),
1420 self.request)
1421
1422 def shouldShowTargetName(self):
1423 """Return True if current context can have different bugtargets."""
1424 return (IDistribution.providedBy(self.context) or
1425 IDistroSeries.providedBy(self.context) or
1426 IProject.providedBy(self.context))
1427
1428 def youngestPatch(self, bug):
1429 """Return the youngest patch attached to a bug, else error."""
1430 youngest = None
1431 # Loop over bugtasks, gathering youngest patch for each's bug.
1432 for attachment in bug.attachments:
1433 if attachment.is_patch:
1434 if youngest is None:
1435 youngest = attachment
1436 elif (attachment.message.datecreated >
1437 youngest.message.datecreated):
1438 youngest = attachment
1439 if youngest is None:
1440 # This is the patches view, so every bug under
1441 # consideration should have at least one patch attachment.
1442 raise AssertionError("bug %i has no patch attachments" % bug.id)
1443 return youngest
1444
1445 def patchAge(self, patch):
1446 """Return a timedelta object for the age of a patch attachment."""
1447 now = datetime.now(timezone('UTC'))
1448 return now - patch.message.datecreated
13871449
=== modified file 'lib/lp/bugs/browser/configure.zcml'
--- lib/lp/bugs/browser/configure.zcml 2010-01-18 21:44:59 +0000
+++ lib/lp/bugs/browser/configure.zcml 2010-02-02 01:39:18 +0000
@@ -1,4 +1,4 @@
1<!-- Copyright 2009 Canonical Ltd. This software is licensed under the1<!-- Copyright 2010 Canonical Ltd. This software is licensed under the
2 GNU Affero General Public License version 3 (see the file LICENSE).2 GNU Affero General Public License version 3 (see the file LICENSE).
3-->3-->
44
@@ -108,6 +108,13 @@
108 facet="bugs"108 facet="bugs"
109 permission="launchpad.Edit"109 permission="launchpad.Edit"
110 template="../templates/official-bug-target-manage-tags.pt"/>110 template="../templates/official-bug-target-manage-tags.pt"/>
111 <browser:page
112 name="+patches"
113 for="lp.bugs.interfaces.bugtarget.IHasBugs"
114 class="lp.bugs.browser.bugtarget.BugsPatchesView"
115 facet="bugs"
116 permission="zope.Public"
117 template="../templates/bugtarget-patches.pt"/>
111 </facet>118 </facet>
112 <browser:page119 <browser:page
113 name="+bugtarget-macros-search"120 name="+bugtarget-macros-search"
114121
=== modified file 'lib/lp/bugs/interfaces/bugtarget.py'
--- lib/lp/bugs/interfaces/bugtarget.py 2009-08-18 11:12:06 +0000
+++ lib/lp/bugs/interfaces/bugtarget.py 2010-02-02 01:39:18 +0000
@@ -1,4 +1,4 @@
1# Copyright 2009 Canonical Ltd. This software is licensed under the1# Copyright 2010 Canonical Ltd. This software is licensed under the
2# GNU Affero General Public License version 3 (see the file LICENSE).2# GNU Affero General Public License version 3 (see the file LICENSE).
33
4# pylint: disable-msg=E0211,E02134# pylint: disable-msg=E0211,E0213
55
=== modified file 'lib/lp/bugs/interfaces/bugtask.py'
--- lib/lp/bugs/interfaces/bugtask.py 2010-01-23 21:42:36 +0000
+++ lib/lp/bugs/interfaces/bugtask.py 2010-02-02 01:39:18 +0000
@@ -36,6 +36,7 @@
36 'IUpstreamProductBugTaskSearch',36 'IUpstreamProductBugTaskSearch',
37 'RESOLVED_BUGTASK_STATUSES',37 'RESOLVED_BUGTASK_STATUSES',
38 'UNRESOLVED_BUGTASK_STATUSES',38 'UNRESOLVED_BUGTASK_STATUSES',
39 'UNRESOLVED_PLUS_FIXRELEASED_BUGTASK_STATUSES',
39 'UserCannotEditBugTaskImportance',40 'UserCannotEditBugTaskImportance',
40 'UserCannotEditBugTaskMilestone',41 'UserCannotEditBugTaskMilestone',
41 'UserCannotEditBugTaskStatus',42 'UserCannotEditBugTaskStatus',
@@ -287,6 +288,9 @@
287 BugTaskStatus.INPROGRESS,288 BugTaskStatus.INPROGRESS,
288 BugTaskStatus.FIXCOMMITTED)289 BugTaskStatus.FIXCOMMITTED)
289290
291UNRESOLVED_PLUS_FIXRELEASED_BUGTASK_STATUSES = (
292 UNRESOLVED_BUGTASK_STATUSES + (BugTaskStatus.FIXRELEASED,))
293
290RESOLVED_BUGTASK_STATUSES = (294RESOLVED_BUGTASK_STATUSES = (
291 BugTaskStatus.FIXRELEASED,295 BugTaskStatus.FIXRELEASED,
292 BugTaskStatus.INVALID,296 BugTaskStatus.INVALID,
293297
=== modified file 'lib/lp/bugs/model/bugtarget.py'
--- lib/lp/bugs/model/bugtarget.py 2010-01-21 16:47:24 +0000
+++ lib/lp/bugs/model/bugtarget.py 2010-02-02 01:39:18 +0000
@@ -1,4 +1,4 @@
1# Copyright 2009 Canonical Ltd. This software is licensed under the1# Copyright 2010 Canonical Ltd. This software is licensed under the
2# GNU Affero General Public License version 3 (see the file LICENSE).2# GNU Affero General Public License version 3 (see the file LICENSE).
33
4# pylint: disable-msg=E0611,W02124# pylint: disable-msg=E0611,W0212
55
=== added directory 'lib/lp/bugs/stories/patches-view'
=== added file 'lib/lp/bugs/stories/patches-view/patches-view.txt'
--- lib/lp/bugs/stories/patches-view/patches-view.txt 1970-01-01 00:00:00 +0000
+++ lib/lp/bugs/stories/patches-view/patches-view.txt 2010-02-02 01:39:18 +0000
@@ -0,0 +1,325 @@
1Patches View
2============
3
4Patches View by Product
5-----------------------
6
7We have a view listing patches attached to bugs that target a given
8product. At first, the product is new and has no bugs.
9
10 >>> patchy_product = factory.doAsUser(
11 ... 'foo.bar@canonical.com', factory.makeProduct,
12 ... name='patchy-product-1')
13
14We don't see any patches when we open the patches view.
15
16 >>> def show_patches_view(expected_contents):
17 ... for tag in find_tags_by_class(
18 ... expected_contents, 'listing'):
19 ... print extract_text(tag)
20 ... messages = find_tags_by_class(expected_contents, 'informational')
21 ... if len(messages) > 0:
22 ... print extract_text(messages[0])
23
24 >>> user_browser.open(
25 ... 'http://bugs.launchpad.dev/patchy-product-1/+patches')
26 >>> show_patches_view(user_browser.contents)
27 There are no patches associated with Patchy-product-1 at this time.
28
29After the product has a bug, it still doesn't show up in the patches
30view, because that bug has no patch attachments.
31
32 >>> from lp.bugs.interfaces.bugtask import (
33 ... BugTaskImportance, BugTaskStatus)
34 >>> def make_bug(
35 ... title, product, importance=BugTaskImportance.UNDECIDED,
36 ... status=BugTaskStatus.NEW):
37 ... bug = factory.makeBug(title=title, product=product)
38 ... bug.default_bugtask.transitionToImportance(
39 ... importance, product.owner)
40 ... bug.default_bugtask.transitionToStatus(
41 ... status, product.owner)
42 ... return bug
43
44 >>> bug_a = factory.doAsUser(
45 ... 'foo.bar@canonical.com', make_bug,
46 ... title="bug_a title", product=patchy_product)
47 >>> user_browser.open(
48 ... 'http://bugs.launchpad.dev/patchy-product-1/+patches')
49 >>> show_patches_view(user_browser.contents)
50 There are no patches associated with Patchy-product-1 at this time.
51
52
53After we add a non-patch attachment to that bug, the patches view
54still shows no patches.
55
56 >>> factory.doAsUser('foo.bar@canonical.com', factory.makeBugAttachment,
57 ... bug=bug_a, is_patch=False)
58 <BugAttachment at...
59 >>> user_browser.open('http://bugs.launchpad.dev/patchy-product-1/+patches')
60 >>> show_patches_view(user_browser.contents)
61 There are no patches associated with Patchy-product-1 at this time.
62
63After we add a patch attachment that's one day old, we see it in the
64patches view.
65
66 >>> patch_submitter = factory.doAsUser(
67 ... 'foo.bar@canonical.com', factory.makePerson,
68 ... name="patchy-person", displayname="Patchy Person")
69 >>> factory.doAsUser(
70 ... 'foo.bar@canonical.com', factory.makeBugAttachment,
71 ... comment="comment about patch a",
72 ... filename="patch_a.diff", owner=patch_submitter,
73 ... description="description of patch a", bug=bug_a, is_patch=True)
74 <BugAttachment at...
75 >>> user_browser.open(
76 ... 'http://bugs.launchpad.dev/patchy-product-1/+patches')
77 >>> show_patches_view(user_browser.contents)
78 Bug Importance Status Patch Age
79 Bug #16: bug_a title Undecided New ...second...
80 From: Patchy Person
81 Link: patch_a.diff description of patch a
82
83After creating some more bugs, with some non-patch and some patch
84attachments...
85
86 >>> bug_b = factory.doAsUser(
87 ... 'foo.bar@canonical.com', make_bug,
88 ... title="bug_b title", product=patchy_product,
89 ... importance=BugTaskImportance.CRITICAL,
90 ... status=BugTaskStatus.CONFIRMED)
91 >>> bug_c = factory.doAsUser(
92 ... 'foo.bar@canonical.com', make_bug,
93 ... title="bug_c title", product=patchy_product,
94 ... importance=BugTaskImportance.WISHLIST,
95 ... status=BugTaskStatus.FIXCOMMITTED)
96 >>> factory.doAsUser(
97 ... 'foo.bar@canonical.com', factory.makeBugAttachment,
98 ... comment="comment about patch b",
99 ... filename="patch_b.diff", owner=patch_submitter,
100 ... description="description of patch b", bug=bug_b, is_patch=True)
101 <BugAttachment at...
102 >>> factory.doAsUser(
103 ... 'foo.bar@canonical.com', factory.makeBugAttachment,
104 ... comment="comment about patch c",
105 ... filename="patch_c.diff", owner=patch_submitter,
106 ... description="description of patch c", bug=bug_b, is_patch=True)
107 <BugAttachment at...
108 >>> factory.doAsUser(
109 ... 'foo.bar@canonical.com', factory.makeBugAttachment,
110 ... bug=bug_c, is_patch=False)
111 <BugAttachment at...
112 >>> factory.doAsUser(
113 ... 'foo.bar@canonical.com', factory.makeBugAttachment,
114 ... comment="comment about patch d",
115 ... filename="patch_d.diff", owner=patch_submitter,
116 ... description="description of patch d", bug=bug_c, is_patch=True)
117 <BugAttachment at...
118 >>> factory.doAsUser(
119 ... 'foo.bar@canonical.com', factory.makeBugAttachment,
120 ... comment="comment about patch e",
121 ... filename="patch_e.diff", owner=patch_submitter,
122 ... description="description of patch e", bug=bug_c, is_patch=True)
123 <BugAttachment at...
124 >>> factory.doAsUser(
125 ... 'foo.bar@canonical.com', factory.makeBugAttachment,
126 ... comment="comment about patch f",
127 ... filename="patch_f.diff", owner=patch_submitter,
128 ... description="description of patch f", bug=bug_c, is_patch=True)
129 <BugAttachment at...
130
131...the youngest patch on each bug is visible is the patch report.
132
133 >>> user_browser.open('http://bugs.launchpad.dev/patchy-product-1/+patches')
134 >>> show_patches_view(user_browser.contents)
135 Bug Importance Status Patch Age
136 Bug #17: bug_b title Critical Confirmed ...second...
137 From: Patchy Person
138 Link: patch_c.diff description of patch c
139 Bug #18: bug_c title Wishlist Fix Committed ...second...
140 From: Patchy Person
141 Link: patch_f.diff description of patch f
142 Bug #16: bug_a title Undecided New ...second...
143 From: Patchy Person
144 Link: patch_a.diff description of patch a
145
146We can sort patches by importance and status.
147
148 >>> user_browser.getControl(name="orderby").value = ['-importance']
149 >>> user_browser.getControl("sort").click()
150 >>> user_browser.url
151 'http://bugs.launchpad.dev/patchy-product-1/+patches?orderby=-importance'
152 >>> show_patches_view(user_browser.contents)
153 Bug Importance Status Patch Age
154 Bug #17: bug_b title Critical Confirmed ...second...
155 From: Patchy Person
156 Link: patch_c.diff description of patch c
157 Bug #18: bug_c title Wishlist Fix Committed ...second...
158 From: Patchy Person
159 Link: patch_f.diff description of patch f
160 Bug #16: bug_a title Undecided New ...second...
161 From: Patchy Person
162 Link: patch_a.diff description of patch a
163
164 >>> user_browser.getControl(name="orderby").value = ['status']
165 >>> user_browser.getControl("sort").click()
166 >>> user_browser.url
167 'http://bugs.launchpad.dev/patchy-product-1/+patches?orderby=status'
168 >>> show_patches_view(user_browser.contents)
169 Bug Importance Status Patch Age
170 Bug #16: bug_a title Undecided New ...second...
171 From: Patchy Person
172 Link: patch_a.diff description of patch a
173 Bug #17: bug_b title Critical Confirmed ...second...
174 From: Patchy Person
175 Link: patch_c.diff description of patch c
176 Bug #18: bug_c title Wishlist Fix Committed ...second...
177 From: Patchy Person
178 Link: patch_f.diff description of patch f
179
180Bugs in a product series show up in the patches view for that series.
181
182 >>> from zope.component import getUtility
183 >>> from lp.registry.interfaces.distribution import IDistributionSet
184 >>> def make_bugtask(
185 ... # Meta-factory for making bugtasks.
186 ... #
187 ... # In all instances where a distro is needed, defaults to
188 ... # 'ubuntu' distro.
189 ... #
190 ... # :param bug: The bug with which the task is associated.
191 ... # :param target: The target to which to attach this bug.
192 ... # If the target is a string, then it names the target
193 ... # object, and exactly one of following two boolean
194 ... # parameters must be set to indicate the object type.
195 ... # :param target_is_spkg_name: If true, target is a string
196 ... # indicating the name of the source package for the task.
197 ... # :param target_is_distroseries_name: If true, target is a string
198 ... # indicating the name of the distroseries for the task.
199 ... # :param importance: The initial importance of the bugtask;
200 ... # if None, just use the default importance.
201 ... # :param status: The initial status of the bugtask;
202 ... # if None, just use the default status.
203 ... bug, target,
204 ... target_is_spkg_name=False,
205 ... target_is_distroseries_name=False,
206 ... importance=None, status=None):
207 ... ubuntu_distro = getUtility(IDistributionSet).getByName('ubuntu')
208 ... if target_is_spkg_name:
209 ... target = ubuntu_distro.getSourcePackage(target)
210 ... if target_is_distroseries_name:
211 ... target = ubuntu_distro.getSeries(target)
212 ... bugtask = factory.makeBugTask(bug=bug, target=target)
213 ... if importance is not None:
214 ... bugtask.transitionToImportance(importance, ubuntu_distro.owner)
215 ... if status is not None:
216 ... bugtask.transitionToStatus(status, ubuntu_distro.owner)
217 >>> patchy_product_series = patchy_product.getSeries('trunk')
218 >>> factory.doAsUser(
219 ... 'foo.bar@canonical.com', make_bugtask,
220 ... bug=bug_a, target=patchy_product_series)
221 >>> factory.doAsUser(
222 ... 'foo.bar@canonical.com', make_bugtask,
223 ... bug=bug_c, target=patchy_product_series)
224 >>> user_browser.open(
225 ... 'https://launchpad.dev/patchy-product-1/trunk/+patches')
226 >>> show_patches_view(user_browser.contents)
227 Bug Importance Status Patch Age
228 Bug #18: bug_c title Wishlist Fix Committed ...second...
229 From: Patchy Person
230 Link: patch_f.diff
231 description of patch f
232 Bug #16: bug_a title Undecided New ...second...
233 From: Patchy Person
234 Link: patch_a.diff
235 description of patch a
236
237Patches View by Distro
238----------------------
239
240The patches view also works for distributions, and it shows the target
241package when viewed via a distribution.
242
243 >>> factory.doAsUser(
244 ... 'foo.bar@canonical.com', make_bugtask, bug=bug_a,
245 ... target='evolution', target_is_spkg_name=True,
246 ... importance=BugTaskImportance.MEDIUM,
247 ... status=BugTaskStatus.FIXRELEASED)
248 >>> factory.doAsUser(
249 ... 'foo.bar@canonical.com', make_bugtask, bug=bug_c,
250 ... target='a52dec', target_is_spkg_name=True,
251 ... importance=BugTaskImportance.HIGH,
252 ... status=BugTaskStatus.TRIAGED)
253
254 >>> user_browser.open('http://bugs.launchpad.dev/ubuntu/+patches')
255 >>> show_patches_view(user_browser.contents)
256 Bug Importance Status Package Patch Age
257 Bug #18: bug_c title High Triaged a52dec ...second...
258 From: Patchy Person
259 Link: patch_f.diff description of patch f
260 Bug #16: bug_a title Medium Fix Released evolution ...second...
261 From: Patchy Person
262 Link: patch_a.diff description of patch a
263
264Patches View by Distro Series
265-----------------------------
266
267The patches view works for distro series.
268
269 >>> factory.doAsUser(
270 ... 'foo.bar@canonical.com', make_bugtask, bug=bug_a,
271 ... target='hoary', target_is_distroseries_name=True)
272 >>> factory.doAsUser(
273 ... 'foo.bar@canonical.com', make_bugtask, bug=bug_a,
274 ... target='warty', target_is_distroseries_name=True)
275 >>> factory.doAsUser(
276 ... 'foo.bar@canonical.com', make_bugtask, bug=bug_b,
277 ... target='warty', target_is_distroseries_name=True)
278 >>> factory.doAsUser(
279 ... 'foo.bar@canonical.com', make_bugtask, bug=bug_c,
280 ... target='warty', target_is_distroseries_name=True,
281 ... importance=BugTaskImportance.HIGH,
282 ... status=BugTaskStatus.TRIAGED)
283 >>> user_browser.open('https://launchpad.dev/ubuntu/hoary/+patches')
284 >>> show_patches_view(user_browser.contents)
285 Bug Importance Status Package Patch Age
286 Bug #16: bug_a title Undecided New hoary ...second...
287 From: Patchy Person
288 Link: patch_a.diff
289 description of patch a
290 >>> user_browser.open('https://launchpad.dev/ubuntu/warty/+patches')
291 >>> show_patches_view(user_browser.contents)
292 Bug Importance Status Package Patch Age
293 Bug #18: bug_c title High Triaged warty ...second...
294 From: Patchy Person
295 Link: patch_f.diff description of patch f
296 Bug #16: bug_a title Undecided New warty ...second...
297 From: Patchy Person
298 Link: patch_a.diff
299 description of patch a
300 Bug #17: bug_b title Undecided New warty ...second...
301 From: Patchy Person
302 Link: patch_c.diff
303 description of patch c
304
305Patches View by Source Package
306------------------------------
307
308The patches view works for source packages too. The view doesn't show
309target package column in that case, because the package is implied.
310
311 >>> user_browser.open(
312 ... 'http://bugs.launchpad.dev/ubuntu/+source/a52dec/+patches')
313 >>> show_patches_view(user_browser.contents)
314 Bug Importance Status Patch Age
315 Bug #18: bug_c title High Triaged ...second...
316 From: Patchy Person
317 Link: patch_f.diff description of patch f
318 >>> user_browser.open(
319 ... 'http://bugs.launchpad.dev/ubuntu/+source/evolution/+patches')
320 >>> show_patches_view(user_browser.contents)
321 Bug Importance Status Patch Age
322 Bug #16: bug_a title Medium Fix Released ...second...
323 From: Patchy Person
324 Link: patch_a.diff description of patch a
325
0326
=== added file 'lib/lp/bugs/templates/bugtarget-patches.pt'
--- lib/lp/bugs/templates/bugtarget-patches.pt 1970-01-01 00:00:00 +0000
+++ lib/lp/bugs/templates/bugtarget-patches.pt 2010-02-02 01:39:18 +0000
@@ -0,0 +1,136 @@
1<html
2 xmlns="http://www.w3.org/1999/xhtml"
3 xmlns:tal="http://xml.zope.org/namespaces/tal"
4 xmlns:metal="http://xml.zope.org/namespaces/metal"
5 xmlns:i18n="http://xml.zope.org/namespaces/i18n"
6 xml:lang="en"
7 lang="en"
8 dir="ltr"
9 metal:use-macro="view/macro:page/main_only"
10 i18n:domain="malone"
11>
12
13 <body>
14 <div metal:fill-slot="main" class="tab-bugs"
15 tal:define="batchnav view/batchedPatchTasks;
16 batch batchnav/currentBatch">
17 <div tal:condition="python: len(batch) > 0">
18
19 <form class="lesser" id="sort" method="get"
20 tal:attributes="action string:${context/fmt:url}/+patches">
21
22 <script type="text/javascript">
23 <!--
24 YUI().use('base', 'node', 'event', function(Y) {
25 Y.on('domready', function(e) {
26 Y.get('#sort-button').setStyle('display', 'none');
27 Y.get('#orderby').on('change', function(e) {
28 Y.get('#sort').submit();
29 });
30 });
31 });
32 // -->
33 </script>
34
35 Order&nbsp;by:&nbsp;<select
36 name="orderby" id="orderby" size="1"
37 tal:define="orderby request/orderby|string:-importance">
38 <option
39 value="-importance"
40 tal:attributes="selected python:orderby == '-importance'"
41 >importance</option>
42 <option
43 value="status"
44 tal:attributes="selected python:orderby == 'status'"
45 >status</option>
46 <option
47 tal:condition="view/shouldShowTargetName"
48 tal:attributes="selected python:orderby == 'targetname'"
49 value="targetname"
50 >package</option>
51 <option
52 value="datecreated"
53 tal:attributes="selected python:orderby == 'datecreated'"
54 >oldest first</option>
55 <option
56 value="-datecreated"
57 tal:attributes="selected python:orderby == '-datecreated'"
58 >newest first</option>
59 </select>
60 <input type="submit" value="sort" id="sort-button"/>
61 </form>
62
63 <table class="listing"><thead>
64 <tr>
65 <th style="padding-right: 1em;"
66 >Bug</th>
67 <th style="padding-right: 1em;"
68 >Importance</th>
69 <th style="padding-right: 1em;"
70 >Status</th>
71 <th style="padding-right: 1em;"
72 tal:condition="view/shouldShowTargetName"
73 >Package</th>
74 <th style="padding-right: 1em;"
75 >Patch Age</th>
76 </tr>
77 </thead>
78 <tr tal:repeat="patch_task batch">
79 <td style="padding-right: 1em;"
80 ><a tal:replace="structure patch_task/fmt:link" /></td>
81 <td style="padding-right: 1em;"
82 tal:content="patch_task/importance/title"
83 tal:attributes="class string:importance${patch_task/importance/name}"></td>
84 <td style="padding-right: 1em;"
85 tal:content="patch_task/status/title"
86 tal:attributes="class string:status${patch_task/status/name}"></td>
87 <td style="padding-right: 1em;"
88 tal:condition="view/shouldShowTargetName"
89 ><a tal:attributes="href patch_task/target/fmt:url"
90 tal:content="patch_task/target/name"
91 ></a></td>
92 <td style="padding-right: 1em;"
93 tal:define="p python:view.youngestPatch(patch_task.bug);
94 age python:view.patchAge(p)"
95 tal:attributes="id string:patch-cell-${repeat/patch_task/index}"
96 ><a tal:attributes="href p/libraryfile/http_url"
97 tal:content="age/fmt:approximateduration/use-digits"
98 ></a>
99 <div class="popupTitle"
100 tal:attributes="id string:patch-popup-${repeat/patch_task/index};">
101 <p tal:define="submitter p/message/owner"
102 ><strong>From:</strong>
103 <a tal:replace="structure submitter/fmt:link"></a><br/>
104 <strong>Link:</strong>
105 <a tal:attributes="href p/libraryfile/http_url"
106 tal:content="p/libraryfile/filename"
107 ></a></p>
108 <p tal:content="string:${p/title}"></p>
109 </div>
110 <script type="text/javascript" tal:content="string:
111 YUI().use('base', 'node', 'event', function(Y) {
112 Y.on('domready', function(e) {
113 var cell_id = '#patch-cell-${repeat/patch_task/index}';
114 var target_id = '#patch-popup-${repeat/patch_task/index}';
115 var elt = Y.get(cell_id);
116 elt.on('mouseover', function(e) {
117 Y.get(target_id).setStyle('display', 'block');
118 });
119 elt.on('mouseout', function(e) {
120 Y.get(target_id).setStyle('display', 'none');
121 });
122 });
123 });"/>
124 </td>
125 </tr></table>
126 <div tal:replace="structure batchnav/@@+navigation-links-lower" />
127 </div>
128 <div class="informational message"
129 tal:condition="python: len(batch) == 0">
130 There are no patches associated with
131 <tal:target replace="context/displayname" />
132 at this time.
133 </div>
134 </div><!-- main -->
135 </body>
136</html>
0137
=== modified file 'lib/lp/testing/factory.py'
--- lib/lp/testing/factory.py 2010-01-30 05:27:48 +0000
+++ lib/lp/testing/factory.py 2010-02-02 01:39:18 +0000
@@ -130,7 +130,7 @@
130from lp.soyuz.interfaces.component import IComponentSet130from lp.soyuz.interfaces.component import IComponentSet
131from lp.soyuz.interfaces.packageset import IPackagesetSet131from lp.soyuz.interfaces.packageset import IPackagesetSet
132from lp.soyuz.model.buildqueue import BuildQueue132from lp.soyuz.model.buildqueue import BuildQueue
133from lp.testing import run_with_login, time_counter133from lp.testing import run_with_login, time_counter, login, logout
134134
135SPACE = ' '135SPACE = ' '
136136
@@ -239,6 +239,19 @@
239 %s239 %s
240 ''')240 ''')
241241
242 def doAsUser(self, user, factory_method, **factory_args):
243 """Perform a factory method while temporarily logged in as a user.
244 :param user: The user to log in as, and then to log out from.
245 :param factory_method: The factory method to invoke while logged in.
246 :param factory_args: Keyword arguments to pass to factory_method."""
247 login(user)
248 try:
249 result = factory_method(**factory_args)
250 transaction.commit()
251 finally:
252 logout()
253 return result
254
242 def makeCopyArchiveLocation(self, distribution=None, owner=None,255 def makeCopyArchiveLocation(self, distribution=None, owner=None,
243 name=None, enabled=True):256 name=None, enabled=True):
244 """Create and return a new arbitrary location for copy packages."""257 """Create and return a new arbitrary location for copy packages."""
@@ -1084,7 +1097,7 @@
10841097
1085 def makeBugAttachment(self, bug=None, owner=None, data=None,1098 def makeBugAttachment(self, bug=None, owner=None, data=None,
1086 comment=None, filename=None, content_type=None,1099 comment=None, filename=None, content_type=None,
1087 description=None):1100 description=None, is_patch=None):
1088 """Create and return a new bug attachment.1101 """Create and return a new bug attachment.
10891102
1090 :param bug: An `IBug` or a bug ID or name, or None, in which1103 :param bug: An `IBug` or a bug ID or name, or None, in which
@@ -1099,6 +1112,7 @@
1099 string will be used.1112 string will be used.
1100 :param content_type: The MIME-type of this file.1113 :param content_type: The MIME-type of this file.
1101 :param description: The description of the attachment.1114 :param description: The description of the attachment.
1115 :param is_patch: Iff true, this attachment is a patch.
1102 :return: An `IBugAttachment`.1116 :return: An `IBugAttachment`.
1103 """1117 """
1104 if bug is None:1118 if bug is None:
@@ -1115,9 +1129,16 @@
1115 comment = self.getUniqueString()1129 comment = self.getUniqueString()
1116 if filename is None:1130 if filename is None:
1117 filename = self.getUniqueString()1131 filename = self.getUniqueString()
1132 # If the default value of is_patch when creating a new
1133 # BugAttachment should ever change, we don't want to interfere
1134 # with that. So, we only override it if our caller explicitly
1135 # passed it.
1136 other_params = {}
1137 if is_patch is not None:
1138 other_params['is_patch'] = is_patch
1118 return bug.addAttachment(1139 return bug.addAttachment(
1119 owner, data, comment, filename, content_type=content_type,1140 owner, data, comment, filename, content_type=content_type,
1120 description=description)1141 description=description, **other_params)
11211142
1122 def makeSignedMessage(self, msgid=None, body=None, subject=None,1143 def makeSignedMessage(self, msgid=None, body=None, subject=None,
1123 attachment_contents=None, force_transfer_encoding=False,1144 attachment_contents=None, force_transfer_encoding=False,