~cjwatson/launchpad:built-using-guard-deletion

Last commit made on 2020-04-22
Get this branch:
git clone -b built-using-guard-deletion https://git.launchpad.net/~cjwatson/launchpad
Only Colin Watson can upload to this branch. If you are Colin Watson please log in for upload directions.

Branch merges

Branch information

Name:
built-using-guard-deletion
Repository:
lp:~cjwatson/launchpad

Recent commits

06ccc3e... by Colin Watson

Simplify tests using createFromSourcePackageReleases

c0c4aa2... by Colin Watson

Expand deletion guard to other pockets

It now checks all pockets that could legitimately depend on the one from
which the publication is being deleted.

d7fbcfd... by Colin Watson

Guard removal of sources referenced by Built-Using

Prevent SourcePackagePublishingHistory.requestDeletion from deleting
source publications that have Built-Using references from active binary
publications in the same archive and suite.

This isn't necessarily complete: in particular, it can miss references
from other pockets, and in any case it might race with a build still in
progress. The intent of this is not to ensure integrity, but to avoid
some easily-detectable mistakes that could cause confusion.

LP: #1868558

d6e1f11... by Colin Watson

Show Built-Using references in the web UI

LP: #1868558

e9bb481... by Colin Watson

Add BinarySourceReference.createFromSourcePackageReleases

This makes some tests (especially in branches further up this stack)
more convenient.

8983670... by Colin Watson

Refactor createFromRelationship using Archive.getPublishedSources

Now that we're only considering a single archive, this is equivalent and
much clearer.

7ca1f32... by Colin Watson

Limit Built-Using references to the same archive and series

Allowing cross-archive references makes the dominator's job harder, as
well as permitting non-consensual pinning of sources to the Published
state in foreign archives. Forbidding such references may be confusing
in some cases, but seems likely to be less bad than the alternative.

a4163e3... by Colin Watson

Add more vertical whitespace

0692e86... by Colin Watson

Don't consider SPPH.status when creating BSRs

We don't normally treat SUPERSEDED differently from DELETED in this sort
of situation, and at that point it isn't really worth checking the
status at all.

fde0f10... by Colin Watson

Preserve original Built-Using fields for publication

We aren't sure whether apt will get confused if the exact serialisation
(e.g. ordering) of Built-Using in Packages differs from that in the
package's control file, so let's preserve it rather than trying to
reconstruct it.