ConfigParser: make splitReleasever public
Resolves: RHEL-76498
This commit is contained in:
		
							parent
							
								
									dbfef8aa4f
								
							
						
					
					
						commit
						547e78bb3e
					
				
							
								
								
									
										80
									
								
								0008-ConfigParser-make-splitReleasever-public.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										80
									
								
								0008-ConfigParser-make-splitReleasever-public.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,80 @@ | |||||||
|  | From 73ec298e31c8cd21fe5761a2e838951b2efdbf6f Mon Sep 17 00:00:00 2001 | ||||||
|  | From: Evan Goode <mail@evangoo.de> | ||||||
|  | Date: Tue, 21 Jan 2025 19:19:06 +0000 | ||||||
|  | Subject: [PATCH] ConfigParser: make splitReleasever public | ||||||
|  | 
 | ||||||
|  | Upstream commit: 522793b258da0b1f70c1f380b2c01ddfd27bc193 | ||||||
|  | Resolves: https://issues.redhat.com/browse/RHEL-68034 | ||||||
|  | ---
 | ||||||
|  |  bindings/swig/conf.i         | 1 + | ||||||
|  |  libdnf/conf/ConfigParser.cpp | 6 +++--- | ||||||
|  |  libdnf/conf/ConfigParser.hpp | 3 +-- | ||||||
|  |  3 files changed, 5 insertions(+), 5 deletions(-) | ||||||
|  | 
 | ||||||
|  | diff --git a/bindings/swig/conf.i b/bindings/swig/conf.i
 | ||||||
|  | index b6a0ce88..c42d5673 100644
 | ||||||
|  | --- a/bindings/swig/conf.i
 | ||||||
|  | +++ b/bindings/swig/conf.i
 | ||||||
|  | @@ -199,6 +199,7 @@ public:
 | ||||||
|  |      std::string & getHeader() noexcept; | ||||||
|  |      const Container & getData() const noexcept; | ||||||
|  |      Container & getData() noexcept; | ||||||
|  | +    static std::pair<std::string, std::string> splitReleasever(const std::string & releasever);
 | ||||||
|  |  }; | ||||||
|  |  } | ||||||
|  |  %clear std::string & text; | ||||||
|  | diff --git a/libdnf/conf/ConfigParser.cpp b/libdnf/conf/ConfigParser.cpp
 | ||||||
|  | index 977da757..186acdc8 100644
 | ||||||
|  | --- a/libdnf/conf/ConfigParser.cpp
 | ||||||
|  | +++ b/libdnf/conf/ConfigParser.cpp
 | ||||||
|  | @@ -103,7 +103,7 @@ std::pair<std::string, size_t> ConfigParser::substitute_expression(const std::st
 | ||||||
|  |                  if (variable_key == "releasever_major" || variable_key == "releasever_minor") { | ||||||
|  |                      const auto releasever_mapping = substitutions.find("releasever"); | ||||||
|  |                      if (releasever_mapping != substitutions.end()) { | ||||||
|  | -                        const auto & releasever_split = ConfigParser::split_releasever(releasever_mapping->second);
 | ||||||
|  | +                        const auto & releasever_split = ConfigParser::splitReleasever(releasever_mapping->second);
 | ||||||
|  |                          if (variable_key == "releasever_major") { | ||||||
|  |                              variable_value = std::get<0>(releasever_split); | ||||||
|  |                              variable_value_has_value = true; | ||||||
|  | @@ -231,7 +231,7 @@ std::pair<std::string, size_t> ConfigParser::substitute_expression(const std::st
 | ||||||
|  |      return std::make_pair(res, text.length()); | ||||||
|  |  } | ||||||
|  |   | ||||||
|  | -std::tuple<std::string, std::string> ConfigParser::split_releasever(const std::string & releasever)
 | ||||||
|  | +std::pair<std::string, std::string> ConfigParser::splitReleasever(const std::string & releasever)
 | ||||||
|  |  { | ||||||
|  |      // Uses the same logic as DNF 5 and as splitReleaseverTo in libzypp | ||||||
|  |      std::string releasever_major; | ||||||
|  | @@ -243,7 +243,7 @@ std::tuple<std::string, std::string> ConfigParser::split_releasever(const std::s
 | ||||||
|  |          releasever_major = releasever.substr(0, pos); | ||||||
|  |          releasever_minor = releasever.substr(pos + 1); | ||||||
|  |      } | ||||||
|  | -    return std::make_tuple(releasever_major, releasever_minor);
 | ||||||
|  | +    return std::make_pair(releasever_major, releasever_minor);
 | ||||||
|  |  } | ||||||
|  |   | ||||||
|  |  static void read(ConfigParser & cfgParser, IniParser & parser) | ||||||
|  | diff --git a/libdnf/conf/ConfigParser.hpp b/libdnf/conf/ConfigParser.hpp
 | ||||||
|  | index 584bd268..de8a0c9d 100644
 | ||||||
|  | --- a/libdnf/conf/ConfigParser.hpp
 | ||||||
|  | +++ b/libdnf/conf/ConfigParser.hpp
 | ||||||
|  | @@ -140,6 +140,7 @@ public:
 | ||||||
|  |      std::string & getHeader() noexcept; | ||||||
|  |      const Container & getData() const noexcept; | ||||||
|  |      Container & getData() noexcept; | ||||||
|  | +    static std::pair<std::string, std::string> splitReleasever(const std::string & releasever);
 | ||||||
|  |   | ||||||
|  |  private: | ||||||
|  |      std::map<std::string, std::string> substitutions; | ||||||
|  | @@ -159,8 +160,6 @@ private:
 | ||||||
|  |      static std::pair<std::string, size_t> substitute_expression(const std::string & text, | ||||||
|  |          const std::map<std::string, std::string> & substitutions, | ||||||
|  |          unsigned int depth); | ||||||
|  | -
 | ||||||
|  | -    static std::tuple<std::string, std::string> split_releasever(const std::string & releasever);
 | ||||||
|  |  }; | ||||||
|  |   | ||||||
|  |  inline void ConfigParser::setSubstitutions(const std::map<std::string, std::string> & substitutions) | ||||||
|  | -- 
 | ||||||
|  | 2.48.1 | ||||||
|  | 
 | ||||||
| @ -56,7 +56,7 @@ | |||||||
| 
 | 
 | ||||||
| Name:           libdnf | Name:           libdnf | ||||||
| Version:        %{libdnf_major_version}.%{libdnf_minor_version}.%{libdnf_micro_version} | Version:        %{libdnf_major_version}.%{libdnf_minor_version}.%{libdnf_micro_version} | ||||||
| Release:        7%{?dist} | Release:        8%{?dist} | ||||||
| Summary:        Library providing simplified C and Python API to libsolv | Summary:        Library providing simplified C and Python API to libsolv | ||||||
| License:        LGPL-2.1-or-later | License:        LGPL-2.1-or-later | ||||||
| URL:            https://github.com/rpm-software-management/libdnf | URL:            https://github.com/rpm-software-management/libdnf | ||||||
| @ -68,6 +68,7 @@ Patch4:         0004-Set-pool-flag-to-fix-pool_addfileprovides_queue-with.patch | |||||||
| Patch5:         0005-ConfigParser-fix-use-out-of-scope-leaks.patch | Patch5:         0005-ConfigParser-fix-use-out-of-scope-leaks.patch | ||||||
| Patch6:         0006-Add-tests-for-shell-style-variable-expansion.patch | Patch6:         0006-Add-tests-for-shell-style-variable-expansion.patch | ||||||
| Patch7:         0007-Add-persistence-config-option.patch | Patch7:         0007-Add-persistence-config-option.patch | ||||||
|  | Patch8:         0008-ConfigParser-make-splitReleasever-public.patch | ||||||
| 
 | 
 | ||||||
| BuildRequires:  cmake | BuildRequires:  cmake | ||||||
| BuildRequires:  gcc | BuildRequires:  gcc | ||||||
| @ -311,6 +312,9 @@ popd | |||||||
| %endif | %endif | ||||||
| 
 | 
 | ||||||
| %changelog | %changelog | ||||||
|  | * Fri Feb 07 2025 Carl George <carl@redhat.com> - 0.73.1-8 | ||||||
|  | - ConfigParser: make splitReleasever public (RHEL-68034) | ||||||
|  | 
 | ||||||
| * Wed Feb 05 2025 Petr Pisar <ppisar@redhat.com> - 0.73.1-7 | * Wed Feb 05 2025 Petr Pisar <ppisar@redhat.com> - 0.73.1-7 | ||||||
| - Add persistence configuration option (RHEL-78034) | - Add persistence configuration option (RHEL-78034) | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user