eager shall be default behaviour.
yakuake -> kdebase -> kdelibs xorg-server -> xorg-input, xorg-video in bug3607 scenario, can be seen that upgrade only kdelibs also upgrades its reverse deps if kdebase and yakuake is upgraded. upgrading only xorg-server upgrades its dependencies xorg-input and xorg-video if they are upgraded. BUG:FIXED:3607
This commit is contained in:
@@ -658,8 +658,6 @@ expanded to package names.
|
||||
default=False, help=_("Ignore file conflicts"))
|
||||
group.add_option("--ignore-package-conflicts", action="store_true",
|
||||
default=False, help=_("Ignore package conflicts"))
|
||||
group.add_option("-e", "--eager", action="store_true",
|
||||
default=False, help=_("eager upgrades"))
|
||||
group.add_option("-f", "--fetch-only", action="store_true",
|
||||
default=False, help=_("Fetch upgrades but do not install."))
|
||||
group.add_option("-x", "--exclude", action="append",
|
||||
|
||||
+7
-21
@@ -521,12 +521,8 @@ def plan_upgrade(A, ignore_build = False):
|
||||
# add packages that can be upgraded
|
||||
if dependency.repo_satisfies_dep(dep):
|
||||
if ctx.installdb.is_installed(dep.package):
|
||||
if ctx.get_option('eager'):
|
||||
if not is_upgradable(dep.package):
|
||||
continue
|
||||
else:
|
||||
if dependency.installed_satisfies_dep(dep):
|
||||
continue
|
||||
if not is_upgradable(dep.package):
|
||||
continue
|
||||
if not dep.package in G_f.vertices():
|
||||
Bp.add(str(dep.package))
|
||||
G_f.add_dep(x, dep)
|
||||
@@ -543,21 +539,11 @@ def plan_upgrade(A, ignore_build = False):
|
||||
pkg = packagedb.get_package(x)
|
||||
rev_deps = packagedb.get_rev_deps(x)
|
||||
for (rev_dep, depinfo) in rev_deps:
|
||||
if ctx.get_option('eager'):
|
||||
# add all upgradable reverse deps
|
||||
if is_upgradable(rev_dep):
|
||||
if not rev_dep in G_f.vertices():
|
||||
Bp.add(rev_dep)
|
||||
G_f.add_plain_dep(rev_dep, x)
|
||||
else:
|
||||
# add only installed but unsatisfied reverse dependencies
|
||||
if ctx.installdb.is_installed(rev_dep) and \
|
||||
(not dependency.installed_satisfies_dep(depinfo)):
|
||||
if not dependency.repo_satisfies_dep(depinfo):
|
||||
raise Error(_('Reverse dependency %s of %s cannot be satisfied') % (rev_dep, x))
|
||||
if not rev_dep in G_f.vertices():
|
||||
Bp.add(rev_dep)
|
||||
G_f.add_plain_dep(rev_dep, x)
|
||||
# add all upgradable reverse deps
|
||||
if is_upgradable(rev_dep):
|
||||
if not rev_dep in G_f.vertices():
|
||||
Bp.add(rev_dep)
|
||||
G_f.add_plain_dep(rev_dep, x)
|
||||
B = Bp
|
||||
|
||||
if ctx.config.get_option('debug'):
|
||||
|
||||
@@ -24,15 +24,30 @@ YAKUAKE = "yakuake"
|
||||
KDEBASE = "kdebase"
|
||||
KDELIBS = "kdelibs"
|
||||
|
||||
XORG_SERVER = "xorg-server"
|
||||
XORG_INPUT = "xorg-input"
|
||||
XORG_VIDEO = "xorg-video"
|
||||
|
||||
let_repo_had(YAKUAKE, with_dependencies(KDEBASE))
|
||||
let_repo_had(KDEBASE, with_dependencies(KDELIBS))
|
||||
let_repo_had(KDELIBS)
|
||||
|
||||
let_pisi_had(YAKUAKE, KDEBASE, KDELIBS)
|
||||
let_repo_had(XORG_INPUT)
|
||||
let_repo_had(XORG_VIDEO)
|
||||
let_repo_had(XORG_SERVER, with_dependencies(XORG_INPUT, XORG_VIDEO))
|
||||
|
||||
let_pisi_had(YAKUAKE, KDEBASE, KDELIBS, XORG_SERVER, XORG_INPUT, XORG_VIDEO)
|
||||
|
||||
def run():
|
||||
repo_version_bumped(KDEBASE)
|
||||
repo_version_bumped(KDELIBS)
|
||||
repo_version_bumped(YAKUAKE)
|
||||
|
||||
repo_version_bumped(XORG_INPUT)
|
||||
repo_version_bumped(XORG_VIDEO)
|
||||
repo_version_bumped(XORG_SERVER)
|
||||
|
||||
repo_updated_index()
|
||||
pisi_upgraded(YAKUAKE)
|
||||
|
||||
pisi_upgraded(KDELIBS)
|
||||
pisi_upgraded(XORG_SERVER)
|
||||
|
||||
Reference in New Issue
Block a user