Architecture is not created if there are no architecture specific packages
Current Behavior: Since the architectures supported by a repository are parsed from the packages list in the mongodb, architectures included in an upstream repository are not created if there are no architecture specific packages.
Expected Behavior: The architectures should be created containing only "architectures = all" type packages.
There should be a units_deb_arches collection in the mongodb in addition to the existing units_deb_component, units_deb_release, and units_deb collections.
This would have at least two additional benefits beyond fixing this bug:
- Parsing lists of all Packages to extract a list of one or two architectures is not good for performance.
- It is conceptually correct. Debian repositories are built from a pool of all packages, along with meta data that will allow you to identify useful subsets of these packages using a combination of releases, components, and architectures. The database should mirror this conceptual division.
Updated by quba42 about 4 years ago
I don't think I understand the use of architectures = all, so I'll need to do some research.
My understanding is that these are packages that are architecture independent packages (for example packages containing documentation) that can therefore be included with any architecture.