Rendering of reStructured text is not possible, please install Docutils.
=================
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/