Open main menu

CDOT Wiki β

Changes

Koji Follow

1,303 bytes removed, 13:16, 6 March 2013
no edit summary
** latest-follow mode will perform a "list-tagged --latest" and que each unbuilt package in the given order
== Possible Common Repository Breakage Scenarios due to basic circular dependencies ==
=== Scenario 1 All of the following examples take place after this series of events ===
* Start of initial-build
# libA-1.0-1.fc17 is built (Provides: libA.so.1)
# packageB-1.0-1.fc17 has a BuildRequires: requires on packageC but is bootstrapped and built without it and built# packageC-1.0-1.fc17 has a BuildRequires: requires on libA,packageB and is built with libA-1.0-1.fc17,packageB-1.0-1.fc17 (Requires: libA.so.1,packageB)# packageB-1.0-2.fc17 has a BuildRequires: requires on packageC and is built with packageC-1.0-1.fc17,libA-1.0-1.fc17,packageB-1.0-1.fc17# libA-2.0-1.fc18 is built (ProvidesRequires: libA.so.2)## Attempting to build the full version of packageB-2.0-1.fc18 will depend on packageC-1.0-1.fc17 which requires libA.so.1 which only find libA.so.2 with the current repodata (this package needs to be bootstrapped again)## Attempting to build packageC-2.0-1.fc18 will depend on packageB-1.0-2.fc17 which will depend on packageC-1.0-1.fc17 which brings us to the same breakage error above
=== Scenario 2 Building a new library first and the packages that depend on it later ===
# libA* Start of mass-1.0-1.fc17 is built (Provides: libA.so.1)# packageB-1.0-1.fc17 has a BuildRequires: packageC but is bootstrapped without it and built# packageC-1.0-1.fc17 has a BuildRequires: libA,packageB and is built with libA-1.0-1.fc17,packageB-1.0-1.fc17 (Requires: libA.so.1)# packageB-1.0-2.fc17 has a BuildRequires: packageC and is built with packageC-1.0-1.fc17,libA-1.0-1.fc17,packageB-1.0-1.fc17# packageB-2.0-1.fc18 has a BuildRequires: packageC and is built with packageC-1.0-1.fc17,libA-1.0-1.fc17,packageB-1.0-2.fc17# packageC-2.0-1.fc18 has a BuildRequires: libA,packageB and is built with libA-1.0-1.fc17,packageB-2.0-1.fc18,packageC-1.0-1.fc17 (Requires: libA.so.1)rebuild
# libA-2.0-1.fc18 is built (Provides: libA.so.2)
## All packages will now appear * Attempting to be up to date and current except that the repo is now broken as trying to install packageC build packageB-2.0-2.fc18 will require packageC-1.0-1.fc17 which requires libA.so.1 which is not being provided for since the updated libA only provides finds libA.so.2given the current repodata (this package needs to be bootstrapped again)#* Attempting to build packageC-2.0-1.fc18 will require packageB-1.0-2.fc17 which requires packageC-1.0-1.fc17 which brings us to the same breakage error as shown above
=== Scenario 3 Building a new package first and then the following libraries they depend on ===
# libA* Start of mass-1.0-1.fc17 is built (Provides: libA.so.1)rebuild# packageB-12.0-12.fc17 fc18 has a BuildRequires: requires on packageC but and is bootstrapped without it and built# with packageC-1.0-1.fc17 which has a BuildRequires: requires on libA,packageB and is built with which installs libA-1.0-1.fc17,and packageB-1.0-12.fc17 (Requires: libA.so.1packageC)# packageC-2.0-1.fc18 has a BuildRequires: requires on libA,packageB and is built with libA-1.0-1.fc17,packageB-1.0-1.fc17 (Requires: libA.so.1)# libA-2.0-1.fc18 is built (Provides: libA.so.2)## packageB-2.0-1.fc18 depends on packageC which has a requires on packageC-2.0-1.fc18,libA-2.0-1.fc18,packageB-1.0-1.fc17 which requires libA.so.1 which only finds libA.so.2 given the current repodata === Scenario 4 === # libA-1.0-1.fc17 is built (Provides: libA.so.1)# packageB-1.0-1.fc17 has a BuildRequires: packageC but is bootstrapped without it and built# installs packageC-1.0-1.fc17 has a BuildRequires: libA,packageB and is built with libA-1.0-1.fc17,packageB-1.0-1.fc17 (Requires: libA.so.1)# packageB-2.0-1.fc18 has a BuildRequires: packageC and is built with packageC-1.0-1.fc17,libA-1.0-1.fc17,packageB-1.0-1.fc17)
# libA-2.0-1.fc18 is built (Provides: libA.so.2)
## * All packages will now appear to be up to date and current except that the repo is now broken as trying to install packageC-2will require libA.so.0-1.fc18 has a BuildRequires: libA,packageB which finds is not being provided for at all since the updated libA-2.0-1.fc18,packageB-2.0-1.fc18,packageC-1.0-1.fc17 which requires libA.so.1 which only finds the latest provides libA.so.2 in the repodata
= Downloads =
1
edit