#format rst ================= Fixing bug 34086_ ================= .. _34086: https://bugs.launchpad.net/launchpad/+bug/34086 There's a few options: **A new architecture type** Instead of borrowing "i386" as an arch-all architecture, we could have a "archall" architecture (albeit special-cased) thus allowing us to give arch:all packages their own BPBs (Binary Package Build) and only garbage-collect them when the source is superseded *Pros*: - Can make better use of the build farm by removing nominatedarchindep and building on all architectures. *Cons*: - Difficult and time-consuming to implement **Dominate in binary groupings** Only dominate all a source's binaries in one DAS all at once, or not at all. Effectively, this is preventing the arch:all from being dominated too early when other binaries in the same DAS cannot be dominated yet. *Pros*: - Easy-ish to implement; *Cons*: - requires thought about performance degradation - Another special case; - doesn't head in the "right" direction as above; - potentially leaves some binaries hanging around longer than necessary **Track dependencies in the packages** Reference count dependencies on arch:all binaries and only dominate when the reference count is zero. *Pros*: - Overcomes the limitation of the previous solution where binaries linger longer than necessary *Cons*: - Considerably harder to implement **Delay domination of arch-all binary** Don't dominate the arch-all binary until all the other non-arch-all binaries for the same source are superseded. *Pros*: - Doesn't leave archive bloat as bad as dominating in groups - should be quick and easy to implement *Cons*: - Another special case - possible performance issues See also what Debian did: http://ftp-master.debian.org/wiki/projects/arch-all-tracking/