From 289d38a126b140ab6e5cfaad22dc593f530e9097 Mon Sep 17 00:00:00 2001
From: Domizio Demichelis
Date: Fri, 8 May 2020 18:37:18 +0700
Subject: [PATCH] added conditional definition of pagy_t_with_i18n to avoid
ruby 2.7 "last argument as keyword parameters" deprecation warning (closes
#241)
---
lib/pagy/extras/i18n.rb | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/lib/pagy/extras/i18n.rb b/lib/pagy/extras/i18n.rb
index 086b1688d..5791a52b3 100644
--- a/lib/pagy/extras/i18n.rb
+++ b/lib/pagy/extras/i18n.rb
@@ -11,7 +11,14 @@ module Frontend
Pagy::I18n.clear.instance_eval { undef :load; undef :t } # unload the pagy default constant for efficiency
alias_method :pagy_without_i18n, :pagy_t
- def pagy_t_with_i18n(*args) ::I18n.t(*args) end
+ if Gem::Version.new(::I18n::VERSION) < Gem::Version.new('1.6.0')
+ def pagy_t_with_i18n(*args) ::I18n.t(*args) end
+ else
+ # keep 1.9 compatibility by hiding 2.0+ syntax in string
+ module_eval <<-RUBY
+ def pagy_t_with_i18n(key, **opts) ::I18n.t(key, **opts) end
+ RUBY
+ end
alias_method :pagy_t, :pagy_t_with_i18n
end