[matter] implement support for the "unmerge: yes/no" parameter
This commit is contained in:
@@ -366,6 +366,16 @@ class PackageBuilder(object):
|
||||
print_warning("but 'dependencies: no' in config, aborting")
|
||||
return None
|
||||
|
||||
# protect against unwanted package unmerges
|
||||
if self._params['unmerge'] == "no":
|
||||
unmerges = [x for x in real_queue if x.operation == "uninstall"]
|
||||
if unmerges:
|
||||
deps = "\n ".join([x.cpv for x in unmerges])
|
||||
print_warning("found package unmerges:")
|
||||
print_warning(deps)
|
||||
print_warning("but 'unmerge: no' in config, aborting")
|
||||
return None
|
||||
|
||||
# inspect use flags changes
|
||||
allow_new_useflags = self._params['new-useflags'] == "yes"
|
||||
allow_removed_useflags = \
|
||||
|
||||
@@ -192,6 +192,13 @@ class MatterSpec(GenericSpecFunctions):
|
||||
'desc': "Allow soft-blockers in the merge queue?\n "
|
||||
"Packages will be unmerged if yes. (yes/no)",
|
||||
},
|
||||
'unmerge': {
|
||||
'cb': self.valid_yes_no,
|
||||
've': self.ve_string_stripper,
|
||||
'default': "yes",
|
||||
'desc': "Allow package unmerges due to Portage\n "
|
||||
"soft-blockers resolution. (yes/no)",
|
||||
},
|
||||
'pkgpre': {
|
||||
'cb': self.not_none,
|
||||
've': self.ve_string_open_file_read,
|
||||
|
||||
@@ -51,6 +51,11 @@ not-installed: no
|
||||
# Default is: yes
|
||||
soft-blocker: yes
|
||||
|
||||
# Allow package unmerges in the merge queue? Packages will be unmerged if yes.
|
||||
# Valid values are either "yes" or "no"
|
||||
# Default is: yes
|
||||
unmerge: yes
|
||||
|
||||
# Allow dependencies to be pulled in?
|
||||
# Valid values are either "yes" or "no"
|
||||
# Default is: no
|
||||
|
||||
@@ -32,6 +32,11 @@ not-installed: yes
|
||||
# Default is: yes
|
||||
soft-blocker: yes
|
||||
|
||||
# Allow package unmerges in the merge queue? Packages will be unmerged if yes.
|
||||
# Valid values are either "yes" or "no"
|
||||
# Default is: yes
|
||||
unmerge: yes
|
||||
|
||||
# Allow dependencies to be pulled in?
|
||||
# Valid values are either "yes" or "no"
|
||||
# Default is: no
|
||||
|
||||
@@ -39,6 +39,11 @@ not-installed: no
|
||||
# Default is: yes
|
||||
soft-blocker: yes
|
||||
|
||||
# Allow package unmerges in the merge queue? Packages will be unmerged if yes.
|
||||
# Valid values are either "yes" or "no"
|
||||
# Default is: yes
|
||||
unmerge: yes
|
||||
|
||||
# Allow dependencies to be pulled in?
|
||||
# Valid values are either "yes" or "no"
|
||||
# Default is: no
|
||||
|
||||
@@ -39,6 +39,11 @@ not-installed: no
|
||||
# Default is: yes
|
||||
soft-blocker: yes
|
||||
|
||||
# Allow package unmerges in the merge queue? Packages will be unmerged if yes.
|
||||
# Valid values are either "yes" or "no"
|
||||
# Default is: yes
|
||||
unmerge: yes
|
||||
|
||||
# Allow dependencies to be pulled in?
|
||||
# Valid values are either "yes" or "no"
|
||||
# Default is: no
|
||||
|
||||
Reference in New Issue
Block a user