语法错误,意外的 tLABEL,需要 ')' (SyntaxError)

Syntax error, unexpected tLABEL, expecting ')' (SyntaxError)

环境

我在我的应用程序中使用了 sendgrid-ruby gem 每当我 运行 rails 服务器它给我以下来自 gems/sendgrid-ruby-4.0.8 的错误/lib/sendgrid/client.rb:17

/.rvm/gems/ruby-1.9.3-p547@demo/gems/sendgrid-ruby-4.0.8/lib/sendgrid-ruby.rb:1:in `require_relative': /.rvm/gems/ruby-1.9.3-p547@demo/gems/sendgrid-ruby-4.0.8/lib/sendgrid/client.rb:17: syntax error, unexpected tLABEL, expecting ')' (SyntaxError) def initialize(api_key: nil, host: nil, request_head... ^ /.rvm/gems/ruby-1.9.3-p547@demo/gems/sendgrid-ruby-4.0.8/lib/sendgrid/client.rb:17: Can't assign to nil ... def initialize(api_key: nil, host: nil, request_headers: ... ... ^ /.rvm/gems/ruby-1.9.3-p547@demo/gems/sendgrid-ruby-4.0.8/lib/sendgrid/client.rb:17: Can't assign to nil ...ialize(api_key: nil, host: nil, request_headers: nil, versio... ... ^ /.rvm/gems/ruby-1.9.3-p547@demo/gems/sendgrid-ruby-4.0.8/lib/sendgrid/client.rb:17: Can't assign to nil ...ost: nil, request_headers: nil, version: nil)

我检查了 gem sengrid-ruby 的同一文件和同一行。 它在线下

def initialize(api_key: nil, host: nil, request_headers: nil, version: nil)

如果我将其替换到下面,它不会给我。

def initialize(api_key, host, request_headers, version)

这是rails或ruby相关版本的语法错误吗? 还有很多其他 gem 中包含相同语法的错误。 我应该如何处理此类语法错误?

关键字参数需要 Ruby 的 2.0.0 或更高版本。 https://thoughtbot.com/blog/ruby-2-keyword-arguments