summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG5
-rw-r--r--lib/puppet/parser/collector.rb2
-rwxr-xr-xlib/puppet/provider/package/gem.rb8
3 files changed, 10 insertions, 5 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 3f62a6367..6b039f1ed 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,8 @@
+ Fixed #1003 -- Applying DavidS's patch to fix searching for
+ tags in sql.
+
+ Fixed #992 -- Puppet is now compatible with gems 1.0.1.
+
Fixed #968 again, this time with tests -- parseonly works,
including not compiling the configurations, and also storeconfigs
is no longer required during parse-testing.
diff --git a/lib/puppet/parser/collector.rb b/lib/puppet/parser/collector.rb
index e0c37cd35..2699dc6e1 100644
--- a/lib/puppet/parser/collector.rb
+++ b/lib/puppet/parser/collector.rb
@@ -51,7 +51,7 @@ class Puppet::Parser::Collector
search = "(exported=? AND restype=?)"
values = [true, @type]
- search += " AND (?)" and values << @equery if @equery
+ search += " AND (%s)" % @equery if @equery
# We're going to collect objects from rails, but we don't want any
# objects from this host.
diff --git a/lib/puppet/provider/package/gem.rb b/lib/puppet/provider/package/gem.rb
index 6e777a735..f73694779 100755
--- a/lib/puppet/provider/package/gem.rb
+++ b/lib/puppet/provider/package/gem.rb
@@ -23,14 +23,14 @@ Puppet::Type.type(:package).provide :gem, :parent => Puppet::Provider::Package d
end
begin
- list = execute(command).split("\n\n").collect do |set|
+ list = execute(command).split("\n").collect do |set|
if gemhash = gemsplit(set)
gemhash[:provider] = :gem
gemhash
else
nil
end
- end.reject { |p| p.nil? }
+ end.compact
rescue Puppet::ExecutionFailure => detail
raise Puppet::Error, "Could not list gems: %s" % detail
end
@@ -44,8 +44,8 @@ Puppet::Type.type(:package).provide :gem, :parent => Puppet::Provider::Package d
def self.gemsplit(desc)
case desc
- when /^\*\*\*/: return nil
- when /^(\S+)\s+\((.+)\)\n/
+ when /^\*\*\*/, /^\s*$/, /^\s+/; return nil
+ when /^(\S+)\s+\((.+)\)/
name = $1
version = $2.split(/,\s*/)[0]
return {