summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbinoam P. Marques Jr <abinoam@gmail.com>2018-05-12 21:01:38 -0300
committerGitHub <noreply@github.com>2018-05-12 21:01:38 -0300
commit4d236c63e8c5ebcd72b2ee10a73da9108cb553fb (patch)
tree80e657ad08f023ebf5be8ae383ae9aebb4f6aac2
parentfa9f97754a76136bf8fb188ef9138b80760601fd (diff)
parent1b0a7e826a6d3b355889598b6d2812433cc3f306 (diff)
downloadhighline-4d236c63e8c5ebcd72b2ee10a73da9108cb553fb.tar.gz
Merge pull request #231 from koic/deprecate_safe_level_of_erb_new_in_ruby_2_6
Deprecate safe_level of ERB.new in Ruby 2.6
-rw-r--r--lib/highline/list_renderer.rb6
-rwxr-xr-xlib/highline/question.rb6
-rw-r--r--lib/highline/statement.rb6
3 files changed, 15 insertions, 3 deletions
diff --git a/lib/highline/list_renderer.rb b/lib/highline/list_renderer.rb
index cc53bf0..5446ea5 100644
--- a/lib/highline/list_renderer.rb
+++ b/lib/highline/list_renderer.rb
@@ -92,7 +92,11 @@ class HighLine
def render_list_items(items)
items.to_ary.map do |item|
item = String(item)
- template = ERB.new(item, nil, "%")
+ template = if ERB.instance_method(:initialize).parameters.assoc(:key) # Ruby 2.6+
+ ERB.new(item, trim_mode: "%")
+ else
+ ERB.new(item, nil, "%")
+ end
template_renderer =
HighLine::TemplateRenderer.new(template, self, highline)
template_renderer.render
diff --git a/lib/highline/question.rb b/lib/highline/question.rb
index 6dd1293..50478ed 100755
--- a/lib/highline/question.rb
+++ b/lib/highline/question.rb
@@ -548,7 +548,11 @@ class HighLine
else
# evaluate ERb under initial scope, so it will have
# access to question and answer
- template = ERB.new(confirm, nil, "%")
+ template = if ERB.instance_method(:initialize).parameters.assoc(:key) # Ruby 2.6+
+ ERB.new(confirm, trim_mode: "%")
+ else
+ ERB.new(confirm, nil, "%")
+ end
template_renderer = TemplateRenderer.new(template, self, highline)
template_renderer.render
end
diff --git a/lib/highline/statement.rb b/lib/highline/statement.rb
index 35d7961..6f14868 100644
--- a/lib/highline/statement.rb
+++ b/lib/highline/statement.rb
@@ -78,7 +78,11 @@ class HighLine
end
def template
- @template ||= ERB.new(template_string, nil, "%")
+ @template ||= if ERB.instance_method(:initialize).parameters.assoc(:key) # Ruby 2.6+
+ ERB.new(template_string, trim_mode: "%")
+ else
+ ERB.new(template_string, nil, "%")
+ end
end
end
end