【问题标题】:rhc setup returns "warning: constant ::TimeoutError is deprecated"rhc 设置返回“警告:不推荐使用常量 ::TimeoutError”
【发布时间】:2016-08-03 19:52:19
【问题描述】:

环境

  • Ubuntu 16.04 xenial
  • Linux 内核:4.4.0-22-generic
  • ruby --version

ruby 2.3.0p0 (2015-12-25) [x86_64-linux-gnu]

复制步骤

sudo apt-get install ruby-full
rhc setup

返回:

/var/lib/gems/2.3.0/gems/commander-4.2.1/lib/commander/user_interaction.rb:328: 警告:常量 ::TimeoutError 已弃用

上传default公钥后显示:

检查 git ... 找到 git 版本 2.7.4

检查常见问题 ./var/lib/gems/2.3.0/gems/net-ssh-2.9.2/lib/net/ssh/transport/session.rb:67:in initialize': Object#timeout is deprecated, use Timeout.timeout instead. /var/lib/gems/2.3.0/gems/net-ssh-2.9.2/lib/net/ssh/transport/session.rb:84:in initialize': Object#timeout 已弃用,请使用 Timeout.timeout 反而。 .完成

运行时:

rhc --help

返回:

/var/lib/gems/2.3.0/gems/commander-4.2.1/lib/commander/user_interaction.rb:328: 警告:常量 ::TimeoutError 已弃用

【问题讨论】:

  • 不要使用那个版本的 Ruby。试试 Ruby 2.0。

标签: ruby openshift ubuntu-16.04


【解决方案1】:

它看起来像一个 gem 在引擎盖下使用 Object#timeout,它已被弃用。建议现在使用Timeout.timeout,就像错误所说的那样。

就你应该做的而言 - 这只是一个弃用警告,而不是错误,所以可能没有任何问题。

如果警告真的困扰您,您可以在/var/lib/gems/2.3.0/gems/net-ssh-2.9.2/lib/net/ssh/transport/session.rb 编辑gem 源并将timeout 调用替换为Timeout.timeout(或fork gem 并进行相同的更改)。如果您渴望,作者可能会欣赏拉取请求。但我个人不会担心这个。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-11-12
    • 2020-01-31
    • 2017-05-18
    • 2020-05-14
    • 1970-01-01
    • 2020-02-23
    • 2019-09-21
    • 1970-01-01
    相关资源
    最近更新 更多