From 9e92e706bf554c137a6b507ecbeacb44adfc877f Mon Sep 17 00:00:00 2001 From: Holger Just Date: Mon, 7 Oct 2019 19:41:59 +0200 Subject: [PATCH] Don't mix hash arguments with keyword arguments Since Ruby 2.7 differences explicit keyword arguments from implicit hash arguments, we should also avoid mixing them. By using explicit keyword arguments, we avoid warning in Ruby 2.7 and errors in Ruby 3.0. --- lib/rackstash/buffer_stack.rb | 4 ++-- lib/rackstash/logger.rb | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/rackstash/buffer_stack.rb b/lib/rackstash/buffer_stack.rb index 973950f..996a436 100644 --- a/lib/rackstash/buffer_stack.rb +++ b/lib/rackstash/buffer_stack.rb @@ -43,8 +43,8 @@ module Rackstash # @param buffer_args [Hash Object>] optional arguments for the new # {Buffer}. See {Buffer#initialize} for allowed values. # @return [Buffer] the newly created buffer - def push(buffer_args = {}) - buffer = Buffer.new(@flows, buffer_args) + def push(**buffer_args) + buffer = Buffer.new(@flows, **buffer_args) @stack.push buffer buffer diff --git a/lib/rackstash/logger.rb b/lib/rackstash/logger.rb index 35dca97..44a2ef2 100644 --- a/lib/rackstash/logger.rb +++ b/lib/rackstash/logger.rb @@ -401,8 +401,8 @@ module Rackstash # @param buffer_args [Hash Object>] optional arguments for the new # {Buffer}. See {Buffer#initialize} for allowed values. # @return [Buffer] the newly pushed {Buffer} instance - def push_buffer(buffer_args = {}) - buffer_stack.push(buffer_args) + def push_buffer(**buffer_args) + buffer_stack.push(**buffer_args) end # Remove a previously pushed {Buffer} from the {BufferStack} for the current @@ -451,10 +451,10 @@ module Rackstash # removed from the {BufferStack} again and is always flushed # automatically. # @return [Object] the return value of the block - def capture(buffer_args = {}) + def capture(**buffer_args) raise ArgumentError, 'block required' unless block_given? - buffer_stack.push(buffer_args) + buffer_stack.push(**buffer_args) begin yield ensure