From d99fe599da15fab366d3eb22e23e6e9f117ca27d Mon Sep 17 00:00:00 2001 From: Oskar Eichler Date: Fri, 28 Aug 2026 03:41:30 +0300 Subject: [PATCH 1/2] Strip complete version constraints without joining package names --- lib/pkg-config.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/pkg-config.rb b/lib/pkg-config.rb index 542d67c..f5bca62 100644 --- a/lib/pkg-config.rb +++ b/lib/pkg-config.rb @@ -690,7 +690,7 @@ def parse_pc def parse_requires(requires) return [] if requires.nil? - requires_without_version = requires.gsub(/(?:<|>|<=|>=|=)\s*[\d.a-zA-Z_-]+\s*/, "") + requires_without_version = requires.gsub(/(?:!=|<=|>=|<|>|=)\s*[^,\s]+\s*/, " ") requires_without_version.split(/[,\s]+/) end From 91f78590a3fd4c1a0236fd3d9f4a8496c59dfc45 Mon Sep 17 00:00:00 2001 From: Oskar Eichler <62393985+OskarEichler@users.noreply.github.com> Date: Fri, 28 Aug 2026 15:18:48 +0300 Subject: [PATCH 2/2] Add regression coverage for strip complete version constraints without joining package names --- test/test-pkg-config.rb | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/test/test-pkg-config.rb b/test/test-pkg-config.rb index 67893b3..523a49d 100644 --- a/test/test-pkg-config.rb +++ b/test/test-pkg-config.rb @@ -313,6 +313,11 @@ def test_equals_to assert_equal(["fribidi"], parse_requires("fribidi = 1.0")) end + + def test_multiple_requirements_with_compact_constraints + assert_equal(["foo", "bar", "baz"], + parse_requires("foo>=1.2 bar != 2.0, baz=3.0")) + end end sub_test_case("#merge_back_cflags") do