Comment 2 for bug 1347916

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

We wouldn't normally allow users to delete objects owned by other users (even if they reference objects owned by the user trying to do the deletion), so the way we'd prefer to fix this would be to make it possible to detach a recipe from a branch, allowing its old builds to stay around while making it impossible to build the recipe until it's updated to point to some other branch. (This is what we do for snap packages, where we learned lessons from recipes.)

However, with the current data model, this is impractical because recipes aren't represented textually in the Launchpad database, but rather in a parsed form that's full of things like foreign keys to the branches they use, and Launchpad then expects to be able to convert that back into a textual form at any time for presentation. That would break if we started detaching recipes from their branches. I think perhaps we might want to extend the data model with fallback text fields or something, or else do something more sophisticated with the textual presentation, but we'd have to spend some time experimenting.

As to "after 3 years", there are only a couple of us working on Launchpad and an awful lot to do!

In the meantime, I'm working on a change to allow Launchpad staff to delete recipes, which should at least let us deal with simple cases in support requests more easily.