component of new binary packages should default to source component

Bug #192076 reported by Martin Pitt
4
Affects Status Importance Assigned to Milestone
Launchpad itself
Fix Released
Critical
Ian Booth

Bug Description

Doing binary NEW is much more work and error prone than it needs to be. In 99% of the cases the binaries go to the same component as the source.

As it is now, they all default to 'main'. Thus we override most packages to universe. Sometimes this means we put binaries of multiverse sources into universe, because we overlooked this (and explicitly checking for the component of the source takes a lot of time, too).

Unless the binary has an explicit component in its Section:, it should default to the source package component.

Related branches

Celso Providelo (cprov)
Changed in soyuz:
importance: Undecided → Medium
milestone: none → 1.2.3
status: New → Triaged
Changed in soyuz:
milestone: 1.2.3 → 1.2.4
milestone: 1.2.4 → none
Revision history for this message
Adam Conrad (adconrad) wrote :

This bug is still rather problematic for archive admin tasks. All new binaries now default to universe, but for large/complex packages like the kernel (source package: linux), we want most of the binaries in main, but a few scattered elsewhere.

The linux control files are correct (lists some packages in universe, most in main), but since all the packages land in universe, overriding them by hand to be correct is difficult.

To reiterate this bug's request, and flesh out the exact behaviour we'd like to see:

1) All NEW source packages should go to universe if no component is listed, to multiverse if the component is "non-free", and should go to the specified component (universe, multiverse, restricted) if explicitely stated.

2) All NEW binary packages should default to the component of the parent source package, unless explicitely overridden, again overriding "non-free" to "multiverse" (so, a source in main that produces binaries in main and universe should get default overrides that DTRT, a source in multiverse should get all binaries in multiverse, etc)

Revision history for this message
Colin Watson (cjwatson) wrote :

FWIW, I don't think this bug has any serious conflict with my earlier report (bug 120052) which probably led to this state. I apologise for not considering binary package handling properly at that point. If Soyuz does what I said in bug 120052 for source packages and does what Adam says for binary packages then that will be just fine.

The important difference is that only contrib/non-free->multiverse component mappings should apply for binary packages, not the main->universe component mapping (since main is an Ubuntu component name as well as a Debian component name). I would suggest that a reasonable implementation strategy would be for the code handling new binary packages to check whether the component is valid in the target distribution before applying component overrides.

Changed in launchpad:
importance: Medium → Low
Revision history for this message
Francis J. Lacoste (flacoste) wrote :

Escalated by Bryce on behalf of the Ubuntu community on 2012-01-10

Changed in launchpad:
importance: Low → Critical
Ian Booth (wallyworld)
Changed in launchpad:
assignee: nobody → Ian Booth (wallyworld)
status: Triaged → In Progress
William Grant (wgrant)
tags: added: escalated
Curtis Hovey (sinzui)
tags: removed: escalated
tags: added: escalated
Revision history for this message
Launchpad QA Bot (lpqabot) wrote :
tags: added: qa-needstesting
Changed in launchpad:
status: In Progress → Fix Committed
William Grant (wgrant)
tags: added: qa-ok
removed: qa-needstesting
Ian Booth (wallyworld)
Changed in launchpad:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.