diff --git a/debian/changelog b/debian/changelog
index 3431b7a..9302717 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+hiera-eyaml (3.2.2+git20220223.1.602aaa9-1) UNRELEASED; urgency=low
+
+  * New upstream snapshot.
+
+ -- Debian Janitor <janitor@jelmer.uk>  Wed, 27 Apr 2022 01:06:21 -0000
+
 hiera-eyaml (3.2.2-2) unstable; urgency=medium
 
   * Wrap long lines in changelog entries: 3.2.2-1.
diff --git a/lib/hiera/backend/eyaml/plugins.rb b/lib/hiera/backend/eyaml/plugins.rb
index ee10606..fdc9a54 100644
--- a/lib/hiera/backend/eyaml/plugins.rb
+++ b/lib/hiera/backend/eyaml/plugins.rb
@@ -25,20 +25,22 @@ class Hiera
 
         def self.find
 
+          gem_version = Gem::Version.new(Gem::VERSION)
           this_version = Gem::Version.create(Hiera::Backend::Eyaml::VERSION)
-          index = Gem::VERSION >= "1.8.0" ? Gem::Specification : Gem.source_index
+          index = gem_version >= Gem::Version.new("1.8.0") ? Gem::Specification : Gem.source_index
 
           [index].flatten.each do |source|
-            specs = Gem::VERSION >= "1.6.0" ? source.latest_specs(true) : source.latest_specs
+            specs = gem_version >= Gem::Version.new("1.6.0") ? source.latest_specs(true) : source.latest_specs
 
-            specs.each do |spec|
+            specs.each do |stub|
+              spec = gem_version >= Gem::Version.new("3.3.0") ? stub.to_spec : stub
               next if @@plugins.include? spec
 
               dependency = spec.dependencies.find { |d| d.name == "hiera-eyaml" }
               next if dependency && !dependency.requirement.satisfied_by?( this_version )
 
               file = nil
-              if Gem::VERSION >= "1.8.0"
+              if gem_version >= Gem::Version.new("1.8.0")
                 file = spec.matches_for_glob("**/eyaml_init.rb").first
               else
                 file = Gem.searcher.matching_files(spec, "**/eyaml_init.rb").first