summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authormpalmer <mpalmer@980ebf18-57e1-0310-9a29-db15c13687c0>2007-01-31 06:48:31 +0000
committermpalmer <mpalmer@980ebf18-57e1-0310-9a29-db15c13687c0>2007-01-31 06:48:31 +0000
commit7889b0b252b24ff860dbf1a27bc78b928b187ae9 (patch)
tree6217bb063eb3e70aef1d2fe2cbe4b2dd07f96077 /lib
parent97583b481da9fd905428ce34eb225d34081f5179 (diff)
downloadpuppet-7889b0b252b24ff860dbf1a27bc78b928b187ae9.tar.gz
puppet-7889b0b252b24ff860dbf1a27bc78b928b187ae9.tar.xz
puppet-7889b0b252b24ff860dbf1a27bc78b928b187ae9.zip
Revert 2125, and instead change the way the 'latest' version is selected from the sorted list of versions
git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2132 980ebf18-57e1-0310-9a29-db15c13687c0
Diffstat (limited to 'lib')
-rwxr-xr-xlib/puppet/provider/package/apt.rb7
-rw-r--r--lib/puppet/util/package.rb3
2 files changed, 4 insertions, 6 deletions
diff --git a/lib/puppet/provider/package/apt.rb b/lib/puppet/provider/package/apt.rb
index 275e96222..6fa70e56a 100755
--- a/lib/puppet/provider/package/apt.rb
+++ b/lib/puppet/provider/package/apt.rb
@@ -84,7 +84,7 @@ Puppet::Type.type(:package).provide :apt, :parent => :dpkg do
if output =~ /Versions:\s*\n((\n|.)+)^$/
versions = $1
- version = versions.split(/\n/).collect { |version|
+ available_versions = versions.split(/\n/).collect { |version|
if version =~ /^([^\(]+)\(/
$1
else
@@ -95,14 +95,15 @@ Puppet::Type.type(:package).provide :apt, :parent => :dpkg do
versioncmp(a,b)
}
- unless version.length > 0
+ if available_versions.length == 0
self.debug "No latest version"
if Puppet[:debug]
print output
end
end
- return version.shift
+ # Get the latest and greatest version number
+ return available_versions.pop
else
self.err "Could not match string"
end
diff --git a/lib/puppet/util/package.rb b/lib/puppet/util/package.rb
index da07bdae4..00e04f64a 100644
--- a/lib/puppet/util/package.rb
+++ b/lib/puppet/util/package.rb
@@ -2,9 +2,6 @@ require 'puppet'
module Puppet::Util::Package
def versioncmp(version_a, version_b)
- # Invert the sort order, so higher versions always end up first.
- version_a, version_b = version_b, version_a
-
vre = /[-.]|\d+|[^-.\d]+/
ax = version_a.scan(vre)
bx = version_b.scan(vre)