Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Gemfile may be too strict in ruby-termios version requirement #920

Closed
colinbourassa opened this issue Nov 20, 2018 · 4 comments

Comments

Projects
None yet
5 participants
@colinbourassa
Copy link

commented Nov 20, 2018

After installing COSMOS 4.3.0 on Linux (Ubuntu 18.10), the demo fails to start due to its Gemfile requiring a version of ruby-termios in the 0.9x range:

gem 'ruby-termios', '~> 0.9' if RbConfig::CONFIG['target_os'] !~ /mswin|mingw|cygwin/i and RUBY_ENGINE=='ruby'

The error message is:

Could not find gem 'ruby-termios (~> 0.9)' in any of the gem sources listed in your Gemfile.
Run `bundle install` to install missing gems.

Indeed, the latest version of the ruby-termios Gem (and the one that was installed) is 1.0.2. Changing the version requirement operator in the Gemfile from "~> 0.9" to ">= 0.9" appears to allow normal operation.

Edit:
This problem has already been fixed in the top-level Gemfile by 6290460, but install/Gemfile and demo/Gemfile were not corrected.

@ChristopherRabotin

This comment has been minimized.

Copy link

commented Mar 27, 2019

I am currently facing that same problem. How can I fix this?

I install cosmos correctly with sudo gem install cosmos, and it's successful. But then trying to launch the launcher generated from cosmos demo some_path, I get the following error:

ruby ./cosmosrb_conf/tools/Launcher
WARNING: Nokogiri was built against LibXML version 2.9.9, but has dynamically loaded 2.9.7
2019/03/27 13:43:45.739  FATAL: Fatal Exception! Exiting...
2019/03/27 13:43:45.740  FATAL: GemNotFound : Could not find gem 'ruby-termios (~> 0.9)' in any of the gem sources listed in your Gemfile.
/home/chris/.gem/ruby/2.5.0/gems/bundler-1.17.3/lib/bundler/resolver.rb:287:in `block in verify_gemfile_dependencies_are_found!'
/home/chris/.gem/ruby/2.5.0/gems/bundler-1.17.3/lib/bundler/resolver.rb:255:in `each'
/home/chris/.gem/ruby/2.5.0/gems/bundler-1.17.3/lib/bundler/resolver.rb:255:in `verify_gemfile_dependencies_are_found!'
/home/chris/.gem/ruby/2.5.0/gems/bundler-1.17.3/lib/bundler/resolver.rb:49:in `start'
/home/chris/.gem/ruby/2.5.0/gems/bundler-1.17.3/lib/bundler/resolver.rb:22:in `resolve'
/home/chris/.gem/ruby/2.5.0/gems/bundler-1.17.3/lib/bundler/definition.rb:258:in `resolve'
/home/chris/.gem/ruby/2.5.0/gems/bundler-1.17.3/lib/bundler/definition.rb:170:in `specs'
/home/chris/.gem/ruby/2.5.0/gems/bundler-1.17.3/lib/bundler/runtime.rb:108:in `block in definition_method'
/usr/lib64/ruby/gems/2.5.0/gems/cosmos-4.3.0/lib/cosmos/top_level.rb:157:in `data_path'
/usr/lib64/ruby/gems/2.5.0/gems/cosmos-4.3.0/lib/cosmos/gui/qt.rb:247:in `get_icon'
/usr/lib64/ruby/gems/2.5.0/gems/cosmos-4.3.0/lib/cosmos/gui/qt.rb:239:in `load_cosmos_icon'
/usr/lib64/ruby/gems/2.5.0/gems/cosmos-4.3.0/lib/cosmos/gui/dialogs/legal_dialog.rb:23:in `initialize'
/usr/lib64/ruby/gems/2.5.0/gems/cosmos-4.3.0/lib/cosmos/tools/launcher/launcher.rb:176:in `new'
/usr/lib64/ruby/gems/2.5.0/gems/cosmos-4.3.0/lib/cosmos/tools/launcher/launcher.rb:176:in `pre_window_new_hook'
/usr/lib64/ruby/gems/2.5.0/gems/cosmos-4.3.0/lib/cosmos/gui/qt_tool.rb:294:in `block in run'
/usr/lib64/ruby/gems/2.5.0/gems/cosmos-4.3.0/lib/cosmos/top_level.rb:730:in `set_working_dir'
/usr/lib64/ruby/gems/2.5.0/gems/cosmos-4.3.0/lib/cosmos/gui/qt_tool.rb:285:in `run'
/usr/lib64/ruby/gems/2.5.0/gems/cosmos-4.3.0/lib/cosmos/tools/launcher/launcher.rb:190:in `block in run'
/usr/lib64/ruby/gems/2.5.0/gems/cosmos-4.3.0/lib/cosmos/top_level.rb:545:in `catch_fatal_exception'
/usr/lib64/ruby/gems/2.5.0/gems/cosmos-4.3.0/lib/cosmos/tools/launcher/launcher.rb:180:in `run'
./cosmosrb_conf/tools/Launcher:15:in `block in <main>'
/home/chris/Workspace/CAPS/integration/cosmosrb_conf/tools/tool_launch.rb:16:in `tool_launch'
./cosmosrb_conf/tools/Launcher:13:in `<main>'
 chris@linux-fgdx  ~/Workspace/CAPS/integration   issue-4  
@ChristopherRabotin

This comment has been minimized.

Copy link

commented Mar 27, 2019

Ah, okay, after struggling with this issue for nearly an hour, I just fixed it using the referenced commit.

Fix

  1. Go into the demo folder (cosmosrb_conf in my case)
  2. Open the Gemfile
  3. Update line 5 to accept any ruby-termios >= 0.9 (instead of ~>), as done in 6290460.
@impala454

This comment has been minimized.

Copy link

commented Apr 3, 2019

I just happened to arrive here after finding the same issue today. I installed via the Linux script, will the install gem also be updated?

@jasonatball

This comment has been minimized.

Copy link
Collaborator

commented Apr 3, 2019

This issue was recently closed and will be in the next COSMOS release (current release is 4.3.0).

@ryanatball ryanatball added this to the v4.4.0 milestone Jul 2, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.