Skip to content

Commit 56424ab

Browse files
committed
Merge pull request poise#94 from idio-cookbooks/version-detection
Fix version detection (setuptools and distribute)
2 parents ec1dd90 + f6d0837 commit 56424ab

File tree

1 file changed

+6
-10
lines changed

1 file changed

+6
-10
lines changed

‎providers/pip.rb‎

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -106,17 +106,13 @@ def load_current_resource
106106

107107
defcurrent_installed_version
108108
@current_installed_version ||= begin
109-
delimeter=/==/
110-
111-
normalized_package_name=new_resource.package_name.gsub('_','-')
112-
version_check_cmd="#{which_pip(new_resource)} freeze | grep -i '^#{normalized_package_name}=='"
113-
# incase you upgrade pip with pip!
114-
ifnew_resource.package_name.eql?('pip')
115-
delimeter=/\s/
116-
version_check_cmd="#{which_pip(@new_resource)} --version"
109+
out=nil
110+
package_name=new_resource.package_name.gsub('_','-')
111+
pattern=Regexp.new("^#{Regexp.escape(package_name)}\\(([^)]+)\\)$",true)
112+
shell_out("#{which_pip(new_resource)} list").stdout.lines.finddo |line|
113+
out=pattern.match(line)
117114
end
118-
result=shell_out(version_check_cmd)
119-
(result.exitstatus == 0) ? result.stdout.split(delimeter)[1].strip : nil
115+
out.nil? ? nil : out[1]
120116
end
121117
end
122118

0 commit comments

Comments
(0)