Clarify the meaning conf.allow_only_compatible_base_modules=False

config.allow_compatible_base_modules=False does different things for
build-requires selection and for module reuse. Clarify this in the config
key documentation.

(This config key is really: True: "do what RHEL expects"
False: "do what Fedora expects")
This commit is contained in:
Owen W. Taylor
2020-12-08 11:36:55 -05:00
parent 3a633967ec
commit e48983132c
2 changed files with 9 additions and 3 deletions

View File

@@ -440,8 +440,12 @@ class Config(object):
"type": bool,
"default": True,
"desc": "When True, only modules built on top of compatible base modules are "
"considered by MBS as possible buildrequirement. When False, modules "
"built against any base module stream can be used as a buildrequire.",
"considered by MBS as possible buildrequirement or as a reuse candidate. "
"When False, modules built against any base module stream sharing a "
"virtual stream can be used as a buildrequire, but only modules built "
"against the exact same base module stream are considered as candidates "
"for reuse. Setting this to True requires base module streams to be of the "
" form: <prefix><x>.<y>.<z>.",
},
"base_module_stream_exclusions": {
"type": list,

View File

@@ -83,7 +83,9 @@ def get_reusable_module(module):
#
# 1) The `conf.allow_only_compatible_base_modules` is False. This means that MBS should
# not try to find any compatible base modules in its DB and simply use the buildrequired
# base module as it is.
# base module as it is. (*NOTE* This is different than the meaning of
# allow_only_compatible_base_modules=False when looking up build requirements - where
# it means to accept any module buildrequiring a base modul sharing a virtual stream.)
# 2) The `conf.allow_only_compatible_base_modules` is True and DBResolver is used. This means
# that MBS should try to find the compatible modules using its database.
# The `get_base_module_mmds` finds out the list of compatible modules and returns mmds of