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

For 3.0: update ruby versions supported #152

Merged
merged 1 commit into from May 24, 2018
Merged

Conversation

jrochkind
Copy link
Contributor

MRI >= 2.2, jruby >= 9.0. Drop jruby 1.7 and earlier MRI.

@jrochkind jrochkind added this to the 3.0 milestone Jan 4, 2018
@jrochkind
Copy link
Contributor Author

jrochkind commented Jan 4, 2018

I noticed Nikitas Tampakis (@tampakis) said in a listserv post that they're still using JRuby 1.7 due to errors when using 9k. Those Jruby errors are mysterious to me (and all tests pass in Jruby 9k). I myself no longer use Traject at my day job.

Does anyone think it will be a problem to support only JRuby 9.0+ in traject 3.0? I'd really like to use ruby features only available in MRI 2.1+, which JRuby 9.0 is compatible with, but JRuby 1.7 is not. @billdueber

@jrochkind
Copy link
Contributor Author

jrochkind commented Jan 4, 2018

(Also failing MRI 2.5 for annoying rubygems bug interacts with travis reasons, will deal with it later if travis doesn't fix it somehow travis-ci/travis-ci#8969).

@jrochkind
Copy link
Contributor Author

jrochkind commented Jan 10, 2018

So far I have avoided writing any code that requires ruby 2.0+, because we haven't resolved this issue.

The most obvious inconvenience is being unable to use new-style keyword arguments, having to do the options = {} thing, which makes the method signatures and available keywords much less obvious in code-reading, and requires extra work if you want to throw on unrecognized (ie mis-spelled) keywors, etc. As a result, I'm often avoiding keyword arguments in places they would make things more readable if I used them.

There are other conveniences that aren't occurring to me now.

It can definitely be done, it's just kind of a pain, for a version of ruby that is well past end-of-life and no longer even receiving updates for major security vulnerabiltiies. We can do it if we need to, but I'd definitely appreciate you trying to discover a bit more about the nature of the problems you were having, before we do that. We won't drop support for any versions except on a major version release, which will be rare, so the 3.0 release I'm working on now would be a great time to drop some of this cruft.

@jrochkind
Copy link
Contributor Author

@tampakis have you had a chance to see if recent jruby 9k releases still give you problems, or learn anything more about your problems?

It looks like JRuby 1.7 is offiically out-of-support as of November. jruby/jruby#4112 (comment)

@jrochkind
Copy link
Contributor Author

jrochkind commented Jan 25, 2018

Gah, running locally on ruby 2.5.0, the test suite actually produces an interpreter crash with a core dump. /Users/jrochkind/.gem/ruby/2.5.0/gems/marc-1.0.2/lib/marc/xml_parsers.rb:179: [BUG] Stack consistency error (sp: 146, bp: -566524928).

Trying to investigate what's going on.

Looks like there may be a bug in REXML in MRI 2.5.0. How annoying. Difficult to reproduce to a test case that I can report to ruby, but trying.

@jrochkind
Copy link
Contributor Author

Error in MRI 2.5 seems to be an actual bug in MRI 2.5 that causes a crash and core dump.

ruby-marc in REXML mode triggers it, reported at ruby-marc/ruby-marc#53

Narrowed down to a reproduction without ruby-marc involved, reported to ruby at: https://bugs.ruby-lang.org/issues/14403

@tampakis
Copy link

tampakis commented Feb 6, 2018

@jrochkind we have updated our indexing routine to use MRI so we won't need 1.7 support anymore.

@jrochkind
Copy link
Contributor Author

ok, thanks for the update @tampakis!

Did you find much slowdown with MRI?

MRI >= 2.2, jruby >= 9.0.  Drop jruby 1.7 and earlier MRI.
@jrochkind jrochkind merged commit 32724e6 into wip_3_0 May 24, 2018
@jrochkind jrochkind deleted the versions_supported branch May 24, 2018 15:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants