Merge lp:~rockstar/launchpad/remove-sourcepackage-from-recipe into lp:launchpad/db-devel

Proposed by Paul Hummer
Status: Merged
Approved by: Paul Hummer
Approved revision: no longer in the source branch.
Merged at revision: 9406
Proposed branch: lp:~rockstar/launchpad/remove-sourcepackage-from-recipe
Merge into: lp:launchpad/db-devel
Diff against target: 1966 lines (+472/-387)
39 files modified
database/sampledata/current-dev.sql (+79/-65)
database/sampledata/current.sql (+76/-62)
database/schema/comments.sql (+0/-2)
database/schema/patch-2207-58-0.sql (+12/-0)
lib/canonical/config/__init__.py (+4/-0)
lib/canonical/launchpad/readonly.py (+1/-1)
lib/canonical/launchpad/webapp/configure.zcml (+6/-0)
lib/canonical/launchpad/webapp/publication.py (+22/-18)
lib/canonical/launchpad/webapp/tales.py (+13/-0)
lib/canonical/launchpad/webapp/tests/test_publication.py (+8/-0)
lib/lp/archiveuploader/nascentupload.py (+1/-1)
lib/lp/archiveuploader/tests/test_recipeuploads.py (+3/-3)
lib/lp/buildmaster/manager.py (+4/-1)
lib/lp/buildmaster/tests/test_buildqueue.py (+29/-29)
lib/lp/buildmaster/tests/test_manager.py (+3/-1)
lib/lp/code/browser/sourcepackagerecipe.py (+1/-4)
lib/lp/code/browser/tests/test_sourcepackagerecipe.py (+9/-16)
lib/lp/code/interfaces/sourcepackagerecipe.py (+1/-9)
lib/lp/code/interfaces/sourcepackagerecipebuild.py (+2/-8)
lib/lp/code/model/recipebuilder.py (+9/-10)
lib/lp/code/model/sourcepackagerecipe.py (+4/-12)
lib/lp/code/model/sourcepackagerecipebuild.py (+3/-9)
lib/lp/code/model/tests/test_recipebuilder.py (+9/-9)
lib/lp/code/model/tests/test_sourcepackagerecipe.py (+7/-15)
lib/lp/code/model/tests/test_sourcepackagerecipebuild.py (+1/-2)
lib/lp/registry/interfaces/person.py (+1/-4)
lib/lp/registry/model/person.py (+2/-4)
lib/lp/soyuz/browser/builder.py (+11/-1)
lib/lp/soyuz/browser/tests/test_builder_views.py (+49/-0)
lib/lp/soyuz/doc/nascentupload-announcements.txt (+3/-3)
lib/lp/soyuz/doc/package-diff.txt (+31/-31)
lib/lp/soyuz/doc/publishing.txt (+4/-4)
lib/lp/soyuz/model/packagediff.py (+1/-1)
lib/lp/soyuz/stories/soyuz/xx-package-diff.txt (+13/-13)
lib/lp/soyuz/stories/soyuz/xx-queue-pages.txt (+28/-2)
lib/lp/soyuz/templates/distroseries-queue.pt (+14/-0)
lib/lp/soyuz/templates/sourcepackagepublishinghistory-listing-archive-extra.pt (+1/-14)
lib/lp/soyuz/templates/sourcepackagerelease-diffs.pt (+1/-13)
lib/lp/testing/factory.py (+6/-20)
To merge this branch: bzr merge lp:~rockstar/launchpad/remove-sourcepackage-from-recipe
Reviewer Review Type Date Requested Status
Curtis Hovey (community) rc Approve
Tim Penhey (community) Approve
Björn Tillenius (community) db Approve
Stuart Bishop (community) db Approve
Review via email: mp+25809@code.launchpad.net

Description of the change

This branch fixes bug 513201. After much deliberation, we've decided that ISourcePackageRecipeBuild.sourcepackagename and ISourcePackageRecipe.sourcepackagename are unnecessary. This branch removes them from the interfaces, models, database, and a WHOLE bunch of places where it's used (mostly in test data).

The reason we can remove it is because this information is already in available in the packaging data provided by the branches. Having it in two places leaves the potential for confusion when the user sets the sourcepackagename different than the packaging data.

To post a comment you must log in.
Revision history for this message
Stuart Bishop (stub) wrote :

DB patch is fine. patch-2207-58-0.sql

What version of PostgreSQL are you using? The sampledata patch is huge, which happens when someone uses a different version of PG than the last version used.

review: Approve (db)
Revision history for this message
Björn Tillenius (bjornt) wrote :

+1 on the db patch. -1 on the sampledata changes. Please make sure that you're using Postgres 8.4 and re-generate the sampledata using that (at least I think the current one is generated with 8.4). Otherwise we'll keep getting these unreadable diffs.

review: Approve (db)
Revision history for this message
Paul Hummer (rockstar) wrote :

So, launchpad-developer-dependencies still depends on 8.3, not 8.4. Also, the wiki page at https://dev.launchpad.net/DatabaseSetup is out of date (but I'll update it shortly).

Revision history for this message
Paul Hummer (rockstar) wrote :

The diff is still oddly large, but not as large as before...

Revision history for this message
Tim Penhey (thumper) wrote :

The changes look good to me.

review: Approve
Revision history for this message
Curtis Hovey (sinzui) wrote :

I am providing a pre-emptive RC to release the stress of this landing late via ec2.

review: Approve (rc)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'database/sampledata/current-dev.sql'
2--- database/sampledata/current-dev.sql 2010-05-19 09:46:55 +0000
3+++ database/sampledata/current-dev.sql 2010-05-28 03:34:30 +0000
4@@ -2167,7 +2167,7 @@
5
6 ALTER TABLE distribution DISABLE TRIGGER ALL;
7
8-INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat) VALUES (1, 'ubuntu', 'Ubuntu Linux', 'Ubuntu is a new approach to Linux Distribution that includes regular releases, and a simplified single-CD installation system.', 'ubuntulinux.org', 17, '[publishing]
9+INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat, bug_reported_acknowledgement) VALUES (1, 'ubuntu', 'Ubuntu Linux', 'Ubuntu is a new approach to Linux Distribution that includes regular releases, and a simplified single-CD installation system.', 'ubuntulinux.org', 17, '[publishing]
10 pendingremovalduration=5
11 root=/var/tmp/archive
12 archiveroot=/var/tmp/archive/ubuntu
13@@ -2176,21 +2176,21 @@
14 overrideroot=/var/tmp/archive/ubuntu-overrides
15 cacheroot=/var/tmp/archive/ubuntu-cache
16 miscroot=/var/tmp/archive/ubuntu-misc
17-', 'Ubuntu', 'Ubuntu is a new approach to Linux Distribution that includes regular releases, and a simplified single-CD installation system.', 17, 3, 100, NULL, true, true, NULL, NULL, 3, 59, NULL, NULL, '2006-10-16 18:31:43.415195', NULL, NULL, NULL, NULL, NULL, true, NULL, true, true, NULL, NULL, NULL);
18-INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat) VALUES (2, 'redhat', 'Redhat Advanced Server', 'Red Hat is a commercial distribution of the GNU/Linux Operating System.', 'redhat.com', 1, NULL, 'Red Hat', 'Red Hat is a commercial distribution of the GNU/Linux Operating System.', 1, NULL, 1, NULL, false, false, NULL, 8, NULL, 1, NULL, NULL, '2006-10-16 18:31:43.417928', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL);
19-INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat) VALUES (3, 'debian', 'Debian GNU/Linux', 'Debian GNU/Linux is
20+', 'Ubuntu', 'Ubuntu is a new approach to Linux Distribution that includes regular releases, and a simplified single-CD installation system.', 17, 3, 100, NULL, true, true, NULL, NULL, 3, 59, NULL, NULL, '2006-10-16 18:31:43.415195', NULL, NULL, NULL, NULL, NULL, true, NULL, true, true, NULL, NULL, NULL, NULL);
21+INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat, bug_reported_acknowledgement) VALUES (2, 'redhat', 'Redhat Advanced Server', 'Red Hat is a commercial distribution of the GNU/Linux Operating System.', 'redhat.com', 1, NULL, 'Red Hat', 'Red Hat is a commercial distribution of the GNU/Linux Operating System.', 1, NULL, 1, NULL, false, false, NULL, 8, NULL, 1, NULL, NULL, '2006-10-16 18:31:43.417928', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL, NULL);
22+INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat, bug_reported_acknowledgement) VALUES (3, 'debian', 'Debian GNU/Linux', 'Debian GNU/Linux is
23 a non commercial distribution of a GNU/Linux Operating System for many
24 platforms.', 'debian.org', 1, NULL, 'Debian', 'Debian GNU/Linux is
25 a non commercial distribution of a GNU/Linux Operating System for many
26-platforms.', 1, 2, 200, NULL, false, false, NULL, NULL, NULL, 1, NULL, NULL, '2006-10-16 18:31:43.418942', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL);
27-INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat) VALUES (4, 'gentoo', 'The Gentoo Linux', 'Gentoo is a very
28+platforms.', 1, 2, 200, NULL, false, false, NULL, NULL, NULL, 1, NULL, NULL, '2006-10-16 18:31:43.418942', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL, NULL);
29+INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat, bug_reported_acknowledgement) VALUES (4, 'gentoo', 'The Gentoo Linux', 'Gentoo is a very
30 customizeable GNU/Linux Distribution that is designed to let you build every
31-single package yourself, with your own preferences.', 'gentoo.org', 1, NULL, 'Gentoo', 'Gentoo is a very customizeable GNU/Linux Distribution that is designed to let you build every single package yourself, with your own preferences.', 1, NULL, 1, NULL, true, false, NULL, NULL, NULL, 1, NULL, NULL, '2006-10-16 18:31:43.41974', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL);
32-INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat) VALUES (5, 'kubuntu', 'Kubuntu - Free KDE-based Linux', 'Kubuntu is an entirely free Linux distribution that uses the K Desktop
33+single package yourself, with your own preferences.', 'gentoo.org', 1, NULL, 'Gentoo', 'Gentoo is a very customizeable GNU/Linux Distribution that is designed to let you build every single package yourself, with your own preferences.', 1, NULL, 1, NULL, true, false, NULL, NULL, NULL, 1, NULL, NULL, '2006-10-16 18:31:43.41974', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL, NULL);
34+INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat, bug_reported_acknowledgement) VALUES (5, 'kubuntu', 'Kubuntu - Free KDE-based Linux', 'Kubuntu is an entirely free Linux distribution that uses the K Desktop
35 Environment as its default desktop after install.', 'kubuntu.org', 1, NULL, 'Kubuntu', 'Kubuntu is an entirely free Linux distribution that uses the K Desktop
36-Environment as its default desktop after install.', 1, NULL, 1, NULL, false, false, NULL, 8, NULL, 1, NULL, NULL, '2006-10-16 18:31:43.420551', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL);
37-INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat) VALUES (7, 'guadalinex', 'GuadaLinex: Linux for Andalucia', 'GuadaLinex is based on Ubuntu and adds full support for applications specific to the local environment in Andalucia.', 'guadalinex.es', 4, NULL, 'GuadaLinex', 'The GuadaLinex team produces a high quality linux for the Andalucian marketplace.', 32, NULL, 1, NULL, false, false, NULL, NULL, NULL, 4, NULL, NULL, '2006-10-16 18:31:43.421329', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL);
38-INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat) VALUES (8, 'ubuntutest', 'Ubuntu Test', 'Ubuntu Test', 'ubuntulinux.org', 17, '[publishing]
39+Environment as its default desktop after install.', 1, NULL, 1, NULL, false, false, NULL, 8, NULL, 1, NULL, NULL, '2006-10-16 18:31:43.420551', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL, NULL);
40+INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat, bug_reported_acknowledgement) VALUES (7, 'guadalinex', 'GuadaLinex: Linux for Andalucia', 'GuadaLinex is based on Ubuntu and adds full support for applications specific to the local environment in Andalucia.', 'guadalinex.es', 4, NULL, 'GuadaLinex', 'The GuadaLinex team produces a high quality linux for the Andalucian marketplace.', 32, NULL, 1, NULL, false, false, NULL, NULL, NULL, 4, NULL, NULL, '2006-10-16 18:31:43.421329', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL, NULL);
41+INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat, bug_reported_acknowledgement) VALUES (8, 'ubuntutest', 'Ubuntu Test', 'Ubuntu Test', 'ubuntulinux.org', 17, '[publishing]
42 pendingremovalduration=5
43 root=/var/tmp/archive
44 archiveroot=/var/tmp/archive/ubuntutest
45@@ -2199,7 +2199,7 @@
46 overrideroot=/var/tmp/archive/ubuntutest-overrides
47 cacheroot=/var/tmp/archive/ubuntutest-cache
48 miscroot=/var/tmp/archive/ubuntutest-misc
49-', 'ubuntutest', 'Ubuntu Test summary', 17, NULL, 1, NULL, false, false, NULL, NULL, NULL, 17, NULL, NULL, '2006-10-16 18:31:43.422162', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL);
50+', 'ubuntutest', 'Ubuntu Test summary', 17, NULL, 1, NULL, false, false, NULL, NULL, NULL, 17, NULL, NULL, '2006-10-16 18:31:43.422162', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL, NULL);
51
52
53 ALTER TABLE distribution ENABLE TRIGGER ALL;
54@@ -2207,24 +2207,24 @@
55
56 ALTER TABLE project DISABLE TRIGGER ALL;
57
58-INSERT 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, max_bug_heat) VALUES (1, 1, 'apache', 'Apache', 'Apache', 'The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field.', 'We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users.', '2004-09-24 20:58:00.633513', 'http://apache.org/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, NULL);
59-INSERT 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, max_bug_heat) VALUES (2, 2, 'do-not-use-info-imports', 'DO NOT USE', 'DO NOT USE', 'DO NOT USE', 'TEMPORARY project till mirror jobs are assigned to correct project', '2004-09-24 20:58:00.637677', 'http://arch.ubuntu.com/', NULL, NULL, NULL, NULL, true, false, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 2, NULL);
60-INSERT 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, max_bug_heat) VALUES (3, 2, 'launchpad-mirrors', 'Launchpad SCM Mirrors', 'The Launchpad Mirroring Project', 'launchpad mirrors various revision control archives, that mirroring is managed here', 'A project to mirror revision control archives into Arch.', '2004-09-24 20:58:00.65398', 'http://arch.ubuntu.com/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 2, NULL);
61-INSERT 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, max_bug_heat) VALUES (4, 12, 'mozilla', 'the Mozilla Project', 'The Mozilla Project', 'The Mozilla Project is the largest open source web browser collaborative project. Founded when Netscape released the source code to its pioneering browser in 1999, the Mozilla Project continues to set the standard for web browser technology.', 'The Mozilla Project produces several internet applications that are very widely used, and is also a center for collaboration on internet standards work by open source groups.
62+INSERT 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, max_bug_heat, bug_reported_acknowledgement) VALUES (1, 1, 'apache', 'Apache', 'Apache', 'The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field.', 'We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users.', '2004-09-24 20:58:00.633513', 'http://apache.org/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, NULL, NULL);
63+INSERT 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, max_bug_heat, bug_reported_acknowledgement) VALUES (2, 2, 'do-not-use-info-imports', 'DO NOT USE', 'DO NOT USE', 'DO NOT USE', 'TEMPORARY project till mirror jobs are assigned to correct project', '2004-09-24 20:58:00.637677', 'http://arch.ubuntu.com/', NULL, NULL, NULL, NULL, true, false, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 2, NULL, NULL);
64+INSERT 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, max_bug_heat, bug_reported_acknowledgement) VALUES (3, 2, 'launchpad-mirrors', 'Launchpad SCM Mirrors', 'The Launchpad Mirroring Project', 'launchpad mirrors various revision control archives, that mirroring is managed here', 'A project to mirror revision control archives into Arch.', '2004-09-24 20:58:00.65398', 'http://arch.ubuntu.com/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 2, NULL, NULL);
65+INSERT 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, max_bug_heat, bug_reported_acknowledgement) VALUES (4, 12, 'mozilla', 'the Mozilla Project', 'The Mozilla Project', 'The Mozilla Project is the largest open source web browser collaborative project. Founded when Netscape released the source code to its pioneering browser in 1999, the Mozilla Project continues to set the standard for web browser technology.', 'The Mozilla Project produces several internet applications that are very widely used, and is also a center for collaboration on internet standards work by open source groups.
66
67 The Project now has several popular products, including the Firefox web browser, the Thunderbird mail client and the libraries that enable them to run on many platforms.
68
69-Organisationally, the Mozilla Project is hosted by the Mozilla Foundation, a not-for-profit company incorporated in the US.', '2004-09-24 20:58:02.177698', 'http://www.mozilla.org/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 12, NULL);
70-INSERT 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, max_bug_heat) VALUES (5, 12, 'gnome', 'GNOME', 'The GNOME Project', 'The GNOME Project is an initiative to prduce a free desktop software framework. GNOME is more than a set of applications, it is a user interface standard (the Gnome HIG) and a set of libraries that allow applications to work together in a harmonious desktop-ish way.', 'The Gnome Project was founded (when?) to build on the success of early applications using the Gtk GUI toolkit. Many of those applications are still part of Gnome, and the Gtk toolkit remains an essential part of Gnome.
71-
72-Gnome applications cover the full spectrum from office productivity applications to games, digital camera applications, and of course the Gnome Panel which acts as a launcher and general access point for apps on the desktop.', '2004-09-24 20:58:02.222154', 'http://www.gnome.org/', NULL, NULL, NULL, NULL, false, true, NULL, 2, 20, NULL, 2, NULL, NULL, NULL, NULL, NULL, NULL, 12, NULL);
73-INSERT 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, max_bug_heat) VALUES (6, 12, 'iso-codes-project', 'iso-codes', 'iso-codes', 'foo', 'bar', '2004-09-24 20:58:02.238443', 'http://www.gnome.org/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 12, NULL);
74-INSERT 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, max_bug_heat) VALUES (7, 16, 'aaa', 'the Test Project', 'The Test Project', 'This is a small project that has no purpose by to serve as a test data point. The only thing this project has ever produced is products, most of which are largely unheard of. This short description is long enough.', 'Of course, one can''t say enough about the Test Project. Not only is it always there, it''s often exactly in the same state that you saw it last. And it has an amazing ability to pop up in places where you just didn''t think you''d expect to find it. Very noticeable when you least want it noticed, that sort of thing.
75-
76-It would be very interesting to know whether this second paragraph of text about the test project is in fact rendered as a second paragraph, or if it all blurs together in a haze of testing. Only time will tell.', '2004-10-03 22:27:25.02843', 'http://www.testmenow.com', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 16, NULL);
77-INSERT 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, max_bug_heat) 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.
78-
79-The 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, NULL);
80+Organisationally, the Mozilla Project is hosted by the Mozilla Foundation, a not-for-profit company incorporated in the US.', '2004-09-24 20:58:02.177698', 'http://www.mozilla.org/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 12, NULL, NULL);
81+INSERT 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, max_bug_heat, bug_reported_acknowledgement) VALUES (5, 12, 'gnome', 'GNOME', 'The GNOME Project', 'The GNOME Project is an initiative to prduce a free desktop software framework. GNOME is more than a set of applications, it is a user interface standard (the Gnome HIG) and a set of libraries that allow applications to work together in a harmonious desktop-ish way.', 'The Gnome Project was founded (when?) to build on the success of early applications using the Gtk GUI toolkit. Many of those applications are still part of Gnome, and the Gtk toolkit remains an essential part of Gnome.
82+
83+Gnome applications cover the full spectrum from office productivity applications to games, digital camera applications, and of course the Gnome Panel which acts as a launcher and general access point for apps on the desktop.', '2004-09-24 20:58:02.222154', 'http://www.gnome.org/', NULL, NULL, NULL, NULL, false, true, NULL, 2, 20, NULL, 2, NULL, NULL, NULL, NULL, NULL, NULL, 12, NULL, NULL);
84+INSERT 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, max_bug_heat, bug_reported_acknowledgement) VALUES (6, 12, 'iso-codes-project', 'iso-codes', 'iso-codes', 'foo', 'bar', '2004-09-24 20:58:02.238443', 'http://www.gnome.org/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 12, NULL, NULL);
85+INSERT 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, max_bug_heat, bug_reported_acknowledgement) VALUES (7, 16, 'aaa', 'the Test Project', 'The Test Project', 'This is a small project that has no purpose by to serve as a test data point. The only thing this project has ever produced is products, most of which are largely unheard of. This short description is long enough.', 'Of course, one can''t say enough about the Test Project. Not only is it always there, it''s often exactly in the same state that you saw it last. And it has an amazing ability to pop up in places where you just didn''t think you''d expect to find it. Very noticeable when you least want it noticed, that sort of thing.
86+
87+It would be very interesting to know whether this second paragraph of text about the test project is in fact rendered as a second paragraph, or if it all blurs together in a haze of testing. Only time will tell.', '2004-10-03 22:27:25.02843', 'http://www.testmenow.com', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 16, NULL, NULL);
88+INSERT 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, max_bug_heat, bug_reported_acknowledgement) 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.
89+
90+The 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, NULL, NULL);
91
92
93 ALTER TABLE project ENABLE TRIGGER ALL;
94@@ -2232,31 +2232,31 @@
95
96 ALTER TABLE product DISABLE TRIGGER ALL;
97
98-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (1, 1, 17, 'tomcat', 'Tomcat', 'Tomcat', 'The servlet container that is used in the official Reference Implementation for the Java Servlet and JavaServer Pages technologies.', 'Apache Tomcat is developed in an open and participatory environment and released under the Apache Software License. This project has nothing to do with Ubuntu, but this description uses the word "Ubuntu" for the purpose of testing search results.', '2004-09-24 20:58:00.655518', 'http://tomcat.apache.org/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 16, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 17, NULL, NULL, NULL, NULL);
99-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (2, 2, 2, 'unassigned', 'unassigned syncs', 'unassigned syncs', 'syncs still not assigned to a real product', 'unassigned syncs, will not be processed, to be moved to real projects ASAP.', '2004-09-24 20:58:00.674409', 'http://archive.apache.org/dist/tomcat', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, true, false, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 17, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 2, NULL, NULL, NULL, NULL);
100-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (3, 3, 2, 'arch-mirrors', 'Arch mirrors', 'Arch archive mirrors', 'Arch Archive Mirroring project.', 'Arch archive full-archive mirror tasks', '2004-09-24 20:58:00.691047', 'http://arch.ubuntu.com/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 15, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 2, NULL, NULL, NULL, NULL);
101-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (4, 4, 12, 'firefox', 'Mozilla Firefox', 'Mozilla Firefox', 'The Mozilla Firefox web browser', 'The Mozilla Firefox web browser', '2004-09-24 20:58:02.185708', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, 1, 100, false, true, NULL, NULL, NULL, NULL, 1, NULL, NULL, NULL, NULL, true, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
102-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (5, 5, 12, 'evolution', 'Evolution', 'The Evolution Groupware Application', 'Evolution is an email client, addressbook and calendar application that is very well integrated with the Gnome desktop. Evolution is the standard mail client in the Ubuntu distribution, and supports all current mail system standards.', 'Recently, Evolution has seen significant work to make it interoperable with the proprietary Microsoft Exchange Server protocols and formats, allowing organisations to replace Outlook on Windows with Evolution and Linux.
103-
104-The current stable release series of Evolution is 2.0.', '2004-09-24 20:58:02.240163', 'http://www.gnome.org/evolution/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, 1, 100, true, true, NULL, NULL, NULL, NULL, 3, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
105-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (6, 5, 12, 'gnome-terminal', 'GNOME Terminal', 'The GNOME Terminal Emulator', 'Gnome Terminal is a simple terminal application for your Gnome desktop. It allows quick access to console applications, supports all console types, and has many useful features such as tabbed consoles (many consoles in a single window with quick switching between them).', 'The Gnome Terminal application fully supports Gnome 2 and is a standard part of the Gnome Desktop.', '2004-09-24 20:58:02.256678', 'http://www.gnome.org/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, 2, 14, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, 'gnome-terminal', NULL, NULL, NULL);
106-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (7, 6, 12, 'iso-codes', 'iso-codes', 'The iso-codes', 'foo', 'bar', '2004-09-24 20:58:02.258743', 'http://www.novell.com/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 13, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
107-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (8, 4, 12, 'thunderbird', 'Mozilla Thunderbird', 'Mozilla Thunderbird', 'The Mozilla Thunderbird email client', 'The Mozilla Thunderbird email client', '2004-09-24 20:58:04.478988', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 4, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
108-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (9, 5, 16, 'applets', 'Gnome Applets', 'The Gnome Panel Applets', 'The Gnome Panel Applets are a collection of standard widgets that can be installed on your desktop Panel. These icons act as launchers for applications, or indicators of the status of your machine. For example, panel applets exist to show you your battery status or wifi network signal strength.', 'This is the collection of Panel Applets that is part of the default Gnome release. Additional Panel Applets are available from third parties. A complete set of Panel Applets is included in the Ubuntu OS, for example.
109-
110-The Gnome Panel team includes Abel Kascinsky, Frederick Wurst and Andreas Andropovitch Axelsson.', '2004-10-03 16:46:09.113721', 'http://www.gnome.org/panel/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 12, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 16, NULL, NULL, NULL, NULL);
111-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (10, NULL, 2, 'python-gnome2-dev', 'python gnome2 dev', 'python gnome2 dev', 'Python bindings for the GNOME desktop environment', 'Python bindings for the GNOME desktop environment', '2004-09-24 20:58:00.674409', 'http://www.daa.com.au/~james/software/pygtk/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, true, false, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 18, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 2, NULL, NULL, NULL, NULL);
112-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (11, 5, 12, 'netapplet', 'NetApplet', 'Network Applet', 'The Novell Network Applet', 'Displays current network status and allows network switching', '2005-03-10 16:00:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 5, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
113-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (12, NULL, 16, 'a52dec', 'a52dec', 'Liba52 Test Decoder', 'a52dec is a test program for liba52.', 'This tool decodes ATSC A/52 streams, and also includes a demultiplexer for mpeg-1 and mpeg-2 program streams. The liba52 source code is always distributed in the a52dec package, to make sure it easier for people to test it.', '2005-04-14 00:00:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 6, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 16, NULL, NULL, NULL, NULL);
114-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (13, 5, 16, 'gnomebaker', 'gnomebaker', 'Gnome Baker', 'Gnome Baker is a CD burning application', 'Gnome Baker burns CDs like there''s no tomorrow', '2005-08-26 00:00:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 11, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 16, NULL, NULL, NULL, NULL);
115-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (14, NULL, 12, 'bazaar', 'Bazaar', 'Bazaar', 'Bazaar is a distributed revision control system', 'Bazaar is all about source control and double-dashes.', '2005-08-26 00:00:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 10, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
116-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (15, NULL, 1, 'alsa-utils', 'alsa-utils', 'ALSA utilities', 'Utilities for configurating and using the Advanced Linux Sound Architecture', NULL, '2005-09-15 09:05:11.472752', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, 2, 1, true, false, NULL, NULL, NULL, NULL, 8, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 1, NULL, NULL, NULL, NULL);
117-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (16, NULL, 12, 'landscape', 'The Landscape Project', 'The Landscape Project', 'Landscape is a system being developed by Canonical to allow remote management of systems using a web interface.', 'Landscape is a system being developed by Canonical to allow remote management of systems using a web interface. The scope of the project isn''t limited, and will grow up as new features are planned.
118-
119-The Landscape system consists of two major parts: a client daemon which delivers information to the server and acts on server-provided requests; and a web server responsible for handling communication with clients and the user interface itself.', '2006-07-11 19:59:17.311451', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, true, 64, NULL, NULL, NULL, 9, NULL, NULL, NULL, NULL, false, true, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
120-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (17, NULL, 12, 'launchpad', 'Launchpad', 'Launchpad', 'Launchpad is a catalogue of libre software projects and products. Projects registered in the Launchpad are linked to their translations in Rosetta, their bugs in Malone, their RCS imports in Bazaar, and their packages in Soyuz.', 'Launchpad''s design is inspired by the Description of a Project (DOAP) framework by Edd Dumbill, with extensions for actual releases of products.', '2006-11-24 12:48:19.178553', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, true, NULL, NULL, NULL, NULL, 19, NULL, NULL, NULL, NULL, true, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
121-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (18, NULL, 37, 'upstart', 'Upstart', 'The Upstart System Initialisation Process', 'Event-based init daemon.', 'upstart is a replacement for the /sbin/init daemon which handles starting of tasks and services during boot, stopping them during shutdown and supervising them while the system is running.', '2007-03-14 18:47:04.891546', 'http://upstart.ubuntu.com/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, 3, 100, false, false, NULL, NULL, NULL, NULL, 20, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 37, NULL, NULL, NULL, NULL);
122-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (19, NULL, 28, 'aptoncd', 'APTonCD', 'APTonCD, Get APT Anywhere', 'A simple yet powerful tool which allows you to create one (or more) CD/DVD-Repository containing all of the packages downloaded via apt-get or aptitude.', 'A GUI-based tool that allows you to create a CD/DVD with all downloaded packages with APT-GET, creating a removable-repository.
123+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (1, 1, 17, 'tomcat', 'Tomcat', 'Tomcat', 'The servlet container that is used in the official Reference Implementation for the Java Servlet and JavaServer Pages technologies.', 'Apache Tomcat is developed in an open and participatory environment and released under the Apache Software License. This project has nothing to do with Ubuntu, but this description uses the word "Ubuntu" for the purpose of testing search results.', '2004-09-24 20:58:00.655518', 'http://tomcat.apache.org/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 16, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 17, NULL, NULL, NULL, NULL, NULL);
124+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (2, 2, 2, 'unassigned', 'unassigned syncs', 'unassigned syncs', 'syncs still not assigned to a real product', 'unassigned syncs, will not be processed, to be moved to real projects ASAP.', '2004-09-24 20:58:00.674409', 'http://archive.apache.org/dist/tomcat', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, true, false, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 17, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 2, NULL, NULL, NULL, NULL, NULL);
125+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (3, 3, 2, 'arch-mirrors', 'Arch mirrors', 'Arch archive mirrors', 'Arch Archive Mirroring project.', 'Arch archive full-archive mirror tasks', '2004-09-24 20:58:00.691047', 'http://arch.ubuntu.com/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 15, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 2, NULL, NULL, NULL, NULL, NULL);
126+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (4, 4, 12, 'firefox', 'Mozilla Firefox', 'Mozilla Firefox', 'The Mozilla Firefox web browser', 'The Mozilla Firefox web browser', '2004-09-24 20:58:02.185708', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, 1, 100, false, true, NULL, NULL, NULL, NULL, 1, NULL, NULL, NULL, NULL, true, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
127+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (5, 5, 12, 'evolution', 'Evolution', 'The Evolution Groupware Application', 'Evolution is an email client, addressbook and calendar application that is very well integrated with the Gnome desktop. Evolution is the standard mail client in the Ubuntu distribution, and supports all current mail system standards.', 'Recently, Evolution has seen significant work to make it interoperable with the proprietary Microsoft Exchange Server protocols and formats, allowing organisations to replace Outlook on Windows with Evolution and Linux.
128+
129+The current stable release series of Evolution is 2.0.', '2004-09-24 20:58:02.240163', 'http://www.gnome.org/evolution/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, 1, 100, true, true, NULL, NULL, NULL, NULL, 3, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
130+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (6, 5, 12, 'gnome-terminal', 'GNOME Terminal', 'The GNOME Terminal Emulator', 'Gnome Terminal is a simple terminal application for your Gnome desktop. It allows quick access to console applications, supports all console types, and has many useful features such as tabbed consoles (many consoles in a single window with quick switching between them).', 'The Gnome Terminal application fully supports Gnome 2 and is a standard part of the Gnome Desktop.', '2004-09-24 20:58:02.256678', 'http://www.gnome.org/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, 2, 14, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, 'gnome-terminal', NULL, NULL, NULL, NULL);
131+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (7, 6, 12, 'iso-codes', 'iso-codes', 'The iso-codes', 'foo', 'bar', '2004-09-24 20:58:02.258743', 'http://www.novell.com/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 13, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
132+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (8, 4, 12, 'thunderbird', 'Mozilla Thunderbird', 'Mozilla Thunderbird', 'The Mozilla Thunderbird email client', 'The Mozilla Thunderbird email client', '2004-09-24 20:58:04.478988', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 4, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
133+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (9, 5, 16, 'applets', 'Gnome Applets', 'The Gnome Panel Applets', 'The Gnome Panel Applets are a collection of standard widgets that can be installed on your desktop Panel. These icons act as launchers for applications, or indicators of the status of your machine. For example, panel applets exist to show you your battery status or wifi network signal strength.', 'This is the collection of Panel Applets that is part of the default Gnome release. Additional Panel Applets are available from third parties. A complete set of Panel Applets is included in the Ubuntu OS, for example.
134+
135+The Gnome Panel team includes Abel Kascinsky, Frederick Wurst and Andreas Andropovitch Axelsson.', '2004-10-03 16:46:09.113721', 'http://www.gnome.org/panel/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 12, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 16, NULL, NULL, NULL, NULL, NULL);
136+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (10, NULL, 2, 'python-gnome2-dev', 'python gnome2 dev', 'python gnome2 dev', 'Python bindings for the GNOME desktop environment', 'Python bindings for the GNOME desktop environment', '2004-09-24 20:58:00.674409', 'http://www.daa.com.au/~james/software/pygtk/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, true, false, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 18, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 2, NULL, NULL, NULL, NULL, NULL);
137+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (11, 5, 12, 'netapplet', 'NetApplet', 'Network Applet', 'The Novell Network Applet', 'Displays current network status and allows network switching', '2005-03-10 16:00:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 5, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
138+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (12, NULL, 16, 'a52dec', 'a52dec', 'Liba52 Test Decoder', 'a52dec is a test program for liba52.', 'This tool decodes ATSC A/52 streams, and also includes a demultiplexer for mpeg-1 and mpeg-2 program streams. The liba52 source code is always distributed in the a52dec package, to make sure it easier for people to test it.', '2005-04-14 00:00:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 6, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 16, NULL, NULL, NULL, NULL, NULL);
139+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (13, 5, 16, 'gnomebaker', 'gnomebaker', 'Gnome Baker', 'Gnome Baker is a CD burning application', 'Gnome Baker burns CDs like there''s no tomorrow', '2005-08-26 00:00:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 11, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 16, NULL, NULL, NULL, NULL, NULL);
140+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (14, NULL, 12, 'bazaar', 'Bazaar', 'Bazaar', 'Bazaar is a distributed revision control system', 'Bazaar is all about source control and double-dashes.', '2005-08-26 00:00:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 10, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
141+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (15, NULL, 1, 'alsa-utils', 'alsa-utils', 'ALSA utilities', 'Utilities for configurating and using the Advanced Linux Sound Architecture', NULL, '2005-09-15 09:05:11.472752', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, 2, 1, true, false, NULL, NULL, NULL, NULL, 8, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 1, NULL, NULL, NULL, NULL, NULL);
142+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (16, NULL, 12, 'landscape', 'The Landscape Project', 'The Landscape Project', 'Landscape is a system being developed by Canonical to allow remote management of systems using a web interface.', 'Landscape is a system being developed by Canonical to allow remote management of systems using a web interface. The scope of the project isn''t limited, and will grow up as new features are planned.
143+
144+The Landscape system consists of two major parts: a client daemon which delivers information to the server and acts on server-provided requests; and a web server responsible for handling communication with clients and the user interface itself.', '2006-07-11 19:59:17.311451', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, true, 64, NULL, NULL, NULL, 9, NULL, NULL, NULL, NULL, false, true, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
145+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (17, NULL, 12, 'launchpad', 'Launchpad', 'Launchpad', 'Launchpad is a catalogue of libre software projects and products. Projects registered in the Launchpad are linked to their translations in Rosetta, their bugs in Malone, their RCS imports in Bazaar, and their packages in Soyuz.', 'Launchpad''s design is inspired by the Description of a Project (DOAP) framework by Edd Dumbill, with extensions for actual releases of products.', '2006-11-24 12:48:19.178553', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, true, NULL, NULL, NULL, NULL, 19, NULL, NULL, NULL, NULL, true, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
146+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (18, NULL, 37, 'upstart', 'Upstart', 'The Upstart System Initialisation Process', 'Event-based init daemon.', 'upstart is a replacement for the /sbin/init daemon which handles starting of tasks and services during boot, stopping them during shutdown and supervising them while the system is running.', '2007-03-14 18:47:04.891546', 'http://upstart.ubuntu.com/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, 3, 100, false, false, NULL, NULL, NULL, NULL, 20, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 37, NULL, NULL, NULL, NULL, NULL);
147+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (19, NULL, 28, 'aptoncd', 'APTonCD', 'APTonCD, Get APT Anywhere', 'A simple yet powerful tool which allows you to create one (or more) CD/DVD-Repository containing all of the packages downloaded via apt-get or aptitude.', 'A GUI-based tool that allows you to create a CD/DVD with all downloaded packages with APT-GET, creating a removable-repository.
148
149 With aptoncd you can:
150 * Create a CD/DVD with all downloaded packages
151@@ -2265,26 +2265,26 @@
152 * Upgrade a lot of computers with same DVD
153 * And more is expected...
154
155-In the "Create APTonCD" feature we have the possibility to make a CD/DVD with all previously downloaded packages with apt-get or aptitude. It uses apt-cache (/var/cache/apt/archives) and scans for packages and makes a repository in one (or more) CD/DVD, exactly as the previous option.', '2007-03-14 18:53:13.112116', 'http://aptoncd.sourceforge.net/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 21, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 28, NULL, NULL, NULL, NULL);
156-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (20, NULL, 14, 'jokosher', 'Jokosher', 'Jokosher Audio Editor', 'Jokosher is a simple yet powerful multi-track studio. With it you can create and record music, podcasts and more, all from an integrated simple environment.', 'Jokosher brings together many sources of audio into a seamless environment where you can record, mix and publish your audio content.', '2007-03-15 20:11:49.501871', 'http://www.jokosher.org/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, true, NULL, NULL, NULL, NULL, 22, NULL, NULL, NULL, NULL, false, false, false, NULL, false, true, NULL, NULL, false, false, 14, NULL, NULL, NULL, NULL);
157-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (21, NULL, 12, 'bzr', 'Bazaar', 'Bazaar Version Control System', 'Bazaar is a distributed revision control system. It allows team members to branch and merge upstream code very easily. Most importantly, it is very robust in handling renames so that merges across radical restructurings of the tree are efficient and correct.', 'Bazaar aims to be a distributed RCS system that the open source community loves to use.
158+In the "Create APTonCD" feature we have the possibility to make a CD/DVD with all previously downloaded packages with apt-get or aptitude. It uses apt-cache (/var/cache/apt/archives) and scans for packages and makes a repository in one (or more) CD/DVD, exactly as the previous option.', '2007-03-14 18:53:13.112116', 'http://aptoncd.sourceforge.net/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 21, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 28, NULL, NULL, NULL, NULL, NULL);
159+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (20, NULL, 14, 'jokosher', 'Jokosher', 'Jokosher Audio Editor', 'Jokosher is a simple yet powerful multi-track studio. With it you can create and record music, podcasts and more, all from an integrated simple environment.', 'Jokosher brings together many sources of audio into a seamless environment where you can record, mix and publish your audio content.', '2007-03-15 20:11:49.501871', 'http://www.jokosher.org/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, true, NULL, NULL, NULL, NULL, 22, NULL, NULL, NULL, NULL, false, false, false, NULL, false, true, NULL, NULL, false, false, 14, NULL, NULL, NULL, NULL, NULL);
160+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (21, NULL, 12, 'bzr', 'Bazaar', 'Bazaar Version Control System', 'Bazaar is a distributed revision control system. It allows team members to branch and merge upstream code very easily. Most importantly, it is very robust in handling renames so that merges across radical restructurings of the tree are efficient and correct.', 'Bazaar aims to be a distributed RCS system that the open source community loves to use.
161
162-Distributed revision control systems allow multiple people to have their own branch of a project, and merge code efficiently between them. This enables new contributors to immediately have access to the full tools that previously have been limited to just the committers to a project.', '2007-03-27 16:28:27.763632', 'http://bazaar-vcs.org/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 23, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
163-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (22, NULL, 12, 'redfish', 'Redfish', 'Redfish', 'The redfish project.', 'The redfish project.', '2007-04-18 20:58:56.846607', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, true, 64, NULL, NULL, NULL, 24, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
164-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (23, 1, 1, 'derby', 'Derby', 'Derby - Java Database', 'Apache Derby, an Apache DB subproject, is an open source relational database implemented entirely in Java and available under the Apache License, Version 2.0.', 'Some key advantages include:
165+Distributed revision control systems allow multiple people to have their own branch of a project, and merge code efficiently between them. This enables new contributors to immediately have access to the full tools that previously have been limited to just the committers to a project.', '2007-03-27 16:28:27.763632', 'http://bazaar-vcs.org/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 23, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
166+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (22, NULL, 12, 'redfish', 'Redfish', 'Redfish', 'The redfish project.', 'The redfish project.', '2007-04-18 20:58:56.846607', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, true, 64, NULL, NULL, NULL, 24, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
167+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (23, 1, 1, 'derby', 'Derby', 'Derby - Java Database', 'Apache Derby, an Apache DB subproject, is an open source relational database implemented entirely in Java and available under the Apache License, Version 2.0.', 'Some key advantages include:
168
169 * Derby has a small footprint -- about 2 megabytes for the base engine and embedded JDBC driver.
170 * Derby is based on the Java, JDBC, and SQL standards.
171 * Derby provides an embedded JDBC driver that lets you embed Derby in any Java-based solution.
172 * Derby also supports the more familiar client/server mode with the Derby Network Client JDBC driver and Derby Network Server.
173 * Derby is easy to install, deploy, and use.
174-', '2007-11-19 12:44:30.603892', 'http://db.apache.org/derby/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 25, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 1, NULL, NULL, NULL, NULL);
175-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (24, NULL, 243623, 'mega-money-maker', 'Mega Money Maker', 'Sample Commercial Project', 'Proprietary project', NULL, '2008-06-27 14:51:47.366199', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 26, NULL, NULL, NULL, NULL, false, false, false, 'All rights reserved. Not free.', false, false, NULL, NULL, false, false, 243623, NULL, NULL, NULL, NULL);
176-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (25, NULL, 16, 'rosetta', 'Launchpad Translations', 'The translations part of Launchpad', 'Here you can translate your project into other spoken languages.', NULL, '2008-10-02 10:12:40.909504', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, true, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 27, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 16, NULL, NULL, NULL, NULL);
177-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (26, NULL, 16, 'obsolete-junk', 'Obsolete Junk', 'The Great Mass of Obsolete Junk', 'If you have junk that you don''t want clogging up your product, dump it here.', NULL, '2009-05-02 21:33:15.310312', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, true, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 28, NULL, NULL, NULL, NULL, false, false, false, '(We have them all because we are junk. Junk. Junk I tell you.)', false, false, NULL, NULL, false, true, 16, NULL, NULL, NULL, NULL);
178-INSERT 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, max_bug_heat, date_next_suggest_packaging) 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, NULL, NULL);
179-INSERT 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, max_bug_heat, date_next_suggest_packaging) 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, NULL, NULL);
180-INSERT 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, max_bug_heat, date_next_suggest_packaging) 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, NULL, NULL);
181+', '2007-11-19 12:44:30.603892', 'http://db.apache.org/derby/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 25, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 1, NULL, NULL, NULL, NULL, NULL);
182+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (24, NULL, 243623, 'mega-money-maker', 'Mega Money Maker', 'Sample Commercial Project', 'Proprietary project', NULL, '2008-06-27 14:51:47.366199', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 26, NULL, NULL, NULL, NULL, false, false, false, 'All rights reserved. Not free.', false, false, NULL, NULL, false, false, 243623, NULL, NULL, NULL, NULL, NULL);
183+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (25, NULL, 16, 'rosetta', 'Launchpad Translations', 'The translations part of Launchpad', 'Here you can translate your project into other spoken languages.', NULL, '2008-10-02 10:12:40.909504', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, true, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 27, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 16, NULL, NULL, NULL, NULL, NULL);
184+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (26, NULL, 16, 'obsolete-junk', 'Obsolete Junk', 'The Great Mass of Obsolete Junk', 'If you have junk that you don''t want clogging up your product, dump it here.', NULL, '2009-05-02 21:33:15.310312', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, true, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 28, NULL, NULL, NULL, NULL, false, false, false, '(We have them all because we are junk. Junk. Junk I tell you.)', false, false, NULL, NULL, false, true, 16, NULL, NULL, NULL, NULL, NULL);
185+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) 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, NULL, NULL, NULL);
186+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) 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, NULL, NULL, NULL);
187+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) 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, NULL, NULL, NULL);
188
189
190 ALTER TABLE product ENABLE TRIGGER ALL;
191@@ -3941,6 +3941,13 @@
192 ALTER TABLE cvereference ENABLE TRIGGER ALL;
193
194
195+ALTER TABLE databasecpustats DISABLE TRIGGER ALL;
196+
197+
198+
199+ALTER TABLE databasecpustats ENABLE TRIGGER ALL;
200+
201+
202 ALTER TABLE databasereplicationlag DISABLE TRIGGER ALL;
203
204
205@@ -3948,6 +3955,13 @@
206 ALTER TABLE databasereplicationlag ENABLE TRIGGER ALL;
207
208
209+ALTER TABLE databasetablestats DISABLE TRIGGER ALL;
210+
211+
212+
213+ALTER TABLE databasetablestats ENABLE TRIGGER ALL;
214+
215+
216 ALTER TABLE distributionbounty DISABLE TRIGGER ALL;
217
218 INSERT INTO distributionbounty (id, bounty, distribution, date_created) VALUES (1, 1, 1, '2006-10-16 18:31:43.430161');
219
220=== modified file 'database/sampledata/current.sql'
221--- database/sampledata/current.sql 2010-05-19 09:46:55 +0000
222+++ database/sampledata/current.sql 2010-05-28 03:34:30 +0000
223@@ -2126,7 +2126,7 @@
224
225 ALTER TABLE distribution DISABLE TRIGGER ALL;
226
227-INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat) VALUES (1, 'ubuntu', 'Ubuntu Linux', 'Ubuntu is a new approach to Linux Distribution that includes regular releases, and a simplified single-CD installation system.', 'ubuntulinux.org', 17, '[publishing]
228+INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat, bug_reported_acknowledgement) VALUES (1, 'ubuntu', 'Ubuntu Linux', 'Ubuntu is a new approach to Linux Distribution that includes regular releases, and a simplified single-CD installation system.', 'ubuntulinux.org', 17, '[publishing]
229 pendingremovalduration=5
230 root=/var/tmp/archive
231 archiveroot=/var/tmp/archive/ubuntu
232@@ -2135,21 +2135,21 @@
233 overrideroot=/var/tmp/archive/ubuntu-overrides
234 cacheroot=/var/tmp/archive/ubuntu-cache
235 miscroot=/var/tmp/archive/ubuntu-misc
236-', 'Ubuntu', 'Ubuntu is a new approach to Linux Distribution that includes regular releases, and a simplified single-CD installation system.', 17, NULL, 1, NULL, true, true, NULL, NULL, 3, 59, NULL, NULL, '2006-10-16 18:31:43.415195', NULL, NULL, NULL, NULL, NULL, true, NULL, true, true, NULL, NULL, NULL);
237-INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat) VALUES (2, 'redhat', 'Redhat Advanced Server', 'Red Hat is a commercial distribution of the GNU/Linux Operating System.', 'redhat.com', 1, NULL, 'Red Hat', 'Red Hat is a commercial distribution of the GNU/Linux Operating System.', 1, NULL, 1, NULL, false, false, NULL, 8, NULL, 1, NULL, NULL, '2006-10-16 18:31:43.417928', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL);
238-INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat) VALUES (3, 'debian', 'Debian GNU/Linux', 'Debian GNU/Linux is
239+', 'Ubuntu', 'Ubuntu is a new approach to Linux Distribution that includes regular releases, and a simplified single-CD installation system.', 17, NULL, 1, NULL, true, true, NULL, NULL, 3, 59, NULL, NULL, '2006-10-16 18:31:43.415195', NULL, NULL, NULL, NULL, NULL, true, NULL, true, true, NULL, NULL, NULL, NULL);
240+INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat, bug_reported_acknowledgement) VALUES (2, 'redhat', 'Redhat Advanced Server', 'Red Hat is a commercial distribution of the GNU/Linux Operating System.', 'redhat.com', 1, NULL, 'Red Hat', 'Red Hat is a commercial distribution of the GNU/Linux Operating System.', 1, NULL, 1, NULL, false, false, NULL, 8, NULL, 1, NULL, NULL, '2006-10-16 18:31:43.417928', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL, NULL);
241+INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat, bug_reported_acknowledgement) VALUES (3, 'debian', 'Debian GNU/Linux', 'Debian GNU/Linux is
242 a non commercial distribution of a GNU/Linux Operating System for many
243 platforms.', 'debian.org', 1, NULL, 'Debian', 'Debian GNU/Linux is
244 a non commercial distribution of a GNU/Linux Operating System for many
245-platforms.', 1, NULL, 1, NULL, false, false, NULL, NULL, NULL, 1, NULL, NULL, '2006-10-16 18:31:43.418942', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL);
246-INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat) VALUES (4, 'gentoo', 'The Gentoo Linux', 'Gentoo is a very
247+platforms.', 1, NULL, 1, NULL, false, false, NULL, NULL, NULL, 1, NULL, NULL, '2006-10-16 18:31:43.418942', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL, NULL);
248+INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat, bug_reported_acknowledgement) VALUES (4, 'gentoo', 'The Gentoo Linux', 'Gentoo is a very
249 customizeable GNU/Linux Distribution that is designed to let you build every
250-single package yourself, with your own preferences.', 'gentoo.org', 1, NULL, 'Gentoo', 'Gentoo is a very customizeable GNU/Linux Distribution that is designed to let you build every single package yourself, with your own preferences.', 1, NULL, 1, NULL, true, false, NULL, NULL, NULL, 1, NULL, NULL, '2006-10-16 18:31:43.41974', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL);
251-INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat) VALUES (5, 'kubuntu', 'Kubuntu - Free KDE-based Linux', 'Kubuntu is an entirely free Linux distribution that uses the K Desktop
252+single package yourself, with your own preferences.', 'gentoo.org', 1, NULL, 'Gentoo', 'Gentoo is a very customizeable GNU/Linux Distribution that is designed to let you build every single package yourself, with your own preferences.', 1, NULL, 1, NULL, true, false, NULL, NULL, NULL, 1, NULL, NULL, '2006-10-16 18:31:43.41974', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL, NULL);
253+INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat, bug_reported_acknowledgement) VALUES (5, 'kubuntu', 'Kubuntu - Free KDE-based Linux', 'Kubuntu is an entirely free Linux distribution that uses the K Desktop
254 Environment as its default desktop after install.', 'kubuntu.org', 1, NULL, 'Kubuntu', 'Kubuntu is an entirely free Linux distribution that uses the K Desktop
255-Environment as its default desktop after install.', 1, NULL, 1, NULL, false, false, NULL, 8, NULL, 1, NULL, NULL, '2006-10-16 18:31:43.420551', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL);
256-INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat) VALUES (7, 'guadalinex', 'GuadaLinex: Linux for Andalucia', 'GuadaLinex is based on Ubuntu and adds full support for applications specific to the local environment in Andalucia.', 'guadalinex.es', 4, NULL, 'GuadaLinex', 'The GuadaLinex team produces a high quality linux for the Andalucian marketplace.', 32, NULL, 1, NULL, false, false, NULL, NULL, NULL, 4, NULL, NULL, '2006-10-16 18:31:43.421329', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL);
257-INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat) VALUES (8, 'ubuntutest', 'Ubuntu Test', 'Ubuntu Test', 'ubuntulinux.org', 17, '[publishing]
258+Environment as its default desktop after install.', 1, NULL, 1, NULL, false, false, NULL, 8, NULL, 1, NULL, NULL, '2006-10-16 18:31:43.420551', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL, NULL);
259+INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat, bug_reported_acknowledgement) VALUES (7, 'guadalinex', 'GuadaLinex: Linux for Andalucia', 'GuadaLinex is based on Ubuntu and adds full support for applications specific to the local environment in Andalucia.', 'guadalinex.es', 4, NULL, 'GuadaLinex', 'The GuadaLinex team produces a high quality linux for the Andalucian marketplace.', 32, NULL, 1, NULL, false, false, NULL, NULL, NULL, 4, NULL, NULL, '2006-10-16 18:31:43.421329', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL, NULL);
260+INSERT INTO distribution (id, name, title, description, domainname, owner, lucilleconfig, displayname, summary, members, translationgroup, translationpermission, bug_supervisor, official_malone, official_rosetta, security_contact, driver, translation_focus, mirror_admin, upload_admin, upload_sender, date_created, homepage_content, icon, mugshot, logo, fti, official_answers, language_pack_admin, official_blueprints, enable_bug_expiration, bug_reporting_guidelines, reviewer_whiteboard, max_bug_heat, bug_reported_acknowledgement) VALUES (8, 'ubuntutest', 'Ubuntu Test', 'Ubuntu Test', 'ubuntulinux.org', 17, '[publishing]
261 pendingremovalduration=5
262 root=/var/tmp/archive
263 archiveroot=/var/tmp/archive/ubuntutest
264@@ -2158,7 +2158,7 @@
265 overrideroot=/var/tmp/archive/ubuntutest-overrides
266 cacheroot=/var/tmp/archive/ubuntutest-cache
267 miscroot=/var/tmp/archive/ubuntutest-misc
268-', 'ubuntutest', 'Ubuntu Test summary', 17, NULL, 1, NULL, false, false, NULL, NULL, NULL, 17, NULL, NULL, '2006-10-16 18:31:43.422162', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL);
269+', 'ubuntutest', 'Ubuntu Test summary', 17, NULL, 1, NULL, false, false, NULL, NULL, NULL, 17, NULL, NULL, '2006-10-16 18:31:43.422162', NULL, NULL, NULL, NULL, NULL, false, NULL, false, false, NULL, NULL, NULL, NULL);
270
271
272 ALTER TABLE distribution ENABLE TRIGGER ALL;
273@@ -2166,24 +2166,24 @@
274
275 ALTER TABLE project DISABLE TRIGGER ALL;
276
277-INSERT 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, max_bug_heat) VALUES (1, 1, 'apache', 'Apache', 'Apache', 'The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field.', 'We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users.', '2004-09-24 20:58:00.633513', 'http://apache.org/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, NULL);
278-INSERT 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, max_bug_heat) VALUES (2, 2, 'do-not-use-info-imports', 'DO NOT USE', 'DO NOT USE', 'DO NOT USE', 'TEMPORARY project till mirror jobs are assigned to correct project', '2004-09-24 20:58:00.637677', 'http://arch.ubuntu.com/', NULL, NULL, NULL, NULL, true, false, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 2, NULL);
279-INSERT 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, max_bug_heat) VALUES (3, 2, 'launchpad-mirrors', 'Launchpad SCM Mirrors', 'The Launchpad Mirroring Project', 'launchpad mirrors various revision control archives, that mirroring is managed here', 'A project to mirror revision control archives into Arch.', '2004-09-24 20:58:00.65398', 'http://arch.ubuntu.com/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 2, NULL);
280-INSERT 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, max_bug_heat) VALUES (4, 12, 'mozilla', 'the Mozilla Project', 'The Mozilla Project', 'The Mozilla Project is the largest open source web browser collaborative project. Founded when Netscape released the source code to its pioneering browser in 1999, the Mozilla Project continues to set the standard for web browser technology.', 'The Mozilla Project produces several internet applications that are very widely used, and is also a center for collaboration on internet standards work by open source groups.
281+INSERT 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, max_bug_heat, bug_reported_acknowledgement) VALUES (1, 1, 'apache', 'Apache', 'Apache', 'The Apache projects are characterized by a collaborative, consensus based development process, an open and pragmatic software license, and a desire to create high quality software that leads the way in its field.', 'We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users.', '2004-09-24 20:58:00.633513', 'http://apache.org/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, NULL, NULL);
282+INSERT 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, max_bug_heat, bug_reported_acknowledgement) VALUES (2, 2, 'do-not-use-info-imports', 'DO NOT USE', 'DO NOT USE', 'DO NOT USE', 'TEMPORARY project till mirror jobs are assigned to correct project', '2004-09-24 20:58:00.637677', 'http://arch.ubuntu.com/', NULL, NULL, NULL, NULL, true, false, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 2, NULL, NULL);
283+INSERT 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, max_bug_heat, bug_reported_acknowledgement) VALUES (3, 2, 'launchpad-mirrors', 'Launchpad SCM Mirrors', 'The Launchpad Mirroring Project', 'launchpad mirrors various revision control archives, that mirroring is managed here', 'A project to mirror revision control archives into Arch.', '2004-09-24 20:58:00.65398', 'http://arch.ubuntu.com/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 2, NULL, NULL);
284+INSERT 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, max_bug_heat, bug_reported_acknowledgement) VALUES (4, 12, 'mozilla', 'the Mozilla Project', 'The Mozilla Project', 'The Mozilla Project is the largest open source web browser collaborative project. Founded when Netscape released the source code to its pioneering browser in 1999, the Mozilla Project continues to set the standard for web browser technology.', 'The Mozilla Project produces several internet applications that are very widely used, and is also a center for collaboration on internet standards work by open source groups.
285
286 The Project now has several popular products, including the Firefox web browser, the Thunderbird mail client and the libraries that enable them to run on many platforms.
287
288-Organisationally, the Mozilla Project is hosted by the Mozilla Foundation, a not-for-profit company incorporated in the US.', '2004-09-24 20:58:02.177698', 'http://www.mozilla.org/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 12, NULL);
289-INSERT 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, max_bug_heat) VALUES (5, 12, 'gnome', 'GNOME', 'The GNOME Project', 'The GNOME Project is an initiative to prduce a free desktop software framework. GNOME is more than a set of applications, it is a user interface standard (the Gnome HIG) and a set of libraries that allow applications to work together in a harmonious desktop-ish way.', 'The Gnome Project was founded (when?) to build on the success of early applications using the Gtk GUI toolkit. Many of those applications are still part of Gnome, and the Gtk toolkit remains an essential part of Gnome.
290-
291-Gnome applications cover the full spectrum from office productivity applications to games, digital camera applications, and of course the Gnome Panel which acts as a launcher and general access point for apps on the desktop.', '2004-09-24 20:58:02.222154', 'http://www.gnome.org/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, 2, NULL, NULL, NULL, NULL, NULL, NULL, 12, NULL);
292-INSERT 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, max_bug_heat) VALUES (6, 12, 'iso-codes-project', 'iso-codes', 'iso-codes', 'foo', 'bar', '2004-09-24 20:58:02.238443', 'http://www.gnome.org/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 12, NULL);
293-INSERT 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, max_bug_heat) VALUES (7, 16, 'aaa', 'the Test Project', 'The Test Project', 'This is a small project that has no purpose by to serve as a test data point. The only thing this project has ever produced is products, most of which are largely unheard of. This short description is long enough.', 'Of course, one can''t say enough about the Test Project. Not only is it always there, it''s often exactly in the same state that you saw it last. And it has an amazing ability to pop up in places where you just didn''t think you''d expect to find it. Very noticeable when you least want it noticed, that sort of thing.
294-
295-It would be very interesting to know whether this second paragraph of text about the test project is in fact rendered as a second paragraph, or if it all blurs together in a haze of testing. Only time will tell.', '2004-10-03 22:27:25.02843', 'http://www.testmenow.com', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 16, NULL);
296-INSERT 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, max_bug_heat) 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.
297-
298-The 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, NULL);
299+Organisationally, the Mozilla Project is hosted by the Mozilla Foundation, a not-for-profit company incorporated in the US.', '2004-09-24 20:58:02.177698', 'http://www.mozilla.org/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 12, NULL, NULL);
300+INSERT 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, max_bug_heat, bug_reported_acknowledgement) VALUES (5, 12, 'gnome', 'GNOME', 'The GNOME Project', 'The GNOME Project is an initiative to prduce a free desktop software framework. GNOME is more than a set of applications, it is a user interface standard (the Gnome HIG) and a set of libraries that allow applications to work together in a harmonious desktop-ish way.', 'The Gnome Project was founded (when?) to build on the success of early applications using the Gtk GUI toolkit. Many of those applications are still part of Gnome, and the Gtk toolkit remains an essential part of Gnome.
301+
302+Gnome applications cover the full spectrum from office productivity applications to games, digital camera applications, and of course the Gnome Panel which acts as a launcher and general access point for apps on the desktop.', '2004-09-24 20:58:02.222154', 'http://www.gnome.org/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, 2, NULL, NULL, NULL, NULL, NULL, NULL, 12, NULL, NULL);
303+INSERT 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, max_bug_heat, bug_reported_acknowledgement) VALUES (6, 12, 'iso-codes-project', 'iso-codes', 'iso-codes', 'foo', 'bar', '2004-09-24 20:58:02.238443', 'http://www.gnome.org/', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 12, NULL, NULL);
304+INSERT 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, max_bug_heat, bug_reported_acknowledgement) VALUES (7, 16, 'aaa', 'the Test Project', 'The Test Project', 'This is a small project that has no purpose by to serve as a test data point. The only thing this project has ever produced is products, most of which are largely unheard of. This short description is long enough.', 'Of course, one can''t say enough about the Test Project. Not only is it always there, it''s often exactly in the same state that you saw it last. And it has an amazing ability to pop up in places where you just didn''t think you''d expect to find it. Very noticeable when you least want it noticed, that sort of thing.
305+
306+It would be very interesting to know whether this second paragraph of text about the test project is in fact rendered as a second paragraph, or if it all blurs together in a haze of testing. Only time will tell.', '2004-10-03 22:27:25.02843', 'http://www.testmenow.com', NULL, NULL, NULL, NULL, false, true, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 16, NULL, NULL);
307+INSERT 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, max_bug_heat, bug_reported_acknowledgement) 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.
308+
309+The 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, NULL, NULL);
310
311
312 ALTER TABLE project ENABLE TRIGGER ALL;
313@@ -2191,31 +2191,31 @@
314
315 ALTER TABLE product DISABLE TRIGGER ALL;
316
317-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (1, 1, 17, 'tomcat', 'Tomcat', 'Tomcat', 'The servlet container that is used in the official Reference Implementation for the Java Servlet and JavaServer Pages technologies.', 'Apache Tomcat is developed in an open and participatory environment and released under the Apache Software License. This project has nothing to do with Ubuntu, but this description uses the word "Ubuntu" for the purpose of testing search results.', '2004-09-24 20:58:00.655518', 'http://tomcat.apache.org/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 16, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 17, NULL, NULL, NULL, NULL);
318-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (2, 2, 2, 'unassigned', 'unassigned syncs', 'unassigned syncs', 'syncs still not assigned to a real product', 'unassigned syncs, will not be processed, to be moved to real projects ASAP.', '2004-09-24 20:58:00.674409', 'http://archive.apache.org/dist/tomcat', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, true, false, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 17, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 2, NULL, NULL, NULL, NULL);
319-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (3, 3, 2, 'arch-mirrors', 'Arch mirrors', 'Arch archive mirrors', 'Arch Archive Mirroring project.', 'Arch archive full-archive mirror tasks', '2004-09-24 20:58:00.691047', 'http://arch.ubuntu.com/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 15, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 2, NULL, NULL, NULL, NULL);
320-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (4, 4, 12, 'firefox', 'Mozilla Firefox', 'Mozilla Firefox', 'The Mozilla Firefox web browser', 'The Mozilla Firefox web browser', '2004-09-24 20:58:02.185708', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, 1, 100, false, true, NULL, NULL, NULL, NULL, 1, NULL, NULL, NULL, NULL, true, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
321-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (5, 5, 12, 'evolution', 'Evolution', 'The Evolution Groupware Application', 'Evolution is an email client, addressbook and calendar application that is very well integrated with the Gnome desktop. Evolution is the standard mail client in the Ubuntu distribution, and supports all current mail system standards.', 'Recently, Evolution has seen significant work to make it interoperable with the proprietary Microsoft Exchange Server protocols and formats, allowing organisations to replace Outlook on Windows with Evolution and Linux.
322-
323-The current stable release series of Evolution is 2.0.', '2004-09-24 20:58:02.240163', 'http://www.gnome.org/evolution/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, 1, 100, true, true, NULL, NULL, NULL, NULL, 3, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
324-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (6, 5, 12, 'gnome-terminal', 'GNOME Terminal', 'The GNOME Terminal Emulator', 'Gnome Terminal is a simple terminal application for your Gnome desktop. It allows quick access to console applications, supports all console types, and has many useful features such as tabbed consoles (many consoles in a single window with quick switching between them).', 'The Gnome Terminal application fully supports Gnome 2 and is a standard part of the Gnome Desktop.', '2004-09-24 20:58:02.256678', 'http://www.gnome.org/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, 2, 14, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, 'gnome-terminal', NULL, NULL, NULL);
325-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (7, 6, 12, 'iso-codes', 'iso-codes', 'The iso-codes', 'foo', 'bar', '2004-09-24 20:58:02.258743', 'http://www.novell.com/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 13, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
326-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (8, 4, 12, 'thunderbird', 'Mozilla Thunderbird', 'Mozilla Thunderbird', 'The Mozilla Thunderbird email client', 'The Mozilla Thunderbird email client', '2004-09-24 20:58:04.478988', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 4, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
327-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (9, 5, 16, 'applets', 'Gnome Applets', 'The Gnome Panel Applets', 'The Gnome Panel Applets are a collection of standard widgets that can be installed on your desktop Panel. These icons act as launchers for applications, or indicators of the status of your machine. For example, panel applets exist to show you your battery status or wifi network signal strength.', 'This is the collection of Panel Applets that is part of the default Gnome release. Additional Panel Applets are available from third parties. A complete set of Panel Applets is included in the Ubuntu OS, for example.
328-
329-The Gnome Panel team includes Abel Kascinsky, Frederick Wurst and Andreas Andropovitch Axelsson.', '2004-10-03 16:46:09.113721', 'http://www.gnome.org/panel/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 12, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 16, NULL, NULL, NULL, NULL);
330-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (10, NULL, 2, 'python-gnome2-dev', 'python gnome2 dev', 'python gnome2 dev', 'Python bindings for the GNOME desktop environment', 'Python bindings for the GNOME desktop environment', '2004-09-24 20:58:00.674409', 'http://www.daa.com.au/~james/software/pygtk/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, true, false, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 18, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 2, NULL, NULL, NULL, NULL);
331-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (11, 5, 12, 'netapplet', 'NetApplet', 'Network Applet', 'The Novell Network Applet', 'Displays current network status and allows network switching', '2005-03-10 16:00:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 5, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
332-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (12, NULL, 16, 'a52dec', 'a52dec', 'Liba52 Test Decoder', 'a52dec is a test program for liba52.', 'This tool decodes ATSC A/52 streams, and also includes a demultiplexer for mpeg-1 and mpeg-2 program streams. The liba52 source code is always distributed in the a52dec package, to make sure it easier for people to test it.', '2005-04-14 00:00:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 6, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 16, NULL, NULL, NULL, NULL);
333-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (13, 5, 16, 'gnomebaker', 'gnomebaker', 'Gnome Baker', 'Gnome Baker is a CD burning application', 'Gnome Baker burns CDs like there''s no tomorrow', '2005-08-26 00:00:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 11, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 16, NULL, NULL, NULL, NULL);
334-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (14, NULL, 12, 'bazaar', 'Bazaar', 'Bazaar', 'Bazaar is a distributed revision control system', 'Bazaar is all about source control and double-dashes.', '2005-08-26 00:00:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 10, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
335-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (15, NULL, 1, 'alsa-utils', 'alsa-utils', 'ALSA utilities', 'Utilities for configurating and using the Advanced Linux Sound Architecture', '', '2005-09-15 09:05:11.472752', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, true, true, NULL, false, NULL, 1, true, false, NULL, NULL, NULL, NULL, 8, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 1, NULL, NULL, NULL, NULL);
336-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (16, NULL, 12, 'landscape', 'The Landscape Project', 'The Landscape Project', 'Landscape is a system being developed by Canonical to allow remote management of systems using a web interface.', 'Landscape is a system being developed by Canonical to allow remote management of systems using a web interface. The scope of the project isn''t limited, and will grow up as new features are planned.
337-
338-The Landscape system consists of two major parts: a client daemon which delivers information to the server and acts on server-provided requests; and a web server responsible for handling communication with clients and the user interface itself.', '2006-07-11 19:59:17.311451', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, true, 64, NULL, NULL, NULL, 9, NULL, NULL, NULL, NULL, false, true, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
339-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (17, NULL, 12, 'launchpad', 'Launchpad', 'Launchpad', 'Launchpad is a catalogue of libre software projects and products. Projects registered in the Launchpad are linked to their translations in Rosetta, their bugs in Malone, their RCS imports in Bazaar, and their packages in Soyuz.', 'Launchpad''s design is inspired by the Description of a Project (DOAP) framework by Edd Dumbill, with extensions for actual releases of products.', '2006-11-24 12:48:19.178553', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, true, NULL, NULL, NULL, NULL, 19, NULL, NULL, NULL, NULL, true, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
340-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (18, NULL, 37, 'upstart', 'Upstart', 'The Upstart System Initialisation Process', 'Event-based init daemon.', 'upstart is a replacement for the /sbin/init daemon which handles starting of tasks and services during boot, stopping them during shutdown and supervising them while the system is running.', '2007-03-14 18:47:04.891546', 'http://upstart.ubuntu.com/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 20, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 37, NULL, NULL, NULL, NULL);
341-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (19, NULL, 28, 'aptoncd', 'APTonCD', 'APTonCD, Get APT Anywhere', 'A simple yet powerful tool which allows you to create one (or more) CD/DVD-Repository containing all of the packages downloaded via apt-get or aptitude.', 'A GUI-based tool that allows you to create a CD/DVD with all downloaded packages with APT-GET, creating a removable-repository.
342+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (1, 1, 17, 'tomcat', 'Tomcat', 'Tomcat', 'The servlet container that is used in the official Reference Implementation for the Java Servlet and JavaServer Pages technologies.', 'Apache Tomcat is developed in an open and participatory environment and released under the Apache Software License. This project has nothing to do with Ubuntu, but this description uses the word "Ubuntu" for the purpose of testing search results.', '2004-09-24 20:58:00.655518', 'http://tomcat.apache.org/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 16, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 17, NULL, NULL, NULL, NULL, NULL);
343+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (2, 2, 2, 'unassigned', 'unassigned syncs', 'unassigned syncs', 'syncs still not assigned to a real product', 'unassigned syncs, will not be processed, to be moved to real projects ASAP.', '2004-09-24 20:58:00.674409', 'http://archive.apache.org/dist/tomcat', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, true, false, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 17, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 2, NULL, NULL, NULL, NULL, NULL);
344+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (3, 3, 2, 'arch-mirrors', 'Arch mirrors', 'Arch archive mirrors', 'Arch Archive Mirroring project.', 'Arch archive full-archive mirror tasks', '2004-09-24 20:58:00.691047', 'http://arch.ubuntu.com/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 15, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 2, NULL, NULL, NULL, NULL, NULL);
345+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (4, 4, 12, 'firefox', 'Mozilla Firefox', 'Mozilla Firefox', 'The Mozilla Firefox web browser', 'The Mozilla Firefox web browser', '2004-09-24 20:58:02.185708', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, 1, 100, false, true, NULL, NULL, NULL, NULL, 1, NULL, NULL, NULL, NULL, true, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
346+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (5, 5, 12, 'evolution', 'Evolution', 'The Evolution Groupware Application', 'Evolution is an email client, addressbook and calendar application that is very well integrated with the Gnome desktop. Evolution is the standard mail client in the Ubuntu distribution, and supports all current mail system standards.', 'Recently, Evolution has seen significant work to make it interoperable with the proprietary Microsoft Exchange Server protocols and formats, allowing organisations to replace Outlook on Windows with Evolution and Linux.
347+
348+The current stable release series of Evolution is 2.0.', '2004-09-24 20:58:02.240163', 'http://www.gnome.org/evolution/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, 1, 100, true, true, NULL, NULL, NULL, NULL, 3, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
349+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (6, 5, 12, 'gnome-terminal', 'GNOME Terminal', 'The GNOME Terminal Emulator', 'Gnome Terminal is a simple terminal application for your Gnome desktop. It allows quick access to console applications, supports all console types, and has many useful features such as tabbed consoles (many consoles in a single window with quick switching between them).', 'The Gnome Terminal application fully supports Gnome 2 and is a standard part of the Gnome Desktop.', '2004-09-24 20:58:02.256678', 'http://www.gnome.org/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, 2, 14, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, 'gnome-terminal', NULL, NULL, NULL, NULL);
350+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (7, 6, 12, 'iso-codes', 'iso-codes', 'The iso-codes', 'foo', 'bar', '2004-09-24 20:58:02.258743', 'http://www.novell.com/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 13, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
351+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (8, 4, 12, 'thunderbird', 'Mozilla Thunderbird', 'Mozilla Thunderbird', 'The Mozilla Thunderbird email client', 'The Mozilla Thunderbird email client', '2004-09-24 20:58:04.478988', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 4, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
352+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (9, 5, 16, 'applets', 'Gnome Applets', 'The Gnome Panel Applets', 'The Gnome Panel Applets are a collection of standard widgets that can be installed on your desktop Panel. These icons act as launchers for applications, or indicators of the status of your machine. For example, panel applets exist to show you your battery status or wifi network signal strength.', 'This is the collection of Panel Applets that is part of the default Gnome release. Additional Panel Applets are available from third parties. A complete set of Panel Applets is included in the Ubuntu OS, for example.
353+
354+The Gnome Panel team includes Abel Kascinsky, Frederick Wurst and Andreas Andropovitch Axelsson.', '2004-10-03 16:46:09.113721', 'http://www.gnome.org/panel/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 12, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 16, NULL, NULL, NULL, NULL, NULL);
355+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (10, NULL, 2, 'python-gnome2-dev', 'python gnome2 dev', 'python gnome2 dev', 'Python bindings for the GNOME desktop environment', 'Python bindings for the GNOME desktop environment', '2004-09-24 20:58:00.674409', 'http://www.daa.com.au/~james/software/pygtk/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, true, false, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 18, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 2, NULL, NULL, NULL, NULL, NULL);
356+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (11, 5, 12, 'netapplet', 'NetApplet', 'Network Applet', 'The Novell Network Applet', 'Displays current network status and allows network switching', '2005-03-10 16:00:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 5, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
357+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (12, NULL, 16, 'a52dec', 'a52dec', 'Liba52 Test Decoder', 'a52dec is a test program for liba52.', 'This tool decodes ATSC A/52 streams, and also includes a demultiplexer for mpeg-1 and mpeg-2 program streams. The liba52 source code is always distributed in the a52dec package, to make sure it easier for people to test it.', '2005-04-14 00:00:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 6, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 16, NULL, NULL, NULL, NULL, NULL);
358+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (13, 5, 16, 'gnomebaker', 'gnomebaker', 'Gnome Baker', 'Gnome Baker is a CD burning application', 'Gnome Baker burns CDs like there''s no tomorrow', '2005-08-26 00:00:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 11, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 16, NULL, NULL, NULL, NULL, NULL);
359+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (14, NULL, 12, 'bazaar', 'Bazaar', 'Bazaar', 'Bazaar is a distributed revision control system', 'Bazaar is all about source control and double-dashes.', '2005-08-26 00:00:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 10, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
360+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (15, NULL, 1, 'alsa-utils', 'alsa-utils', 'ALSA utilities', 'Utilities for configurating and using the Advanced Linux Sound Architecture', '', '2005-09-15 09:05:11.472752', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, true, true, NULL, false, NULL, 1, true, false, NULL, NULL, NULL, NULL, 8, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 1, NULL, NULL, NULL, NULL, NULL);
361+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (16, NULL, 12, 'landscape', 'The Landscape Project', 'The Landscape Project', 'Landscape is a system being developed by Canonical to allow remote management of systems using a web interface.', 'Landscape is a system being developed by Canonical to allow remote management of systems using a web interface. The scope of the project isn''t limited, and will grow up as new features are planned.
362+
363+The Landscape system consists of two major parts: a client daemon which delivers information to the server and acts on server-provided requests; and a web server responsible for handling communication with clients and the user interface itself.', '2006-07-11 19:59:17.311451', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, true, 64, NULL, NULL, NULL, 9, NULL, NULL, NULL, NULL, false, true, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
364+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (17, NULL, 12, 'launchpad', 'Launchpad', 'Launchpad', 'Launchpad is a catalogue of libre software projects and products. Projects registered in the Launchpad are linked to their translations in Rosetta, their bugs in Malone, their RCS imports in Bazaar, and their packages in Soyuz.', 'Launchpad''s design is inspired by the Description of a Project (DOAP) framework by Edd Dumbill, with extensions for actual releases of products.', '2006-11-24 12:48:19.178553', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, true, NULL, NULL, NULL, NULL, 19, NULL, NULL, NULL, NULL, true, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
365+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (18, NULL, 37, 'upstart', 'Upstart', 'The Upstart System Initialisation Process', 'Event-based init daemon.', 'upstart is a replacement for the /sbin/init daemon which handles starting of tasks and services during boot, stopping them during shutdown and supervising them while the system is running.', '2007-03-14 18:47:04.891546', 'http://upstart.ubuntu.com/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 20, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 37, NULL, NULL, NULL, NULL, NULL);
366+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (19, NULL, 28, 'aptoncd', 'APTonCD', 'APTonCD, Get APT Anywhere', 'A simple yet powerful tool which allows you to create one (or more) CD/DVD-Repository containing all of the packages downloaded via apt-get or aptitude.', 'A GUI-based tool that allows you to create a CD/DVD with all downloaded packages with APT-GET, creating a removable-repository.
367
368 With aptoncd you can:
369 * Create a CD/DVD with all downloaded packages
370@@ -2224,23 +2224,23 @@
371 * Upgrade a lot of computers with same DVD
372 * And more is expected...
373
374-In the "Create APTonCD" feature we have the possibility to make a CD/DVD with all previously downloaded packages with apt-get or aptitude. It uses apt-cache (/var/cache/apt/archives) and scans for packages and makes a repository in one (or more) CD/DVD, exactly as the previous option.', '2007-03-14 18:53:13.112116', 'http://aptoncd.sourceforge.net/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 21, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 28, NULL, NULL, NULL, NULL);
375-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (20, NULL, 14, 'jokosher', 'Jokosher', 'Jokosher Audio Editor', 'Jokosher is a simple yet powerful multi-track studio. With it you can create and record music, podcasts and more, all from an integrated simple environment.', 'Jokosher brings together many sources of audio into a seamless environment where you can record, mix and publish your audio content.', '2007-03-15 20:11:49.501871', 'http://www.jokosher.org/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, true, NULL, NULL, NULL, NULL, 22, NULL, NULL, NULL, NULL, false, false, false, NULL, false, true, NULL, NULL, false, false, 14, NULL, NULL, NULL, NULL);
376-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (21, NULL, 12, 'bzr', 'Bazaar', 'Bazaar Version Control System', 'Bazaar is a distributed revision control system. It allows team members to branch and merge upstream code very easily. Most importantly, it is very robust in handling renames so that merges across radical restructurings of the tree are efficient and correct.', 'Bazaar aims to be a distributed RCS system that the open source community loves to use.
377+In the "Create APTonCD" feature we have the possibility to make a CD/DVD with all previously downloaded packages with apt-get or aptitude. It uses apt-cache (/var/cache/apt/archives) and scans for packages and makes a repository in one (or more) CD/DVD, exactly as the previous option.', '2007-03-14 18:53:13.112116', 'http://aptoncd.sourceforge.net/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 21, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 28, NULL, NULL, NULL, NULL, NULL);
378+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (20, NULL, 14, 'jokosher', 'Jokosher', 'Jokosher Audio Editor', 'Jokosher is a simple yet powerful multi-track studio. With it you can create and record music, podcasts and more, all from an integrated simple environment.', 'Jokosher brings together many sources of audio into a seamless environment where you can record, mix and publish your audio content.', '2007-03-15 20:11:49.501871', 'http://www.jokosher.org/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, true, NULL, NULL, NULL, NULL, 22, NULL, NULL, NULL, NULL, false, false, false, NULL, false, true, NULL, NULL, false, false, 14, NULL, NULL, NULL, NULL, NULL);
379+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (21, NULL, 12, 'bzr', 'Bazaar', 'Bazaar Version Control System', 'Bazaar is a distributed revision control system. It allows team members to branch and merge upstream code very easily. Most importantly, it is very robust in handling renames so that merges across radical restructurings of the tree are efficient and correct.', 'Bazaar aims to be a distributed RCS system that the open source community loves to use.
380
381-Distributed revision control systems allow multiple people to have their own branch of a project, and merge code efficiently between them. This enables new contributors to immediately have access to the full tools that previously have been limited to just the committers to a project.', '2007-03-27 16:28:27.763632', 'http://bazaar-vcs.org/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 23, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
382-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (22, NULL, 12, 'redfish', 'Redfish', 'Redfish', 'The redfish project.', 'The redfish project.', '2007-04-18 20:58:56.846607', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, true, 64, NULL, NULL, NULL, 24, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL);
383-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (23, 1, 1, 'derby', 'Derby', 'Derby - Java Database', 'Apache Derby, an Apache DB subproject, is an open source relational database implemented entirely in Java and available under the Apache License, Version 2.0.', 'Some key advantages include:
384+Distributed revision control systems allow multiple people to have their own branch of a project, and merge code efficiently between them. This enables new contributors to immediately have access to the full tools that previously have been limited to just the committers to a project.', '2007-03-27 16:28:27.763632', 'http://bazaar-vcs.org/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 23, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
385+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (22, NULL, 12, 'redfish', 'Redfish', 'Redfish', 'The redfish project.', 'The redfish project.', '2007-04-18 20:58:56.846607', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, true, 64, NULL, NULL, NULL, 24, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 12, NULL, NULL, NULL, NULL, NULL);
386+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (23, 1, 1, 'derby', 'Derby', 'Derby - Java Database', 'Apache Derby, an Apache DB subproject, is an open source relational database implemented entirely in Java and available under the Apache License, Version 2.0.', 'Some key advantages include:
387
388 * Derby has a small footprint -- about 2 megabytes for the base engine and embedded JDBC driver.
389 * Derby is based on the Java, JDBC, and SQL standards.
390 * Derby provides an embedded JDBC driver that lets you embed Derby in any Java-based solution.
391 * Derby also supports the more familiar client/server mode with the Derby Network Client JDBC driver and Derby Network Server.
392 * Derby is easy to install, deploy, and use.
393-', '2007-11-19 12:44:30.603892', 'http://db.apache.org/derby/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 25, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 1, NULL, NULL, NULL, NULL);
394-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (24, NULL, 243623, 'mega-money-maker', 'Mega Money Maker', 'Sample Commercial Project', 'Proprietary project', NULL, '2008-06-27 14:51:47.366199', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 26, NULL, NULL, NULL, NULL, false, false, false, 'All rights reserved. Not free.', false, false, NULL, NULL, false, false, 243623, NULL, NULL, NULL, NULL);
395-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (25, NULL, 16, 'rosetta', 'Launchpad Translations', 'The translations part of Launchpad', 'Here you can translate your project into other spoken languages.', NULL, '2008-10-02 10:12:40.909504', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, true, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 27, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 16, NULL, NULL, NULL, NULL);
396-INSERT 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, max_bug_heat, date_next_suggest_packaging) VALUES (26, NULL, 16, 'obsolete-junk', 'Obsolete Junk', 'The Great Mass of Obsolete Junk', 'If you have junk that you don''t want clogging up your product, dump it here.', NULL, '2009-05-02 21:33:15.310312', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, true, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 28, NULL, NULL, NULL, NULL, false, false, false, '(We have them all because we are junk. Junk. Junk I tell you.)', false, false, NULL, NULL, false, true, 16, NULL, NULL, NULL, NULL);
397+', '2007-11-19 12:44:30.603892', 'http://db.apache.org/derby/', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 25, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 1, NULL, NULL, NULL, NULL, NULL);
398+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (24, NULL, 243623, 'mega-money-maker', 'Mega Money Maker', 'Sample Commercial Project', 'Proprietary project', NULL, '2008-06-27 14:51:47.366199', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, false, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 26, NULL, NULL, NULL, NULL, false, false, false, 'All rights reserved. Not free.', false, false, NULL, NULL, false, false, 243623, NULL, NULL, NULL, NULL, NULL);
399+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (25, NULL, 16, 'rosetta', 'Launchpad Translations', 'The translations part of Launchpad', 'Here you can translate your project into other spoken languages.', NULL, '2008-10-02 10:12:40.909504', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, true, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 27, NULL, NULL, NULL, NULL, false, false, false, NULL, false, false, NULL, NULL, false, false, 16, NULL, NULL, NULL, NULL, NULL);
400+INSERT 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, max_bug_heat, date_next_suggest_packaging, bug_reported_acknowledgement) VALUES (26, NULL, 16, 'obsolete-junk', 'Obsolete Junk', 'The Great Mass of Obsolete Junk', 'If you have junk that you don''t want clogging up your product, dump it here.', NULL, '2009-05-02 21:33:15.310312', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, true, true, NULL, false, NULL, 1, false, false, NULL, NULL, NULL, NULL, 28, NULL, NULL, NULL, NULL, false, false, false, '(We have them all because we are junk. Junk. Junk I tell you.)', false, false, NULL, NULL, false, true, 16, NULL, NULL, NULL, NULL, NULL);
401
402
403 ALTER TABLE product ENABLE TRIGGER ALL;
404@@ -3896,6 +3896,13 @@
405 ALTER TABLE cvereference ENABLE TRIGGER ALL;
406
407
408+ALTER TABLE databasecpustats DISABLE TRIGGER ALL;
409+
410+
411+
412+ALTER TABLE databasecpustats ENABLE TRIGGER ALL;
413+
414+
415 ALTER TABLE databasereplicationlag DISABLE TRIGGER ALL;
416
417
418@@ -3903,6 +3910,13 @@
419 ALTER TABLE databasereplicationlag ENABLE TRIGGER ALL;
420
421
422+ALTER TABLE databasetablestats DISABLE TRIGGER ALL;
423+
424+
425+
426+ALTER TABLE databasetablestats ENABLE TRIGGER ALL;
427+
428+
429 ALTER TABLE distributionbounty DISABLE TRIGGER ALL;
430
431 INSERT INTO distributionbounty (id, bounty, distribution, date_created) VALUES (1, 1, 1, '2006-10-16 18:31:43.430161');
432
433=== modified file 'database/schema/comments.sql'
434--- database/schema/comments.sql 2010-05-27 13:23:10 +0000
435+++ database/schema/comments.sql 2010-05-28 03:34:30 +0000
436@@ -1348,7 +1348,6 @@
437 COMMENT ON TABLE SourcePackageRecipe IS 'A recipe for assembling a source package from branches.';
438 COMMENT ON COLUMN SourcePackageRecipe.registrant IS 'The person who created this recipe.';
439 COMMENT ON COLUMN SourcePackageRecipe.owner IS 'The person or team who can edit this recipe.';
440-COMMENT ON COLUMN SourcePackageRecipe.sourcepackagename IS 'The name of the source package this recipe builds.';
441 COMMENT ON COLUMN SourcePackageRecipe.name IS 'The name of the recipe in the web/URL.';
442 COMMENT ON COLUMN SourcePackageRecipe.build_daily IS 'If true, this recipe should be built daily.';
443
444@@ -1364,7 +1363,6 @@
445
446 COMMENT ON TABLE SourcePackageRecipeBuild IS 'The build record for the process of building a source package as described by a recipe.';
447 COMMENT ON COLUMN SourcePackageRecipeBuild.distroseries IS 'The distroseries the build was for.';
448-COMMENT ON COLUMN SourcePackageRecipeBuild.sourcepackagename IS 'The name of the source package that was built.';
449 COMMENT ON COLUMN SourcePackageRecipeBuild.build_state IS 'The state of the build.';
450 COMMENT ON COLUMN SourcePackageRecipeBuild.date_built IS 'When the build record was processed.';
451 COMMENT ON COLUMN SourcePackageRecipeBuild.build_duration IS 'How long this build took to be processed.';
452
453=== added file 'database/schema/patch-2207-58-0.sql'
454--- database/schema/patch-2207-58-0.sql 1970-01-01 00:00:00 +0000
455+++ database/schema/patch-2207-58-0.sql 2010-05-28 03:34:30 +0000
456@@ -0,0 +1,12 @@
457+-- Copyright 2010 Canonical Ltd. This software is licensed under the
458+-- GNU Affero General Public License version 3 (see the file LICENSE).
459+
460+SET client_min_messages=ERROR;
461+
462+ALTER TABLE SourcePackageRecipe
463+ DROP COLUMN sourcepackagename;
464+
465+ALTER TABLE SourcePackageRecipeBuild
466+ DROP COLUMN sourcepackagename;
467+
468+INSERT INTO LaunchpadDatabaseRevision VALUES (2207, 58, 0);
469
470=== modified file 'lib/canonical/config/__init__.py'
471--- lib/canonical/config/__init__.py 2010-03-24 17:37:26 +0000
472+++ lib/canonical/config/__init__.py 2010-05-28 03:34:30 +0000
473@@ -384,6 +384,10 @@
474
475 @property
476 def main_master(self):
477+ # Its a bit silly having ro_main_master and rw_main_master.
478+ # rw_main_master will never be used, as read-only-mode will
479+ # fail attempts to access the master database with a
480+ # ReadOnlyModeDisallowedStore exception.
481 if is_read_only():
482 return self.ro_main_master
483 else:
484
485=== modified file 'lib/canonical/launchpad/readonly.py'
486--- lib/canonical/launchpad/readonly.py 2010-01-14 13:25:34 +0000
487+++ lib/canonical/launchpad/readonly.py 2010-05-28 03:34:30 +0000
488@@ -47,7 +47,7 @@
489 request's annotations for a read-only key
490 (READ_ONLY_MODE_ANNOTATIONS_KEY), and if it exists we'll just return its
491 value.
492-
493+
494 If there's no request or the key doesn't exist, we check for the presence
495 of a read-only.txt file in the root of our tree, set the read-only key in
496 the request's annotations (when there is a request), update
497
498=== modified file 'lib/canonical/launchpad/webapp/configure.zcml'
499--- lib/canonical/launchpad/webapp/configure.zcml 2010-05-26 08:53:13 +0000
500+++ lib/canonical/launchpad/webapp/configure.zcml 2010-05-28 03:34:30 +0000
501@@ -535,6 +535,12 @@
502 name="fmt"
503 />
504 <adapter
505+ for="lp.soyuz.interfaces.packagediff.IPackageDiff"
506+ provides="zope.traversing.interfaces.IPathAdapter"
507+ factory="canonical.launchpad.webapp.tales.PackageDiffFormatterAPI"
508+ name="fmt"
509+ />
510+ <adapter
511 for="*"
512 provides="zope.traversing.interfaces.IPathAdapter"
513 factory="canonical.launchpad.webapp.tales.PermissionRequiredQuery"
514
515=== modified file 'lib/canonical/launchpad/webapp/publication.py'
516--- lib/canonical/launchpad/webapp/publication.py 2010-04-14 07:38:55 +0000
517+++ lib/canonical/launchpad/webapp/publication.py 2010-05-28 03:34:30 +0000
518@@ -167,24 +167,28 @@
519 transaction.begin()
520
521 db_policy = IDatabasePolicy(request)
522- if not isinstance(db_policy, DatabaseBlockedPolicy):
523- # Database access is not blocked, so make sure our stores point to
524- # the appropriate databases, according to the mode we're on.
525- main_master_store = getUtility(IStoreSelector).get(
526- MAIN_STORE, MASTER_FLAVOR)
527- # XXX: 2009-01-12, salgado, bug=506536: We shouldn't need to go
528- # through private attributes to get to the store's database.
529- dsn = main_master_store._connection._database.dsn_without_user
530- if dsn.strip() != dbconfig.main_master.strip():
531- # Remove the stores from zstorm to force them to be
532- # re-created, thus using the correct databases for the mode
533- # we're on right now.
534- main_slave_store = getUtility(IStoreSelector).get(
535- MAIN_STORE, SLAVE_FLAVOR)
536- zstorm = getUtility(IZStorm)
537- for store in [main_master_store, main_slave_store]:
538- zstorm.remove(store)
539- store.close()
540+
541+ # If we have switched to or from read-only mode, we need to
542+ # disconnect all Stores for this thread. We don't want the
543+ # appserver to leave dangling connections as this will interfere
544+ # with database maintenance.
545+ # We don't disconnect Stores for threads currently handling
546+ # requests. That would generate unreproducable OOPSes. This
547+ # isn't a problem, as our requests should complete soon or
548+ # timeout. Unfortunately, there is no way to disconnect Stores
549+ # for idle threads. This means connections are left dangling
550+ # until the appserver has processed as many requests as there
551+ # are worker threads. We will be able to handle this better
552+ # when we have a connection pool.
553+ was_read_only = getattr(self.thread_locals, 'was_read_only', None)
554+ if was_read_only is not None and was_read_only != is_read_only():
555+ zstorm = getUtility(IZStorm)
556+ for name, store in list(zstorm.iterstores()):
557+ zstorm.remove(store)
558+ store.close()
559+ # is_read_only() is cached for the entire request, so there
560+ # is no race condition here.
561+ self.thread_locals.was_read_only = is_read_only()
562
563 # Now we are logged in, install the correct IDatabasePolicy for
564 # this request.
565
566=== modified file 'lib/canonical/launchpad/webapp/tales.py'
567--- lib/canonical/launchpad/webapp/tales.py 2010-05-26 08:53:13 +0000
568+++ lib/canonical/launchpad/webapp/tales.py 2010-05-28 03:34:30 +0000
569@@ -2460,3 +2460,16 @@
570 def displayname(self, view_name, rootsite=None):
571 """Return the displayname as a string."""
572 return self._context.title
573+
574+
575+class PackageDiffFormatterAPI(ObjectFormatterAPI):
576+ def link(self, view_name, rootsite=None):
577+ diff = self._context
578+ if not diff.date_fulfilled:
579+ return '%s (pending)' % cgi.escape(diff.title)
580+ else:
581+ file_size = NumberFormatterAPI(
582+ diff.diff_content.content.filesize).bytes()
583+ return '<a href="%s">%s</a> (%s)' % (
584+ cgi.escape(diff.diff_content.http_url),
585+ cgi.escape(diff.title), file_size)
586
587=== modified file 'lib/canonical/launchpad/webapp/tests/test_publication.py'
588--- lib/canonical/launchpad/webapp/tests/test_publication.py 2010-03-04 23:00:12 +0000
589+++ lib/canonical/launchpad/webapp/tests/test_publication.py 2010-05-28 03:34:30 +0000
590@@ -98,6 +98,14 @@
591 self.slave_connection = slave._connection
592 self.zstorm = getUtility(IZStorm)
593 self.publication = LaunchpadBrowserPublication(None)
594+ # Run through once to initialize. beforeTraversal will never
595+ # disconnect Stores the first run through because there is no
596+ # need.
597+ request = LaunchpadTestRequest()
598+ self.publication.beforeTraversal(request)
599+ self.publication.endRequest(request, None)
600+ getUtility(IStoreSelector).pop()
601+
602 self.request = LaunchpadTestRequest()
603
604 @property
605
606=== modified file 'lib/lp/archiveuploader/nascentupload.py'
607--- lib/lp/archiveuploader/nascentupload.py 2010-05-19 15:39:52 +0000
608+++ lib/lp/archiveuploader/nascentupload.py 2010-05-28 03:34:30 +0000
609@@ -920,7 +920,7 @@
610 diff = to_sourcepackagerelease.requestDiffTo(
611 sourcepackagerelease.creator, sourcepackagerelease)
612 self.logger.debug(
613- 'Package diff for %s from %s requested' % (
614+ '%s %s requested' % (
615 diff.from_source.name, diff.title))
616
617 if self.binaryful:
618
619=== modified file 'lib/lp/archiveuploader/tests/test_recipeuploads.py'
620--- lib/lp/archiveuploader/tests/test_recipeuploads.py 2010-05-04 15:38:08 +0000
621+++ lib/lp/archiveuploader/tests/test_recipeuploads.py 2010-05-28 03:34:30 +0000
622@@ -32,9 +32,9 @@
623
624 self.recipe = self.factory.makeSourcePackageRecipe()
625 self.build = getUtility(ISourcePackageRecipeBuildSource).new(
626- sourcepackage=self.factory.makeSourcePackage(
627- sourcepackagename='bar', distroseries=self.breezy),
628- recipe=self.recipe, archive=self.factory.makeArchive(
629+ distroseries=self.breezy,
630+ recipe=self.recipe,
631+ archive=self.factory.makeArchive(
632 distribution=self.ubuntu, owner=self.recipe.owner),
633 requester=self.recipe.owner)
634
635
636=== modified file 'lib/lp/buildmaster/manager.py'
637--- lib/lp/buildmaster/manager.py 2010-04-23 15:03:02 +0000
638+++ lib/lp/buildmaster/manager.py 2010-05-28 03:34:30 +0000
639@@ -201,7 +201,10 @@
640 builder = getUtility(IBuilderSet)[self.slave.name]
641 # Builders that fail to reset should be disabled as per bug
642 # 563353.
643- builder.failBuilder(self.info)
644+ # XXX Julian bug=586362
645+ # This is disabled until this code is not also used for dispatch
646+ # failures where we *don't* want to disable the builder.
647+ # builder.failBuilder(self.info)
648 self._cleanJob(builder.currentjob)
649
650
651
652=== modified file 'lib/lp/buildmaster/tests/test_buildqueue.py'
653--- lib/lp/buildmaster/tests/test_buildqueue.py 2010-05-20 13:12:04 +0000
654+++ lib/lp/buildmaster/tests/test_buildqueue.py 2010-05-28 03:34:30 +0000
655@@ -46,7 +46,7 @@
656 for build in test.builds:
657 bq = build.buildqueue_record
658 source = None
659- for attr in ('source_package_release', 'sourcepackagename'):
660+ for attr in ('source_package_release', 'recipe'):
661 source = getattr(build, attr, None)
662 if source is not None:
663 break
664@@ -601,7 +601,7 @@
665
666 # The following job can only run on a native builder.
667 job = self.factory.makeSourcePackageRecipeBuildJob(
668- estimated_duration=111, sourcename='xxr-gftp', score=1055,
669+ estimated_duration=111, sourcename=u'xxr-gftp', score=1055,
670 virtualized=False)
671 self.builds.append(job.specific_job.build)
672
673@@ -1003,11 +1003,11 @@
674
675 job = self.factory.makeSourcePackageRecipeBuildJob(
676 virtualized=False, estimated_duration=22,
677- sourcename='xx-recipe-bash', score=1025)
678+ sourcename=u'xx-recipe-bash', score=1025)
679 self.builds.append(job.specific_job.build)
680 job = self.factory.makeSourcePackageRecipeBuildJob(
681 virtualized=False, estimated_duration=222,
682- sourcename='xx-recipe-zsh', score=1053)
683+ sourcename=u'xx-recipe-zsh', score=1053)
684 self.builds.append(job.specific_job.build)
685
686 # Assign the same score to the '386' vim and apg build jobs.
687@@ -1104,7 +1104,7 @@
688 removeSecurityProxy(bq).virtualized = True
689 job = self.factory.makeSourcePackageRecipeBuildJob(
690 virtualized=True, estimated_duration=332,
691- sourcename='xxr-openssh-client', score=1050)
692+ sourcename=u'xxr-openssh-client', score=1050)
693 self.builds.append(job.specific_job.build)
694 # print_build_setup(self.builds)
695 # ...
696@@ -1125,7 +1125,7 @@
697 # Now add a job with a NULL 'virtualized' flag. It should be treated
698 # like jobs with virtualized=TRUE.
699 job = self.factory.makeSourcePackageRecipeBuildJob(
700- estimated_duration=111, sourcename='xxr-gwibber', score=1051,
701+ estimated_duration=111, sourcename=u'xxr-gwibber', score=1051,
702 virtualized=None)
703 self.builds.append(job.specific_job.build)
704 # print_build_setup(self.builds)
705@@ -1195,32 +1195,32 @@
706
707 job = self.factory.makeSourcePackageRecipeBuildJob(
708 virtualized=False, estimated_duration=332,
709- sourcename='xxr-aptitude', score=1025)
710+ sourcename=u'xxr-aptitude', score=1025)
711 self.builds.append(job.specific_job.build)
712 job = self.factory.makeSourcePackageRecipeBuildJob(
713 virtualized=False, estimated_duration=443,
714- sourcename='xxr-auto-apt', score=1053)
715- self.builds.append(job.specific_job.build)
716- job = self.factory.makeSourcePackageRecipeBuildJob(
717- estimated_duration=554, sourcename='xxr-daptup', score=1051,
718- virtualized=None)
719- self.builds.append(job.specific_job.build)
720- job = self.factory.makeSourcePackageRecipeBuildJob(
721- estimated_duration=665, sourcename='xxr-cron-apt', score=1043)
722- self.builds.append(job.specific_job.build)
723- job = self.factory.makeSourcePackageRecipeBuildJob(
724- estimated_duration=776, sourcename='xxr-apt-build', score=1043)
725- self.builds.append(job.specific_job.build)
726- job = self.factory.makeSourcePackageRecipeBuildJob(
727- estimated_duration=887, sourcename='xxr-debdelta', score=1044,
728- virtualized=None)
729- self.builds.append(job.specific_job.build)
730- job = self.factory.makeSourcePackageRecipeBuildJob(
731- estimated_duration=998, sourcename='xxr-apt', score=1044,
732- virtualized=None)
733- self.builds.append(job.specific_job.build)
734- job = self.factory.makeSourcePackageRecipeBuildJob(
735- estimated_duration=1110, sourcename='xxr-cupt', score=1044,
736+ sourcename=u'xxr-auto-apt', score=1053)
737+ self.builds.append(job.specific_job.build)
738+ job = self.factory.makeSourcePackageRecipeBuildJob(
739+ estimated_duration=554, sourcename=u'xxr-daptup', score=1051,
740+ virtualized=None)
741+ self.builds.append(job.specific_job.build)
742+ job = self.factory.makeSourcePackageRecipeBuildJob(
743+ estimated_duration=665, sourcename=u'xxr-cron-apt', score=1043)
744+ self.builds.append(job.specific_job.build)
745+ job = self.factory.makeSourcePackageRecipeBuildJob(
746+ estimated_duration=776, sourcename=u'xxr-apt-build', score=1043)
747+ self.builds.append(job.specific_job.build)
748+ job = self.factory.makeSourcePackageRecipeBuildJob(
749+ estimated_duration=887, sourcename=u'xxr-debdelta', score=1044,
750+ virtualized=None)
751+ self.builds.append(job.specific_job.build)
752+ job = self.factory.makeSourcePackageRecipeBuildJob(
753+ estimated_duration=998, sourcename=u'xxr-apt', score=1044,
754+ virtualized=None)
755+ self.builds.append(job.specific_job.build)
756+ job = self.factory.makeSourcePackageRecipeBuildJob(
757+ estimated_duration=1110, sourcename=u'xxr-cupt', score=1044,
758 virtualized=None)
759 self.builds.append(job.specific_job.build)
760
761
762=== modified file 'lib/lp/buildmaster/tests/test_manager.py'
763--- lib/lp/buildmaster/tests/test_manager.py 2010-05-20 13:24:01 +0000
764+++ lib/lp/buildmaster/tests/test_manager.py 2010-05-28 03:34:30 +0000
765@@ -832,7 +832,9 @@
766
767 self.assertJobIsClean(job_id)
768
769- self.assertFalse(builder.builderok)
770+ # XXX Julian
771+ # Disabled test until bug 586362 is fixed.
772+ #self.assertFalse(builder.builderok)
773 self.assertEqual(None, builder.currentjob)
774
775 def testFailDispatchResult(self):
776
777=== modified file 'lib/lp/code/browser/sourcepackagerecipe.py'
778--- lib/lp/code/browser/sourcepackagerecipe.py 2010-05-18 20:29:30 +0000
779+++ lib/lp/code/browser/sourcepackagerecipe.py 2010-05-28 03:34:30 +0000
780@@ -298,9 +298,6 @@
781 'description',
782 'owner',
783 ])
784- sourcepackagename = Choice(
785- title=u"Source Package Name", required=True,
786- vocabulary='SourcePackageName')
787 distros = List(
788 Choice(vocabulary='BuildableDistroSeries'),
789 title=u'Default Distribution series')
790@@ -345,7 +342,7 @@
791 parser = RecipeParser(data['recipe_text'])
792 recipe = parser.parse()
793 source_package_recipe = getUtility(ISourcePackageRecipeSource).new(
794- self.user, self.user, data['distros'], data['sourcepackagename'],
795+ self.user, self.user, data['distros'],
796 data['name'], recipe, data['description'])
797 self.next_url = canonical_url(source_package_recipe)
798
799
800=== modified file 'lib/lp/code/browser/tests/test_sourcepackagerecipe.py'
801--- lib/lp/code/browser/tests/test_sourcepackagerecipe.py 2010-05-26 12:11:31 +0000
802+++ lib/lp/code/browser/tests/test_sourcepackagerecipe.py 2010-05-28 03:34:30 +0000
803@@ -71,7 +71,7 @@
804 name='ratatouille', displayname='Ratatouille')
805 branch = self.factory.makeBranch(
806 owner=self.chef, product=product, name='veggies')
807- self.factory.makeSourcePackage(sourcepackagename='ratatouille')
808+ self.factory.makeSourcePackage()
809
810 # A new recipe can be created from the branch page.
811 browser = self.getUserBrowser(canonical_url(branch), user=self.chef)
812@@ -79,7 +79,6 @@
813
814 browser.getControl(name='field.name').value = 'daily'
815 browser.getControl('Description').value = 'Make some food!'
816- browser.getControl('Source Package Name').value = 'ratatouille'
817 browser.getControl('Secret Squirrel').click()
818 browser.getControl('Create Recipe').click()
819
820@@ -111,7 +110,7 @@
821 name='ratatouille', displayname='Ratatouille')
822 branch = self.factory.makeBranch(
823 owner=self.chef, product=product, name='veggies')
824- self.factory.makeSourcePackage(sourcepackagename='ratatouille')
825+ self.factory.makeSourcePackage()
826
827 # A new recipe can be created from the branch page.
828 browser = self.getUserBrowser(canonical_url(branch), user=self.chef)
829@@ -119,7 +118,6 @@
830
831 browser.getControl(name='field.name').value = 'daily'
832 browser.getControl('Description').value = 'Make some food!'
833- browser.getControl('Source Package Name').value = 'ratatouille'
834 browser.getControl('Recipe text').value = 'Foo bar baz'
835 browser.getControl('Create Recipe').click()
836
837@@ -143,13 +141,9 @@
838 owner=self.chef, product=product, name='veggies')
839 meat_branch = self.factory.makeBranch(
840 owner=self.chef, product=product, name='meat')
841- source_package = self.factory.makeSourcePackage(
842- sourcepackagename='ratatouille')
843- source_package = self.factory.makeSourcePackage(
844- sourcepackagename='sloppyjoe')
845+ source_package = self.factory.makeSourcePackage()
846 recipe = self.factory.makeSourcePackageRecipe(
847 owner=self.chef, registrant=self.chef,
848- sourcepackagename=source_package.sourcepackagename,
849 name=u'things', description=u'This is a recipe',
850 distroseries=self.squirrel, branches=[veggie_branch])
851
852@@ -159,7 +153,6 @@
853 browser.getLink('Edit recipe').click()
854 browser.getControl(name='field.name').value = 'fings'
855 browser.getControl('Description').value = 'This is stuff'
856- browser.getControl('Source Package Name').value = 'ratatouille'
857 browser.getControl('Recipe text').value = (
858 MINIMAL_RECIPE_TEXT % meat_path)
859 browser.getControl('Secret Squirrel').click()
860@@ -357,7 +350,7 @@
861 archive = self.factory.makeArchive(name='build',
862 owner=self.user)
863 recipe = self.factory.makeSourcePackageRecipe(
864- owner=self.user, name=u'my-recipe', sourcepackagename='mypackage')
865+ owner=self.user, name=u'my-recipe')
866 distro_series = self.factory.makeDistroSeries(
867 name='squirrel', distribution=archive.distribution)
868 build = self.factory.makeSourcePackageRecipeBuild(
869@@ -458,9 +451,9 @@
870 Archive: PPA named build for Owner
871 Series: Squirrel
872 Pocket: Release
873- Result: mypackage in ubuntu 3.14
874+ Result: .* in ubuntu 3.14
875 Binary builds:
876- itanic build of mypackage 3.14 in ubuntu squirrel RELEASE""",
877+ itanic build of .* 3.14 in ubuntu squirrel RELEASE""",
878 main_text)
879
880 def makeBuildAndRelease(self):
881@@ -475,7 +468,7 @@
882 main_text = self.getMainText(
883 release.source_package_recipe_build, '+index')
884 self.assertTextMatchesExpressionIgnoreWhitespace("""\
885- Result: mypackage in ubuntu 3.14""", main_text)
886+ Result: .* in ubuntu 3.14""", main_text)
887
888 def makeBinaryBuild(self, release, architecturetag):
889 """Make a binary build with specified release and architecturetag."""
890@@ -495,8 +488,8 @@
891 release.source_package_recipe_build, '+index')
892 self.assertTextMatchesExpressionIgnoreWhitespace("""\
893 Binary builds:
894- itanic build of mypackage 3.14 in ubuntu squirrel RELEASE
895- x87-64 build of mypackage 3.14 in ubuntu squirrel RELEASE$""",
896+ itanic build of .* 3.14 in ubuntu squirrel RELEASE
897+ x87-64 build of .* 3.14 in ubuntu squirrel RELEASE$""",
898 main_text)
899
900 def test_logtail(self):
901
902=== modified file 'lib/lp/code/interfaces/sourcepackagerecipe.py'
903--- lib/lp/code/interfaces/sourcepackagerecipe.py 2010-05-18 20:29:30 +0000
904+++ lib/lp/code/interfaces/sourcepackagerecipe.py 2010-05-28 03:34:30 +0000
905@@ -39,7 +39,6 @@
906 from lp.registry.interfaces.pocket import PackagePublishingPocket
907 from lp.registry.interfaces.role import IHasOwner
908 from lp.registry.interfaces.distroseries import IDistroSeries
909-from lp.registry.interfaces.sourcepackagename import ISourcePackageName
910
911
912 MINIMAL_RECIPE_TEXT = dedent(u'''\
913@@ -113,13 +112,6 @@
914 readonly=False)
915 build_daily = Bool(
916 title=_("If true, the recipe should be built daily."))
917- sourcepackagename = Reference(
918- ISourcePackageName, title=_("The name of the source package this "
919- "recipe will build a source package"),
920- readonly=True)
921-
922- _sourcepackagename_text = exported(
923- TextLine(), exported_as='sourcepackagename')
924
925 name = exported(TextLine(
926 title=_("Name"), required=True,
927@@ -183,6 +175,6 @@
928 """A utility of this interface can be used to create and access recipes.
929 """
930
931- def new(registrant, owner, distroseries, sourcepackagename, name,
932+ def new(registrant, owner, distroseries, name,
933 builder_recipe, description):
934 """Create an `ISourcePackageRecipe`."""
935
936=== modified file 'lib/lp/code/interfaces/sourcepackagerecipebuild.py'
937--- lib/lp/code/interfaces/sourcepackagerecipebuild.py 2010-05-26 08:53:13 +0000
938+++ lib/lp/code/interfaces/sourcepackagerecipebuild.py 2010-05-28 03:34:30 +0000
939@@ -27,7 +27,6 @@
940 from lp.code.interfaces.sourcepackagerecipe import ISourcePackageRecipe
941 from lp.registry.interfaces.person import IPerson
942 from lp.registry.interfaces.distroseries import IDistroSeries
943-from lp.registry.interfaces.sourcepackagename import ISourcePackageName
944 from lp.services.job.interfaces.job import IJob
945 from lp.soyuz.interfaces.sourcepackagerelease import ISourcePackageRelease
946
947@@ -52,11 +51,6 @@
948 # implementing IPackageBuild.
949 distro_series = distroseries
950
951- sourcepackagename = Reference(
952- ISourcePackageName,
953- title=_("The name of the source package being built"),
954- readonly=True)
955-
956 requester = Object(
957 schema=IPerson, required=False,
958 title=_("The person who wants this to be done."))
959@@ -78,10 +72,10 @@
960 class ISourcePackageRecipeBuildSource(Interface):
961 """A utility of this interface be used to create source package builds."""
962
963- def new(sourcepackage, recipe, requester, date_created=None):
964+ def new(distroseries, recipe, requester, archive, date_created=None):
965 """Create an `ISourcePackageRecipeBuild`.
966
967- :param sourcepackage: The `ISourcePackage` that this is building.
968+ :param distroseries: The `IDistroSeries` that this is building against.
969 :param recipe: The `ISourcePackageRecipe` that this is building.
970 :param requester: The `IPerson` who wants to build it.
971 :param date_created: The date this build record was created. If not
972
973=== modified file 'lib/lp/code/model/recipebuilder.py'
974--- lib/lp/code/model/recipebuilder.py 2010-05-18 15:46:18 +0000
975+++ lib/lp/code/model/recipebuilder.py 2010-05-28 03:34:30 +0000
976@@ -41,10 +41,9 @@
977
978 @property
979 def display_name(self):
980- sp = self.build.distroseries.getSourcePackage(
981- self.build.sourcepackagename)
982- ret = "%s, %s" % (
983- sp.path, self.build.recipe.name)
984+ ret = "%s, %s, %s" % (
985+ self.build.distroseries.displayname, self.build.recipe.name,
986+ self.build.recipe.owner.name)
987 if self._builder is not None:
988 ret += " (on %s)" % self._builder.url
989 return ret
990@@ -63,16 +62,15 @@
991 if self.build.pocket != PackagePublishingPocket.RELEASE:
992 suite += "-%s" % (self.build.pocket.name.lower())
993 args['suite'] = suite
994- args["package_name"] = self.build.sourcepackagename.name
995 args["author_name"] = self.build.requester.displayname
996 args["author_email"] = self.build.requester.preferredemail.email
997 args["recipe_text"] = str(self.build.recipe.builder_recipe)
998 args['archive_purpose'] = self.build.archive.purpose.name
999 args["ogrecomponent"] = get_primary_current_component(
1000 self.build.archive, self.build.distroseries,
1001- self.build.sourcepackagename.name)
1002+ None)
1003 args['archives'] = get_sources_list_for_building(self.build,
1004- distroarchseries, self.build.sourcepackagename.name)
1005+ distroarchseries, None)
1006
1007 # config.builddmaster.bzr_builder_sources_list can contain a
1008 # sources.list entry for an archive that will contain a
1009@@ -90,9 +88,10 @@
1010 args['archives'].append(sources_line)
1011 except StandardError:
1012 # Someone messed up the config, don't add it.
1013- logger.error(
1014- "Exception processing bzr_builder_sources_list:\n%s"
1015- % traceback.format_exc())
1016+ if logger:
1017+ logger.error(
1018+ "Exception processing bzr_builder_sources_list:\n%s"
1019+ % traceback.format_exc())
1020
1021 args['distroseries_name'] = self.build.distroseries.name
1022 return args
1023
1024=== modified file 'lib/lp/code/model/sourcepackagerecipe.py'
1025--- lib/lp/code/model/sourcepackagerecipe.py 2010-05-27 13:23:10 +0000
1026+++ lib/lp/code/model/sourcepackagerecipe.py 2010-05-28 03:34:30 +0000
1027@@ -79,10 +79,6 @@
1028
1029 build_daily = Bool()
1030
1031- sourcepackagename_id = Int(name='sourcepackagename', allow_none=True)
1032- sourcepackagename = Reference(
1033- sourcepackagename_id, 'SourcePackageName.id')
1034-
1035 @property
1036 def _sourcepackagename_text(self):
1037 return self.sourcepackagename.name
1038@@ -118,15 +114,14 @@
1039 return str(self.builder_recipe)
1040
1041 @staticmethod
1042- def new(registrant, owner, distroseries, sourcepackagename, name,
1043- builder_recipe, description):
1044+ def new(registrant, owner, distroseries, name, builder_recipe,
1045+ description):
1046 """See `ISourcePackageRecipeSource.new`."""
1047 store = IMasterStore(SourcePackageRecipe)
1048 sprecipe = SourcePackageRecipe()
1049 SourcePackageRecipeData(builder_recipe, sprecipe)
1050 sprecipe.registrant = registrant
1051 sprecipe.owner = owner
1052- sprecipe.sourcepackagename = sourcepackagename
1053 sprecipe.name = name
1054 for distroseries_item in distroseries:
1055 sprecipe.distroseries.add(distroseries_item)
1056@@ -153,14 +148,11 @@
1057 raise NonPPABuildRequest
1058 component = getUtility(IComponentSet)["multiverse"]
1059 reject_reason = archive.checkUpload(
1060- requester, self.distroseries, self.sourcepackagename,
1061- component, pocket)
1062+ requester, self.distroseries, None, component, pocket)
1063 if reject_reason is not None:
1064 raise reject_reason
1065
1066- sourcepackage = distroseries.getSourcePackage(
1067- self.sourcepackagename)
1068- build = getUtility(ISourcePackageRecipeBuildSource).new(sourcepackage,
1069+ build = getUtility(ISourcePackageRecipeBuildSource).new(distroseries,
1070 self, requester, archive)
1071 build.queueBuild(build)
1072 return build
1073
1074=== modified file 'lib/lp/code/model/sourcepackagerecipebuild.py'
1075--- lib/lp/code/model/sourcepackagerecipebuild.py 2010-05-27 13:23:10 +0000
1076+++ lib/lp/code/model/sourcepackagerecipebuild.py 2010-05-28 03:34:30 +0000
1077@@ -111,10 +111,6 @@
1078 distroseries = Reference(distroseries_id, 'DistroSeries.id')
1079 distro_series = distroseries
1080
1081- sourcepackagename_id = Int(name='sourcepackagename', allow_none=True)
1082- sourcepackagename = Reference(
1083- sourcepackagename_id, 'SourcePackageName.id')
1084-
1085 @property
1086 def distribution(self):
1087 """See `IBuildBase`."""
1088@@ -150,7 +146,7 @@
1089 def title(self):
1090 return '%s recipe build' % self.recipe.base_branch.unique_name
1091
1092- def __init__(self, distroseries, sourcepackagename, recipe, requester,
1093+ def __init__(self, distroseries, recipe, requester,
1094 archive, pocket, date_created=None,
1095 date_first_dispatched=None, date_built=None, builder=None,
1096 build_state=BuildStatus.NEEDSBUILD, build_log=None,
1097@@ -169,10 +165,9 @@
1098 self.distroseries = distroseries
1099 self.recipe = recipe
1100 self.requester = requester
1101- self.sourcepackagename = sourcepackagename
1102
1103 @classmethod
1104- def new(cls, sourcepackage, recipe, requester, archive, pocket=None,
1105+ def new(cls, distroseries, recipe, requester, archive, pocket=None,
1106 date_created=None):
1107 """See `ISourcePackageRecipeBuildSource`."""
1108 store = IMasterStore(SourcePackageRecipeBuild)
1109@@ -181,8 +176,7 @@
1110 if date_created is None:
1111 date_created = UTC_NOW
1112 spbuild = cls(
1113- sourcepackage.distroseries,
1114- sourcepackage.sourcepackagename,
1115+ distroseries,
1116 recipe,
1117 requester,
1118 archive,
1119
1120=== modified file 'lib/lp/code/model/tests/test_recipebuilder.py'
1121--- lib/lp/code/model/tests/test_recipebuilder.py 2010-05-18 15:31:36 +0000
1122+++ lib/lp/code/model/tests/test_recipebuilder.py 2010-05-28 03:34:30 +0000
1123@@ -7,6 +7,7 @@
1124
1125 __metaclass__ = type
1126
1127+import re
1128 import transaction
1129 import unittest
1130
1131@@ -66,10 +67,11 @@
1132 somebranch = self.factory.makeBranch(owner=requester, name="pkg",
1133 product=self.factory.makeProduct("someapp"))
1134 recipe = self.factory.makeSourcePackageRecipe(requester, requester,
1135- distroseries, spn, u"recept", u"Recipe description",
1136+ distroseries, u"recept", u"Recipe description",
1137 branches=[somebranch])
1138 spb = self.factory.makeSourcePackageRecipeBuild(
1139- sourcepackage=sourcepackage, recipe=recipe, requester=requester)
1140+ sourcepackage=sourcepackage, recipe=recipe, requester=requester,
1141+ distroseries=distroseries)
1142 job = spb.makeJob()
1143 job_id = removeSecurityProxy(job.job).id
1144 BuildQueue(job_type=BuildFarmJobType.RECIPEBRANCHBUILD, job=job_id)
1145@@ -80,7 +82,7 @@
1146 # display_name contains a sane description of the job
1147 job = self.makeJob()
1148 self.assertEquals(job.display_name,
1149- "distro/mydistro/apackage, recept")
1150+ "Mydistro, recept, joe")
1151
1152 def test_logStartBuild(self):
1153 # logStartBuild will properly report the package that's being built
1154@@ -88,7 +90,7 @@
1155 logger = BufferLogger()
1156 job.logStartBuild(logger)
1157 self.assertEquals(logger.buffer.getvalue(),
1158- "INFO: startBuild(distro/mydistro/apackage, recept)\n")
1159+ "INFO: startBuild(Mydistro, recept, joe)\n")
1160
1161 def test_verifyBuildRequest_valid(self):
1162 # VerifyBuildRequest won't raise any exceptions when called with a
1163@@ -134,14 +136,13 @@
1164 job = self.makeJob()
1165 distroarchseries = job.build.distroseries.architectures[0]
1166 expected_archives = get_sources_list_for_building(
1167- job.build, distroarchseries, job.build.sourcepackagename.name)
1168+ job.build, distroarchseries, None)
1169 expected_archives.append(
1170 "deb http://foo %s main" % job.build.distroseries.name)
1171 self.assertEqual({
1172 'author_email': u'requester@ubuntu.com',
1173 'suite': u'mydistro',
1174 'author_name': u'Joe User',
1175- 'package_name': u'apackage',
1176 'archive_purpose': 'PPA',
1177 'ogrecomponent': 'universe',
1178 'recipe_text': '# bzr-builder format 0.2 deb-version 1.0\n'
1179@@ -165,13 +166,12 @@
1180 job = self.makeJob()
1181 distroarchseries = job.build.distroseries.architectures[0]
1182 expected_archives = get_sources_list_for_building(
1183- job.build, distroarchseries, job.build.sourcepackagename.name)
1184+ job.build, distroarchseries, None)
1185 logger = BufferLogger()
1186 self.assertEqual({
1187 'author_email': u'requester@ubuntu.com',
1188 'suite': u'mydistro',
1189 'author_name': u'Joe User',
1190- 'package_name': u'apackage',
1191 'archive_purpose': 'PPA',
1192 'ogrecomponent': 'universe',
1193 'recipe_text': '# bzr-builder format 0.2 deb-version 1.0\n'
1194@@ -190,7 +190,7 @@
1195 distroarchseries = job.build.distroseries.architectures[0]
1196 args = job._extraBuildArgs(distroarchseries)
1197 expected_archives = get_sources_list_for_building(
1198- job.build, distroarchseries, job.build.sourcepackagename.name)
1199+ job.build, distroarchseries, None)
1200 self.assertEqual(args["archives"], expected_archives)
1201
1202
1203
1204=== modified file 'lib/lp/code/model/tests/test_sourcepackagerecipe.py'
1205--- lib/lp/code/model/tests/test_sourcepackagerecipe.py 2010-05-18 19:14:16 +0000
1206+++ lib/lp/code/model/tests/test_sourcepackagerecipe.py 2010-05-28 03:34:30 +0000
1207@@ -58,13 +58,11 @@
1208 registrant = self.factory.makePerson()
1209 owner = self.factory.makeTeam(owner=registrant)
1210 distroseries = self.factory.makeDistroSeries()
1211- sourcepackagename = self.factory.makeSourcePackageName()
1212 name = self.factory.getUniqueString(u'recipe-name')
1213 description = self.factory.getUniqueString(u'recipe-description')
1214 return getUtility(ISourcePackageRecipeSource).new(
1215 registrant=registrant, owner=owner, distroseries=[distroseries],
1216- sourcepackagename=sourcepackagename, name=name,
1217- description=description, builder_recipe=builder_recipe)
1218+ name=name, description=description, builder_recipe=builder_recipe)
1219
1220 def test_creation(self):
1221 # The metadata supplied when a SourcePackageRecipe is created is
1222@@ -72,18 +70,16 @@
1223 registrant = self.factory.makePerson()
1224 owner = self.factory.makeTeam(owner=registrant)
1225 distroseries = self.factory.makeDistroSeries()
1226- sourcepackagename = self.factory.makeSourcePackageName()
1227 name = self.factory.getUniqueString(u'recipe-name')
1228 description = self.factory.getUniqueString(u'recipe-description')
1229 builder_recipe = self.factory.makeRecipe()
1230 recipe = getUtility(ISourcePackageRecipeSource).new(
1231 registrant=registrant, owner=owner, distroseries=[distroseries],
1232- sourcepackagename=sourcepackagename, name=name,
1233- description=description, builder_recipe=builder_recipe)
1234+ name=name, description=description, builder_recipe=builder_recipe)
1235 self.assertEquals(
1236- (registrant, owner, set([distroseries]), sourcepackagename, name),
1237+ (registrant, owner, set([distroseries]), name),
1238 (recipe.registrant, recipe.owner, set(recipe.distroseries),
1239- recipe.sourcepackagename, recipe.name))
1240+ recipe.name))
1241
1242 def test_source_implements_interface(self):
1243 # The SourcePackageRecipe class implements ISourcePackageRecipeSource.
1244@@ -360,13 +356,11 @@
1245 registrant = self.factory.makePerson()
1246 owner = self.factory.makeTeam(owner=registrant)
1247 distroseries = self.factory.makeDistroSeries()
1248- sourcepackagename = self.factory.makeSourcePackageName()
1249 name = self.factory.getUniqueString(u'recipe-name')
1250 description = self.factory.getUniqueString(u'recipe-description')
1251 recipe = getUtility(ISourcePackageRecipeSource).new(
1252 registrant=registrant, owner=owner, distroseries=[distroseries],
1253- sourcepackagename=sourcepackagename, name=name,
1254- description=description, builder_recipe=builder_recipe)
1255+ name=name, description=description, builder_recipe=builder_recipe)
1256 return recipe.builder_recipe
1257
1258 def check_base_recipe_branch(self, branch, url, revspec=None,
1259@@ -552,9 +546,8 @@
1260 distroseries = ws_object(launchpad, db_distroseries)
1261 ws_owner = ws_object(launchpad, owner)
1262 recipe = ws_owner.createRecipe(
1263- name='toaster-1', sourcepackagename='toaster',
1264- description='a recipe', distroseries=[distroseries.self_link],
1265- recipe_text=recipe_text)
1266+ name='toaster-1', description='a recipe',
1267+ distroseries=[distroseries.self_link], recipe_text=recipe_text)
1268 # at the moment, distroseries is not exposed in the API.
1269 transaction.commit()
1270 db_recipe = owner.getRecipe(name=u'toaster-1')
1271@@ -571,7 +564,6 @@
1272 self.assertEqual(team.teamowner.name, recipe.registrant.name)
1273 self.assertEqual('toaster-1', recipe.name)
1274 self.assertEqual(recipe_text, recipe.recipe_text)
1275- self.assertEqual('toaster', recipe.sourcepackagename)
1276
1277 def test_recipe_text(self):
1278 recipe_text2 = self.makeRecipeText()
1279
1280=== modified file 'lib/lp/code/model/tests/test_sourcepackagerecipebuild.py'
1281--- lib/lp/code/model/tests/test_sourcepackagerecipebuild.py 2010-05-27 13:23:10 +0000
1282+++ lib/lp/code/model/tests/test_sourcepackagerecipebuild.py 2010-05-28 03:34:30 +0000
1283@@ -44,8 +44,7 @@
1284 distroseries.nominatedarchindep = distroseries_i386
1285
1286 return getUtility(ISourcePackageRecipeBuildSource).new(
1287- sourcepackage=self.factory.makeSourcePackage(
1288- distroseries=distroseries),
1289+ distroseries=distroseries,
1290 recipe=self.factory.makeSourcePackageRecipe(
1291 distroseries=distroseries),
1292 archive=self.factory.makeArchive(),
1293
1294=== modified file 'lib/lp/registry/interfaces/person.py'
1295--- lib/lp/registry/interfaces/person.py 2010-05-12 03:31:34 +0000
1296+++ lib/lp/registry/interfaces/person.py 2010-05-28 03:34:30 +0000
1297@@ -850,18 +850,15 @@
1298 distroseries=List(value_type=Reference(schema=Interface)),
1299 name=TextLine(),
1300 recipe_text=Text(),
1301- sourcepackagename=TextLine(),
1302 )
1303 @export_factory_operation(Interface, [])
1304- def createRecipe(name, description, recipe_text, distroseries,
1305- sourcepackagename, registrant):
1306+ def createRecipe(name, description, recipe_text, distroseries, registrant):
1307 """Create a SourcePackageRecipe owned by this person.
1308
1309 :param name: the name to use for referring to the recipe.
1310 :param description: A description of the recipe.
1311 :param recipe_text: The text of the recipe.
1312 :param distroseries: The distroseries to use.
1313- :param sourcepackagename: The name of the sourcepackage for the recipe.
1314 :return: a SourcePackageRecipe.
1315 """
1316
1317
1318=== modified file 'lib/lp/registry/model/person.py'
1319--- lib/lp/registry/model/person.py 2010-05-10 13:52:14 +0000
1320+++ lib/lp/registry/model/person.py 2010-05-28 03:34:30 +0000
1321@@ -2263,15 +2263,13 @@
1322 return rset
1323
1324 def createRecipe(self, name, description, recipe_text, distroseries,
1325- sourcepackagename, registrant):
1326+ registrant):
1327 """See `IPerson`."""
1328 from lp.code.model.sourcepackagerecipe import SourcePackageRecipe
1329 builder_recipe = RecipeParser(recipe_text).parse()
1330 spnset = getUtility(ISourcePackageNameSet)
1331- sourcepackagename = spnset.getOrCreateByName(sourcepackagename)
1332 return SourcePackageRecipe.new(
1333- registrant, self, distroseries, sourcepackagename, name,
1334- builder_recipe, description)
1335+ registrant, self, distroseries, name, builder_recipe, description)
1336
1337 def getRecipe(self, name):
1338 from lp.code.model.sourcepackagerecipe import SourcePackageRecipe
1339
1340=== modified file 'lib/lp/soyuz/browser/builder.py'
1341--- lib/lp/soyuz/browser/builder.py 2010-04-09 15:46:09 +0000
1342+++ lib/lp/soyuz/browser/builder.py 2010-05-28 03:34:30 +0000
1343@@ -335,7 +335,17 @@
1344 @action(_('Change'), name='update')
1345 def change_details(self, action, data):
1346 """Update the builder with the data from the form."""
1347- builder_was_modified = self.updateContextFromData(data)
1348+ # notify_modified is set False here because it uses
1349+ # lazr.lifecycle.snapshot to store the state of the object
1350+ # before and after modification. This is dangerous for the
1351+ # builder model class because it causes some properties to be
1352+ # queried that try and communicate with the slave, which cannot
1353+ # be done from the webapp (it's generally firewalled). We could
1354+ # prevent snapshots for individual properties by defining the
1355+ # interface properties with doNotSnapshot() but this doesn't
1356+ # guard against future properties being created.
1357+ builder_was_modified = self.updateContextFromData(
1358+ data, notify_modified=False)
1359
1360 if builder_was_modified:
1361 notification = 'The builder "%s" was updated successfully.' % (
1362
1363=== added file 'lib/lp/soyuz/browser/tests/test_builder_views.py'
1364--- lib/lp/soyuz/browser/tests/test_builder_views.py 1970-01-01 00:00:00 +0000
1365+++ lib/lp/soyuz/browser/tests/test_builder_views.py 2010-05-28 03:34:30 +0000
1366@@ -0,0 +1,49 @@
1367+# Copyright 2009 Canonical Ltd. This software is licensed under the
1368+# GNU Affero General Public License version 3 (see the file LICENSE).
1369+
1370+__metaclass__ = type
1371+
1372+from zope.security.proxy import removeSecurityProxy
1373+from canonical.launchpad.ftests import login
1374+from canonical.launchpad.webapp.servers import LaunchpadTestRequest
1375+from canonical.testing import LaunchpadFunctionalLayer
1376+from lp.soyuz.browser.builder import BuilderEditView
1377+from lp.testing import TestCaseWithFactory
1378+from lp.testing.fakemethod import FakeMethod
1379+
1380+
1381+class TestBuilderEditView(TestCaseWithFactory):
1382+
1383+ layer = LaunchpadFunctionalLayer
1384+
1385+ def setUp(self):
1386+ super(TestBuilderEditView, self).setUp()
1387+ # Login as an admin to ensure access to the view's context
1388+ # object.
1389+ login('admin@canonical.com')
1390+ self.builder = removeSecurityProxy(self.factory.makeBuilder())
1391+
1392+ def initialize_view(self):
1393+ form = {
1394+ "field.manual" : "on",
1395+ "field.actions.update" : "Change",
1396+ }
1397+ request = LaunchpadTestRequest(method="POST", form=form)
1398+ view = BuilderEditView(self.builder, request)
1399+ return view
1400+
1401+ def test_posting_form_doesnt_call_slave_xmlrpc(self):
1402+ # Posting the +edit for should not call is_available, which
1403+ # would do xmlrpc to a slave builder and is explicitly forbidden
1404+ # in a webapp process.
1405+ view = self.initialize_view()
1406+
1407+ # Stub out the slaveStatusSentence() method with a fake one that
1408+ # records if it's been called.
1409+ view.context.slaveStatusSentence = FakeMethod(result=[0])
1410+
1411+ view.initialize()
1412+
1413+ # If the dummy slaveStatusSentence() was called the call count
1414+ # would not be zero.
1415+ self.assertTrue(view.context.slaveStatusSentence.call_count == 0 )
1416
1417=== modified file 'lib/lp/soyuz/doc/nascentupload-announcements.txt'
1418--- lib/lp/soyuz/doc/nascentupload-announcements.txt 2009-12-13 11:55:40 +0000
1419+++ lib/lp/soyuz/doc/nascentupload-announcements.txt 2010-05-28 03:34:30 +0000
1420@@ -143,7 +143,7 @@
1421 >>> bar_src.logger = mock_logger
1422 >>> result = bar_src.do_accept()
1423 DEBUG: Creating queue entry
1424- DEBUG: Package diff for bar from 1.0-1 to 1.0-1 requested
1425+ DEBUG: bar diff from 1.0-1 to 1.0-1 requested
1426 DEBUG: Setting it to ACCEPTED
1427 ...
1428 DEBUG: Sending rejection email.
1429@@ -408,7 +408,7 @@
1430 >>> lang_pack.logger = mock_logger
1431 >>> result = lang_pack.do_accept()
1432 DEBUG: Creating queue entry
1433- DEBUG: Package diff for language-pack-pt from 1.0-2 to 1.0-3 requested
1434+ DEBUG: language-pack-pt diff from 1.0-2 to 1.0-3 requested
1435 DEBUG: Setting it to UNAPPROVED
1436 DEBUG: Skipping acceptance and announcement, it is a language-package upload.
1437
1438@@ -461,7 +461,7 @@
1439 >>> bar_src.logger = mock_logger
1440 >>> result = bar_src.do_accept()
1441 DEBUG: Creating queue entry
1442- DEBUG: Package diff for bar from 1.0-1 to 1.0-3 requested
1443+ DEBUG: bar diff from 1.0-1 to 1.0-3 requested
1444 DEBUG: Setting it to UNAPPROVED
1445 ...
1446
1447
1448=== modified file 'lib/lp/soyuz/doc/package-diff.txt'
1449--- lib/lp/soyuz/doc/package-diff.txt 2010-02-23 08:33:11 +0000
1450+++ lib/lp/soyuz/doc/package-diff.txt 2010-05-28 03:34:30 +0000
1451@@ -87,7 +87,7 @@
1452 request.
1453
1454 >>> print package_diff.title
1455- 0.1-1 to 0.1-2
1456+ diff from 0.1-1 to 0.1-2
1457
1458 IPackageDiff has a property which indicates whether a diff content
1459 should be private or not. See section 'PackageDiff privacy' below.
1460@@ -102,8 +102,8 @@
1461 ... requester=cprov, to_sourcepackagerelease=pmount_to)
1462 Traceback (most recent call last):
1463 ...
1464- PackageDiffAlreadyRequested: 0.1-1 to 0.1-2 was already requested
1465- by Celso Providelo
1466+ PackageDiffAlreadyRequested: diff from 0.1-1 to 0.1-2 was already
1467+ requested by Celso Providelo
1468
1469
1470 == Diff request for source uploads ==
1471@@ -167,7 +167,7 @@
1472
1473 >>> [diff] = biscuit_eight_pub.sourcepackagerelease.package_diffs
1474 >>> print diff.title
1475- 1.0-1 to 1.0-8
1476+ diff from 1.0-1 to 1.0-8
1477
1478 We will release ubuntu/hoary so we can upload to post-RELEASE pockets
1479 and ubuntu/breezy-autotest.
1480@@ -185,7 +185,7 @@
1481
1482 >>> [diff] = biscuit_nine_pub.sourcepackagerelease.package_diffs
1483 >>> print diff.title
1484- 1.0-8 to 1.0-9
1485+ diff from 1.0-8 to 1.0-9
1486
1487 Now version 1.0-12 gets uploaded to the just opened distroseries. It
1488 gets diffed against the last version present in the RELEASE pocket of
1489@@ -199,7 +199,7 @@
1490
1491 >>> [diff] = biscuit_twelve_pub.sourcepackagerelease.package_diffs
1492 >>> print diff.title
1493- 1.0-8 to 1.0-12
1494+ diff from 1.0-8 to 1.0-12
1495
1496 The subsequent version uploaded to hoary-updates will get a diff
1497 against 1.0-9.
1498@@ -211,7 +211,7 @@
1499
1500 >>> [diff] = biscuit_ten_pub.sourcepackagerelease.package_diffs
1501 >>> print diff.title
1502- 1.0-9 to 1.0-10
1503+ diff from 1.0-9 to 1.0-10
1504
1505 An upload to other pocket, in this case hoary-proposed, will get a diff
1506 against the last version in the RELEASE pocket.
1507@@ -223,7 +223,7 @@
1508
1509 >>> [diff] = biscuit_eleven_pub.sourcepackagerelease.package_diffs
1510 >>> print diff.title
1511- 1.0-8 to 1.0-11
1512+ diff from 1.0-8 to 1.0-11
1513
1514 For testing diffs in the PPA context we need to activate the PPA for
1515 Foo Bar.
1516@@ -245,7 +245,7 @@
1517
1518 >>> [diff] = biscuit_two_pub.sourcepackagerelease.package_diffs
1519 >>> print diff.title
1520- 1.0-8 (in Ubuntu) to 1.0-2
1521+ diff from 1.0-8 (in Ubuntu) to 1.0-2
1522
1523 A subsequent upload in the PPA context will get a diff against 1.0-2,
1524 the version found in its context.
1525@@ -257,7 +257,7 @@
1526
1527 >>> [diff] = biscuit_three_pub.sourcepackagerelease.package_diffs
1528 >>> print diff.title
1529- 1.0-2 to 1.0-3
1530+ diff from 1.0-2 to 1.0-3
1531
1532
1533 == Performing a Diff ==
1534@@ -422,25 +422,25 @@
1535 ... diff.date_fulfilled is not None, id_diff
1536
1537 >>> print_diffs(packagediff_set)
1538- biscuit 1.0-2 to 1.0-3 False 0
1539- biscuit 1.0-8 (in Ubuntu) to 1.0-2 False -1
1540- biscuit 1.0-8 to 1.0-11 False -2
1541- biscuit 1.0-9 to 1.0-10 False -3
1542- biscuit 1.0-8 to 1.0-12 False -4
1543- biscuit 1.0-8 to 1.0-9 False -5
1544- biscuit 1.0-1 to 1.0-8 True -6
1545- pmount 0.1-1 to 0.1-2 False -7
1546+ biscuit diff from 1.0-2 to 1.0-3 False 0
1547+ biscuit diff from 1.0-8 (in Ubuntu) to 1.0-2 False -1
1548+ biscuit diff from 1.0-8 to 1.0-11 False -2
1549+ biscuit diff from 1.0-9 to 1.0-10 False -3
1550+ biscuit diff from 1.0-8 to 1.0-12 False -4
1551+ biscuit diff from 1.0-8 to 1.0-9 False -5
1552+ biscuit diff from 1.0-1 to 1.0-8 True -6
1553+ pmount diff from 0.1-1 to 0.1-2 False -7
1554
1555 Or only the PackageDiffs not yet fullfilled.
1556
1557 >>> print_diffs(packagediff_set.getPendingDiffs())
1558- pmount 0.1-1 to 0.1-2 False 0
1559- biscuit 1.0-8 to 1.0-9 False 2
1560- biscuit 1.0-8 to 1.0-12 False 3
1561- biscuit 1.0-9 to 1.0-10 False 4
1562- biscuit 1.0-8 to 1.0-11 False 5
1563- biscuit 1.0-8 (in Ubuntu) to 1.0-2 False 6
1564- biscuit 1.0-2 to 1.0-3 False 7
1565+ pmount diff from 0.1-1 to 0.1-2 False 0
1566+ biscuit diff from 1.0-8 to 1.0-9 False 2
1567+ biscuit diff from 1.0-8 to 1.0-12 False 3
1568+ biscuit diff from 1.0-9 to 1.0-10 False 4
1569+ biscuit diff from 1.0-8 to 1.0-11 False 5
1570+ biscuit diff from 1.0-8 (in Ubuntu) to 1.0-2 False 6
1571+ biscuit diff from 1.0-2 to 1.0-3 False 7
1572
1573 Note that the iteration over all PackageDiffs is sorted by descending
1574 database ID, i.e. newest first, and getPendingDiffs() results are
1575@@ -466,8 +466,8 @@
1576 >>> sprs = [biscuit_eight_pub.sourcepackagerelease,
1577 ... biscuit_nine_pub.sourcepackagerelease]
1578 >>> print_diffs(packagediff_set.getDiffsToReleases(sprs))
1579- biscuit 1.0-1 to 1.0-8 True 0
1580- biscuit 1.0-8 to 1.0-9 False 1
1581+ biscuit diff from 1.0-1 to 1.0-8 True 0
1582+ biscuit diff from 1.0-8 to 1.0-9 False 1
1583
1584 The method will return an empty result if no source package releases
1585 are passed to it:
1586@@ -514,7 +514,7 @@
1587 ... '1.0-1', archive=foobar.archive)
1588 >>> [diff] = staging_ppa_pub.sourcepackagerelease.package_diffs
1589 >>> print diff.title
1590- 1.0-1 (in Ubuntu) to 1.0-1
1591+ diff from 1.0-1 (in Ubuntu) to 1.0-1
1592
1593 Commit the transaction for make the uploaded files available in
1594 librarian:
1595@@ -567,7 +567,7 @@
1596 ... '1.0-1', archive=foobar.archive)
1597 >>> [diff] = collision_ppa_pub.sourcepackagerelease.package_diffs
1598 >>> print diff.title
1599- 1.0-1 (in Ubuntu) to 1.0-1
1600+ diff from 1.0-1 (in Ubuntu) to 1.0-1
1601
1602 Note that, despite of having the same name and version, the diff.gz
1603 and dsc files have different contents.
1604@@ -654,7 +654,7 @@
1605
1606 >>> [broken_diff] = pub.sourcepackagerelease.package_diffs
1607 >>> print broken_diff.title
1608- 1.0-1 (in Ubuntu) to 1.0-2
1609+ diff from 1.0-1 (in Ubuntu) to 1.0-2
1610
1611 With a tainted DSC 'debdiff' cannot do much and fails, resulting in a
1612 FAILED request (empty 'diff_content' and 'date_fullfilled').
1613@@ -710,7 +710,7 @@
1614
1615 >>> [diff] = biscuit_two_pub.sourcepackagerelease.package_diffs
1616 >>> print diff.title
1617- 1.0-8 (in Ubuntu) to 1.0-2
1618+ diff from 1.0-8 (in Ubuntu) to 1.0-2
1619
1620 The chosen diff is for a source uploaded to a public PPA.
1621
1622
1623=== modified file 'lib/lp/soyuz/doc/publishing.txt'
1624--- lib/lp/soyuz/doc/publishing.txt 2010-05-21 14:52:35 +0000
1625+++ lib/lp/soyuz/doc/publishing.txt 2010-05-28 03:34:30 +0000
1626@@ -1315,12 +1315,12 @@
1627 >>> pmount_diff = a_source.sourcepackagerelease.requestDiffTo(
1628 ... cprov, to_source.sourcepackagerelease)
1629 >>> print pmount_diff.title
1630- 1.0 (in Ubuntu) to 0.1-1
1631+ diff from 1.0 (in Ubuntu) to 0.1-1
1632
1633 >>> iceweasel_diff = to_source.sourcepackagerelease.requestDiffTo(
1634 ... cprov, a_source.sourcepackagerelease)
1635 >>> print iceweasel_diff.title
1636- 0.1-1 (in Ubuntu) to 1.0
1637+ diff from 0.1-1 (in Ubuntu) to 1.0
1638
1639 >>> from canonical.database.sqlbase import flush_database_updates
1640 >>> flush_database_updates()
1641@@ -1360,7 +1360,7 @@
1642 pmount 0.1-1 in warty
1643
1644 >>> print diff.title
1645- 1.0 (in Ubuntu) to 0.1-1
1646+ diff from 1.0 (in Ubuntu) to 0.1-1
1647
1648 >>> print file.filename
1649 netapplet-1.0.0.tar.gz
1650@@ -1379,7 +1379,7 @@
1651 iceweasel 1.0 in warty
1652
1653 >>> print diff.title
1654- 0.1-1 (in Ubuntu) to 1.0
1655+ diff from 0.1-1 (in Ubuntu) to 1.0
1656
1657 >>> print file
1658 None
1659
1660=== modified file 'lib/lp/soyuz/model/packagediff.py'
1661--- lib/lp/soyuz/model/packagediff.py 2010-02-04 10:59:30 +0000
1662+++ lib/lp/soyuz/model/packagediff.py 2010-05-28 03:34:30 +0000
1663@@ -123,7 +123,7 @@
1664 ancestry_identifier = "%s (in %s)" % (
1665 self.from_source.version,
1666 ancestry_archive.distribution.name.capitalize())
1667- return '%s to %s' % (ancestry_identifier, self.to_source.version)
1668+ return 'diff from %s to %s' % (ancestry_identifier, self.to_source.version)
1669
1670 @property
1671 def private(self):
1672
1673=== modified file 'lib/lp/soyuz/stories/soyuz/xx-package-diff.txt'
1674--- lib/lp/soyuz/stories/soyuz/xx-package-diff.txt 2009-09-18 11:12:22 +0000
1675+++ lib/lp/soyuz/stories/soyuz/xx-package-diff.txt 2010-05-28 03:34:30 +0000
1676@@ -87,9 +87,9 @@
1677 >>> diffs = list(diff_set.getPendingDiffs())
1678 >>> for diff in diffs:
1679 ... print diff.title
1680- 1.0-1 to 1.0-2
1681- 1.0-2 to 1.0-3
1682- 1.0-3 (in Ubuntu) to 1.0-4
1683+ diff from 1.0-1 to 1.0-2
1684+ diff from 1.0-2 to 1.0-3
1685+ diff from 1.0-3 (in Ubuntu) to 1.0-4
1686
1687 Perform some diffs in advance, the first diff in ubuntu and the diff
1688 in PPA will be performed, the second diff in ubuntu will be performed
1689@@ -139,13 +139,13 @@
1690 Pending in hoary-release
1691 ...
1692 Available diffs
1693- 1.0-2 to 1.0-3 (pending)
1694+ diff from 1.0-2 to 1.0-3 (pending)
1695 ==============================
1696 1.0-2
1697 Pending in hoary-release
1698 ...
1699 Available diffs
1700- 1.0-1 to 1.0-2 (3 bytes)
1701+ diff from 1.0-1 to 1.0-2 (3 bytes)
1702 ==============================
1703 1.0-1
1704 Pending in hoary-release
1705@@ -153,14 +153,14 @@
1706
1707 Diffs already performed are rendered as link to the librarian file.
1708
1709- >>> print anon_browser.getLink('1.0-1 to 1.0-2').url
1710+ >>> print anon_browser.getLink('diff from 1.0-1 to 1.0-2').url
1711 http://.../biscuit_1.0-1_1.0-2.diff.gz
1712
1713 On the other hand, diffs not yet performed are rendered as plain text,
1714 and "(pending)" is appended to the text as a further hint that it's not
1715 ready yet.
1716
1717- >>> anon_browser.getLink('1.0-2 to 1.0-3')
1718+ >>> anon_browser.getLink('diff from 1.0-2 to 1.0-3')
1719 Traceback (most recent call last):
1720 ...
1721 LinkNotFoundError
1722@@ -176,7 +176,7 @@
1723 >>> logout()
1724
1725 >>> anon_browser.reload()
1726- >>> print anon_browser.getLink('1.0-2 to 1.0-3').url
1727+ >>> print anon_browser.getLink('diff from 1.0-2 to 1.0-3').url
1728 http://.../biscuit_1.0-2_1.0-3.diff.gz
1729
1730 The same page section is presented in the corresponding
1731@@ -188,9 +188,9 @@
1732 ... anon_browser.contents, 'diff-for-1.0-3')
1733 >>> print extract_text(diff_section)
1734 Available diffs
1735- 1.0-2 to 1.0-3 (3 bytes)
1736+ diff from 1.0-2 to 1.0-3 (3 bytes)
1737
1738- >>> print anon_browser.getLink('1.0-2 to 1.0-3').url
1739+ >>> print anon_browser.getLink('diff from 1.0-2 to 1.0-3').url
1740 http://.../biscuit_1.0-2_1.0-3.diff.gz
1741
1742
1743@@ -218,7 +218,7 @@
1744 Publishing details
1745 ...
1746 Available diffs
1747- 1.0-3 (in Ubuntu) to 1.0-4 (pending)
1748+ diff from 1.0-3 (in Ubuntu) to 1.0-4 (pending)
1749 ...
1750
1751 If we complete the diff, the text changes.
1752@@ -233,11 +233,11 @@
1753 Publishing details
1754 ...
1755 Available diffs
1756- 1.0-3 (in Ubuntu) to 1.0-4 (3 bytes)
1757+ diff from 1.0-3 (in Ubuntu) to 1.0-4 (3 bytes)
1758 ...
1759
1760 The text also links to the librarian file containing the diff.
1761
1762 >>> print anon_browser.getLink(
1763- ... '1.0-3 (in Ubuntu) to 1.0-4').url
1764+ ... 'diff from 1.0-3 (in Ubuntu) to 1.0-4').url
1765 http://.../biscuit_1.0-3_1.0-4.diff.gz
1766
1767=== modified file 'lib/lp/soyuz/stories/soyuz/xx-queue-pages.txt'
1768--- lib/lp/soyuz/stories/soyuz/xx-queue-pages.txt 2010-03-17 01:53:33 +0000
1769+++ lib/lp/soyuz/stories/soyuz/xx-queue-pages.txt 2010-05-28 03:34:30 +0000
1770@@ -170,6 +170,29 @@
1771
1772 == Queue item filelist ==
1773
1774+First set up some additional data: a package diff to show in the listing.
1775+
1776+ >>> from StringIO import StringIO
1777+ >>> from zope.security.proxy import removeSecurityProxy
1778+ >>> from canonical.database.constants import UTC_NOW
1779+ >>> from canonical.librarian.interfaces import ILibrarianClient
1780+ >>> from lp.soyuz.interfaces.packagediff import (
1781+ ... PackageDiffStatus)
1782+ >>> login(ANONYMOUS)
1783+ >>> old = main_archive.getPublishedSources(
1784+ ... name='alsa-utils', version='1.0.9a-4')[0].sourcepackagerelease
1785+ >>> new = main_archive.getPublishedSources(
1786+ ... name='alsa-utils',
1787+ ... version='1.0.9a-4ubuntu1')[0].sourcepackagerelease
1788+ >>> diff = removeSecurityProxy(old.requestDiffTo(
1789+ ... requester=name12, to_sourcepackagerelease=new))
1790+ >>> diff.date_fulfilled = UTC_NOW
1791+ >>> diff.status = PackageDiffStatus.COMPLETED
1792+ >>> diff.diff_content = getUtility(ILibrarianClient).addFile(
1793+ ... 'alsa-utils.diff.gz', 11, StringIO('i am a diff'),
1794+ ... 'application/gzipped-patch')
1795+ >>> logout()
1796+
1797 Each queue item has a hidden 'filelist' section which is
1798 toggled via javascript by clicking in the 'expand' arrow
1799 image:
1800@@ -195,13 +218,16 @@
1801 >>> for row in filelist:
1802 ... print extract_text(row)
1803 alsa-utils_1.0.9a-4ubuntu1.dsc (3 bytes)
1804+ diff from 1.0.9a-4 to 1.0.9a-4ubuntu1 (11 bytes)
1805
1806 Each filename links to its respective librarian URL:
1807
1808- >>> print row.find('a')
1809- <a href="http://localhost:58000/43/alsa-utils_1.0.9a-4ubuntu1.dsc">
1810+ >>> for row in filelist:
1811+ ... print row.find('a')
1812+ <a href="http://localhost:58000/.../alsa-utils_1.0.9a-4ubuntu1.dsc">
1813 alsa-utils_1.0.9a-4ubuntu1.dsc
1814 </a>
1815+ <a href="http://localhost:58000/.../alsa-utils.diff.gz">diff from 1.0.9a-4 to 1.0.9a-4ubuntu1</a>
1816
1817 On binary queue items we also present the stamp 'NEW' for files never
1818 published in the archive (it helps archive admins when reviewing
1819
1820=== modified file 'lib/lp/soyuz/templates/distroseries-queue.pt'
1821--- lib/lp/soyuz/templates/distroseries-queue.pt 2010-03-16 01:13:05 +0000
1822+++ lib/lp/soyuz/templates/distroseries-queue.pt 2010-05-28 03:34:30 +0000
1823@@ -284,6 +284,20 @@
1824 <td colspan="6"/>
1825 </tr>
1826 </tal:custom>
1827+
1828+ <tal:diffs condition="packageupload/sourcepackagerelease">
1829+ <tr tal:define="diffs packageupload/sourcepackagerelease/package_diffs"
1830+ tal:repeat="diff diffs"
1831+ tal:attributes="class string:${filelist_class}"
1832+ style="display:none">
1833+ <td/>
1834+ <td tal:condition="view/availableActions"></td>
1835+ <td>
1836+ <tal:difflink replace="structure diff/fmt:link" />
1837+ </td>
1838+ <td colspan="6"/>
1839+ </tr>
1840+ </tal:diffs>
1841 </tal:upload>
1842
1843 </metal:macro>
1844
1845=== modified file 'lib/lp/soyuz/templates/sourcepackagepublishinghistory-listing-archive-extra.pt'
1846--- lib/lp/soyuz/templates/sourcepackagepublishinghistory-listing-archive-extra.pt 2010-05-17 13:14:46 +0000
1847+++ lib/lp/soyuz/templates/sourcepackagepublishinghistory-listing-archive-extra.pt 2010-05-28 03:34:30 +0000
1848@@ -22,20 +22,7 @@
1849 tal:condition="diffs">
1850 <h3>Available diffs</h3>
1851 <ul>
1852- <li tal:repeat="diff diffs">
1853- <tal:pending condition="not: diff/date_fulfilled">
1854- <tal:pending-diff replace="diff/title">
1855- 1.0 (in Ubuntu) to 1.1
1856- </tal:pending-diff> (pending)
1857- </tal:pending>
1858- <tal:fulfilled condition="diff/date_fulfilled">
1859- <a tal:attributes="href diff/diff_content/http_url"
1860- tal:content="diff/title">1.0 (in Ubuntu) to 1.1</a>
1861- (<tal:size
1862- replace="diff/diff_content/content/filesize/fmt:bytes"
1863- >100 bytes</tal:size>)
1864- </tal:fulfilled>
1865- </li>
1866+ <li tal:repeat="diff diffs" tal:content="structure diff/fmt:link" />
1867 </ul>
1868 </div>
1869
1870
1871=== modified file 'lib/lp/soyuz/templates/sourcepackagerelease-diffs.pt'
1872--- lib/lp/soyuz/templates/sourcepackagerelease-diffs.pt 2009-09-18 11:12:22 +0000
1873+++ lib/lp/soyuz/templates/sourcepackagerelease-diffs.pt 2010-05-28 03:34:30 +0000
1874@@ -11,19 +11,7 @@
1875 <h3>Available diffs</h3>
1876
1877 <ul>
1878- <li tal:repeat="diff diffs">
1879- <tal:pending condition="not: diff/date_fulfilled">
1880- <tal:pending-diff replace="diff/title">
1881- 1.0 (in Ubuntu) to 1.1
1882- </tal:pending-diff> (pending)
1883- </tal:pending>
1884- <tal:fulfilled condition="diff/date_fulfilled">
1885- <a tal:attributes="href diff/diff_content/http_url"
1886- tal:content="diff/title">1.0 (in Ubuntu) to 1.1</a>
1887- (<tal:size replace="diff/diff_content/content/filesize/fmt:bytes"
1888- >100 bytes</tal:size>)
1889- </tal:fulfilled>
1890- </li>
1891+ <li tal:repeat="diff diffs" tal:content="structure diff/fmt:link" />
1892 </ul>
1893
1894 </div>
1895
1896=== modified file 'lib/lp/testing/factory.py'
1897--- lib/lp/testing/factory.py 2010-05-26 08:53:13 +0000
1898+++ lib/lp/testing/factory.py 2010-05-28 03:34:30 +0000
1899@@ -1758,8 +1758,8 @@
1900 return parser.parse()
1901
1902 def makeSourcePackageRecipe(self, registrant=None, owner=None,
1903- distroseries=None, sourcepackagename=None,
1904- name=None, description=None, branches=()):
1905+ distroseries=None, name=None, description=None,
1906+ branches=()):
1907 """Make a `SourcePackageRecipe`."""
1908 if registrant is None:
1909 registrant = self.makePerson()
1910@@ -1771,19 +1771,13 @@
1911 'i386', ProcessorFamily.get(1), False, owner,
1912 supports_virtualized=True)
1913
1914- # Make sure we have a real sourcepackagename object.
1915- if (sourcepackagename is None or
1916- isinstance(sourcepackagename, basestring)):
1917- sourcepackagename = self.getOrMakeSourcePackageName(
1918- sourcepackagename)
1919 if name is None:
1920 name = self.getUniqueString().decode('utf8')
1921 if description is None:
1922 description = self.getUniqueString().decode('utf8')
1923 recipe = self.makeRecipe(*branches)
1924 source_package_recipe = getUtility(ISourcePackageRecipeSource).new(
1925- registrant, owner, [distroseries], sourcepackagename, name,
1926- recipe, description)
1927+ registrant, owner, [distroseries], name, recipe, description)
1928 IStore(source_package_recipe).flush()
1929 return source_package_recipe
1930
1931@@ -1793,20 +1787,16 @@
1932 pocket=None):
1933 """Make a new SourcePackageRecipeBuild."""
1934 if recipe is None:
1935- recipe = self.makeSourcePackageRecipe(
1936- sourcepackagename=self.makeSourcePackageName(sourcename))
1937+ recipe = self.makeSourcePackageRecipe(name=sourcename)
1938 if archive is None:
1939 archive = self.makeArchive()
1940 if distroseries is None:
1941 distroseries = self.makeDistroSeries(
1942 distribution=archive.distribution)
1943- if sourcepackage is None:
1944- sourcepackage = distroseries.getSourcePackage(
1945- recipe.sourcepackagename)
1946 if requester is None:
1947 requester = self.makePerson()
1948 return getUtility(ISourcePackageRecipeBuildSource).new(
1949- sourcepackage=sourcepackage,
1950+ distroseries=distroseries,
1951 recipe=recipe,
1952 archive=archive,
1953 requester=requester,
1954@@ -2116,11 +2106,7 @@
1955 purpose=ArchivePurpose.PRIMARY)
1956
1957 if sourcepackagename is None:
1958- if source_package_recipe_build is not None:
1959- sourcepackagename = (
1960- source_package_recipe_build.sourcepackagename)
1961- else:
1962- sourcepackagename = self.makeSourcePackageName()
1963+ sourcepackagename = self.makeSourcePackageName()
1964
1965 if component is None:
1966 component = self.makeComponent()

Subscribers

People subscribed via source and target branches

to status/vote changes: