From 3005582f15237393d6dd9df5e8b6429112b2e12a Mon Sep 17 00:00:00 2001 From: Dominyk Tiller <dominyktiller@gmail.com> Date: Wed, 10 Aug 2016 16:46:58 +0100 Subject: [PATCH] gpg: combine detection logic --- Library/Homebrew/gpg.rb | 22 ++++++++-------------- 1 file changed, 8 insertions(+), 14 deletions(-) diff --git a/Library/Homebrew/gpg.rb b/Library/Homebrew/gpg.rb index 166985e6d3..a9ae0276b5 100644 --- a/Library/Homebrew/gpg.rb +++ b/Library/Homebrew/gpg.rb @@ -1,32 +1,26 @@ require "utils" class Gpg - # Should ideally be using `GPGRequirement.new.gpg2`, etc to get path here but - # calling that directly leads to: - # requirement.rb:139:in `which_all': uninitialized constant Requirement::ORIGINAL_PATHS (NameError) - # when i.e. including the gpg syntax in wget. Not problematic if not used by formula code. - # For now, the path determination blob of code has been semi-modified for here. - # Look into this more. - def self.gpg - which("gpg") do |gpg| + def self.find_gpg(executable) + which_all(executable).detect do |gpg| gpg_short_version = Utils.popen_read(gpg, "--version")[/\d\.\d/, 0] next unless gpg_short_version Version.create(gpg_short_version.to_s) == Version.create("2.0") end end + def self.gpg + find_gpg("gpg") + end + def self.gpg2 - which("gpg2") do |gpg2| - gpg2_short_version = Utils.popen_read(gpg2, "--version")[/\d\.\d/, 0] - next unless gpg2_short_version - Version.create(gpg2_short_version.to_s) == Version.create("2.0") - end + find_gpg("gpg2") end GPG_EXECUTABLE = gpg2 || gpg def self.available? - File.exist?(GPG_EXECUTABLE.to_s) && File.executable?(GPG_EXECUTABLE) + File.exist?(GPG_EXECUTABLE.to_s) && File.executable?(GPG_EXECUTABLE.to_s) end def self.create_test_key(path) -- GitLab