From 0d750818c8aa92fd08dd5179839f5734a1b1be96 Mon Sep 17 00:00:00 2001 From: Evan Goode Date: Tue, 4 Feb 2025 23:01:43 +0000 Subject: [PATCH] Document how --releasever, --releasever_{major,minor} affect each other Upstream commit: e931960d26a0782a23e8d89a6a662ee2442153fc --- dnf/conf/config.py | 16 ++++++++++++++++ doc/command_ref.rst | 2 ++ tests/test_config.py | 3 +++ 3 files changed, 21 insertions(+) diff --git a/dnf/conf/config.py b/dnf/conf/config.py index 6cf28724..7e5e8a38 100644 --- a/dnf/conf/config.py +++ b/dnf/conf/config.py @@ -425,6 +425,12 @@ class MainConf(BaseConfig): @releasever.setter def releasever(self, val): # :api + """ + Sets the releasever variable and sets releasever_major and + releasever_minor accordingly. releasever_major is set to the part of + $releasever before the first ".". releasever_minor is set to the part + after the first ".". + """ if val is None: self.substitutions.pop('releasever', None) return @@ -438,6 +444,11 @@ class MainConf(BaseConfig): @releasever_major.setter def releasever_major(self, val): # :api + """ + Override the releasever_major variable, which is usually derived from + the releasever variable. This setter does not update the value of + $releasever. + """ if val is None: self.substitutions.pop('releasever_major', None) return @@ -446,6 +457,11 @@ class MainConf(BaseConfig): @property def releasever_minor(self): # :api + """ + Override the releasever_minor variable, which is usually derived from + the releasever variable. This setter does not update the value of + $releasever. + """ return self.substitutions.get('releasever_minor') @releasever_minor.setter diff --git a/doc/command_ref.rst b/doc/command_ref.rst index 9ffd4c1c..f7b8e22c 100644 --- a/doc/command_ref.rst +++ b/doc/command_ref.rst @@ -337,10 +337,12 @@ Options ``--releasever_major=`` Override the releasever_major variable, which is usually automatically detected or taken from the part of ``$releasever`` before the first ``.``. + This option does not affect the ``$releasever`` variable. ``--releasever_minor=`` Override the releasever_minor variable, which is usually automatically detected or taken from the part of ``$releasever`` after the first ``.``. + This option does not affect the ``$releasever`` variable. .. _repofrompath_options-label: diff --git a/tests/test_config.py b/tests/test_config.py index 16bdcccb..69ba988c 100644 --- a/tests/test_config.py +++ b/tests/test_config.py @@ -149,15 +149,18 @@ class ConfTest(tests.support.TestCase): def test_releasever_major_minor(self): conf = Conf() conf.releasever = '1.2' + self.assertEqual(conf.releasever, '1.2') self.assertEqual(conf.releasever_major, '1') self.assertEqual(conf.releasever_minor, '2') # override releasever_major conf.releasever_major = '3' + self.assertEqual(conf.releasever, '1.2') self.assertEqual(conf.releasever_major, '3') self.assertEqual(conf.releasever_minor, '2') # override releasever_minor conf.releasever_minor = '4' + self.assertEqual(conf.releasever, '1.2') self.assertEqual(conf.releasever_major, '3') self.assertEqual(conf.releasever_minor, '4') -- 2.48.1