e2 / ruby_dep

Automatically helps determine supported Rubies based on .travis.yml file
MIT License
23 stars 7 forks source link

Warning for Ruby 2.3.0 #8

Closed georgeu2000 closed 8 years ago

georgeu2000 commented 8 years ago

I get RubyDep: WARNING: your Ruby is outdated/buggy. Please upgrade. (To disable warnings, set RUBY_DEP_GEM_SILENCE_WARNINGS=1) but

ruby -v
ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin13]

gem list ruby

*** LOCAL GEMS ***

ruby_dep (1.2.0)

Is this an issue with ruby_dep? How do I find out where it is coming from?

e2 commented 8 years ago

Yeah, I should show the exact versions and reasons.

Basically, you have 2.3.0, which quite a lot of known bugs: http://svn.ruby-lang.org/repos/ruby/tags/v2_3_1/ChangeLog

So you're getting the warning because 2.3.0 has known bugs that will never be fixed, so you need to update to 2.3.1.

Personally, I highly recommend this, because it contains a Ruby bug that crashes Ruby repeatedly on my setup.

e2 commented 8 years ago

You might consider Ruby 2.2.5 instead if 2.3.0 isn't easily available for you. (I don't have OSX, so I'm unaware of issues there).

The logic is pretty simple: https://github.com/e2/ruby_dep/blob/master/lib/ruby_dep/warning.rb#L29

georgeu2000 commented 8 years ago

OK, thanks. I didn't know it was outdated. Haven't run into any issues.

2.3.1 should be fine. Thanks.

After reading the docs, the purpose of this gem is not clear to me. Is it for people to specify which versions of Ruby their gem supports?

If so, https://github.com/e2/ruby_dep#eg-in-your-gemspec-file does not make it clear because it doesn't specify any Ruby version.

e2 commented 8 years ago

Thanks for the feedback! I've rewritten the README for clarity: https://github.com/e2/ruby_dep/blob/master/README.md

RubyDep is for gem owners to automatically specify which Rubies that gem supports. E.g. Listen uses RubyDep in that way. RubyDep creates a list of supported Rubies for your project, by reading your project's .travis.yml. So you no longer have to tweak your gemspec and update your README to tell users which Ruby your gem supports.

As for OSX ...

I don't have OSX. I'm assuming RubyDep should allow Ruby 2.0.0 because that's what people have on OSX 10.10, right?

I think it's worth relaxing RubyDep's own dependency on Ruby >= 2.2.3, because it shows a warning anyway and it's confusing to have the same dependency in both Listen and RubyDep.

e2 commented 8 years ago

I just updated RubyDep with 2 changes:

  1. It can be installed on OSX 10.10 (where you have 2.0.0 Ruby by default).
  2. It tells you which Ruby version you have and which Ruby versions to upgrade to.