Как я могу настроить гем iex- ruby -client для работы с обычной программой ruby (не rails)? - PullRequest
0 голосов
/ 19 января 2020

Я работаю над проектом, пытающимся получить данные из API iex finance, и мне было интересно, как настроить обычную ruby программу. Я имел успех в рельсах, но не уверен, как это сделать в программе ruby. Я помещаю

файл конфигурации для iex- ruby gem

IEX::Api.configure do |config|
  config.publishable_token = 'Tpk_dd88c906f3ae4ac492644c2d0d82281d' # defaults to ENV['IEX_API_PUBLISHABLE_TOKEN']
  config.endpoint = 'https://sandbox.iexapis.com/v1' # defaults to 'https://cloud.iexapis.com/v1'
end 

в отдельный файл и требую в файле stock.rb и получаю следующую ошибку:

/ var / lib / gems / 2.2.0 / gems / iex- ruby -client-1.1.0 / lib / iex / api.rb: 1: в `require_relative ': /var/lib/gems/2.2. 0 / gems / iex- ruby -client-1.1.0 / lib / iex / endpoints / chart.rb: 14: синтаксическая ошибка, неожиданное '.' (SyntaxError) параметры & .each_pair do | k, v |

, который выглядит как синтаксическая ошибка в gemfile, но я уверен, что я просто что-то сделал не так. Любые идеи будут оценены.

1 Ответ

1 голос
/ 19 января 2020

Строка 14 в iex-ruby-client-1.1.0/lib/iex/endpoints/chart.rb выглядит следующим образом

options&.each_pair do |k, v|

, и сообщение об ошибке говорит о том, что Ruby считает, что в этой строке есть синтаксическая ошибка.

Драгоценный камень использует безопасную навигацию (&.) в этой строке - функция, которая была введена в Ruby 2.3. Это означает, что гем зависит от Ruby 2.3, но не объявляет эту зависимость. С другой стороны, вы все еще работаете на Ruby 2.2.

Обновите версию Ruby до версии не ниже 2.3, и все будет в порядке. Или вы можете попробовать обновить gem до версии 1.0.1, потому что похоже, что сопровождающий недавно изменил синтаксис в последней версии.

На самом деле, я предлагаю обновить вашу Ruby версию до 2.6 или 2.7, потому что даже 2.3 уже достиг конца срока эксплуатации и больше не поддерживается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...