Merge lp:~wgrant/launchpad/distroseries-source-format-selection-db into lp:launchpad/db-devel

Proposed by William Grant
Status: Merged
Merged at revision: not available
Proposed branch: lp:~wgrant/launchpad/distroseries-source-format-selection-db
Merge into: lp:launchpad/db-devel
Diff against target: 38 lines
2 files modified
database/schema/comments.sql (+6/-0)
database/schema/patch-2207-08-0.sql (+20/-0)
To merge this branch: bzr merge lp:~wgrant/launchpad/distroseries-source-format-selection-db
Reviewer Review Type Date Requested Status
Michael Nelson (community) release-critical Approve
Julian Edwards (community) Approve
Jonathan Lange (community) db Approve
Stuart Bishop (community) db Approve
Review via email: mp+14304@code.launchpad.net
To post a comment you must log in.
Revision history for this message
William Grant (wgrant) wrote :

Debian has very recently introduced new source package formats. While not yet supported by Soyuz, it is possible that we will have to CP support during between 3.1.10 and 3.1.11. To make this less impossible, this new table should be added for 3.1.10.

SourcePackageFormatSelection defines which SourcePackageFormats (one of '1.0', '3.0 (quilt)' and '3.0 (native)' -- not to be confused with the current SourcePackageFormat enum which is to be renamed) are allowed to be uploaded to or copied to each series. This is required because the versions of dpkg in releases before Karmic simply do not support the 3.0 formats properly.

The name of the table is in line with ComponentSelection and SectionSelection, and Julian appears to have no objections to it.

Revision history for this message
Stuart Bishop (stub) wrote :

Looks good. Patch number patch-2207-08-0.sql.

Can land with jml's approval.

review: Approve (db)
Revision history for this message
Jonathan Lange (jml) wrote :

Thanks William.

If I understand correctly, this patch says "different releases of a distro (Debian or Ubuntu) support different source package formats", and "source package format support is determined primarily by distro series".

If these two statements are true, I'm happy for this patch to land. I'd really like some sort of external reference to back it up though. (How many times can I use "Citation needed" outside of a wikipedia article before it becomes trite?)

review: Approve (db)
Revision history for this message
William Grant (wgrant) wrote :

> Thanks William.
>
> If I understand correctly, this patch says "different releases of a distro
> (Debian or Ubuntu) support different source package formats", and "source
> package format support is determined primarily by distro series".

Those two statements are correct.

> If these two statements are true, I'm happy for this patch to land. I'd really
> like some sort of external reference to back it up though. (How many times can
> I use "Citation needed" outside of a wikipedia article before it becomes
> trite?)

The supported source formats are technically defined by the version of dpkg in
the series, however on top of that it's also a matter of distro policy.

I'm not sure of a better way to do it. This is also how dak does it, but if you
have alternative ideas I would love to know them.

Revision history for this message
Julian Edwards (julian-edwards) wrote :

Looks fine. On overnight reflection I might have preferred DistroseriesSourcePackageFormat but that's gotta be bad for my wrists :)

review: Approve
Revision history for this message
Michael Nelson (michael.nelson) :
review: Approve (release-critical)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'database/schema/comments.sql'
2--- database/schema/comments.sql 2009-10-26 13:48:04 +0000
3+++ database/schema/comments.sql 2009-11-03 05:39:14 +0000
4@@ -2269,3 +2269,9 @@
5 COMMENT ON TABLE FlatPackagesetInclusion IS 'In order to facilitate the querying of set-subset relationships an expanded or flattened representation of the set-subset hierarchy is provided by this table.';
6 COMMENT ON COLUMN FlatPackagesetInclusion.parent IS 'The package set that is (directly or indirectly) including a subset.';
7 COMMENT ON COLUMN FlatPackagesetInclusion.child IS 'The package set that is being included as a subset.';
8+
9+-- SourcePackageFormatSelection
10+COMMENT ON TABLE SourcePackageFormatSelection IS 'Allowed source package formats for a given distroseries.';
11+COMMENT ON COLUMN SourcePackageFormatSelection.distroseries IS 'Refers to the distroseries in question.';
12+COMMENT ON COLUMN SourcePackageFormatSelection.format IS 'The SourcePackageFormat to allow.';
13+
14
15=== added file 'database/schema/patch-2207-08-0.sql'
16--- database/schema/patch-2207-08-0.sql 1970-01-01 00:00:00 +0000
17+++ database/schema/patch-2207-08-0.sql 2009-11-03 05:39:14 +0000
18@@ -0,0 +1,20 @@
19+-- Copyright 2009 Canonical Ltd. This software is licensed under the
20+-- GNU Affero General Public License version 3 (see the file LICENSE).
21+
22+SET client_min_messages=ERROR;
23+
24+CREATE TABLE sourcepackageformatselection (
25+ id serial PRIMARY KEY,
26+ distroseries integer NOT NULL
27+ CONSTRAINT sourceformatselection__distroseries__fk
28+ REFERENCES distroseries,
29+ format integer NOT NULL,
30+ CONSTRAINT sourceformatselection__distroseries__format__key
31+ UNIQUE (distroseries, format)
32+);
33+
34+-- Allow all series to accept format 1.0 by default.
35+INSERT INTO sourcepackageformatselection (distroseries, format)
36+ SELECT id, 0 AS format FROM distroseries;
37+
38+INSERT INTO LaunchpadDatabaseRevision VALUES (2207, 08, 0);

Subscribers

People subscribed via source and target branches

to status/vote changes: