Bug #5737

[API] [Workbench] Ruby 2.2 or 2.3 compatibility

Added by Tom Clegg about 6 years ago. Updated over 4 years ago.

Status:
Resolved
Priority:
Normal
Assigned To:
Category:
API
Target version:
Start date:
10/11/2016
Due date:
% Done:

100%

Estimated time:
(Total: 0.00 h)
Story points:
1.0

Description

Known issues

Subtasks

Task #10257: Review Tom's branch: 5737-ruby231ResolvedLucas Di Pentima

Task #10225: pass tests in both ruby 2.1 and 2.3ResolvedTom Clegg

Task #10152: Review 5737-ruby231ResolvedTom Clegg


Related issues

Related to Arvados - Story #6777: [Documentation] recommend ruby2.1 package on debian 8Rejected

Associated revisions

Revision 9be8a468
Added by Lucas Di Pentima over 4 years ago

Merge branch '5737-ruby231'
refs #5737

Revision 84861876 (diff)
Added by Peter Amstutz over 4 years ago

Update arvbox to work with passenger 5.0, refs #5737

Revision 25204724
Added by Lucas Di Pentima over 4 years ago

Merge branch '5737-fix-broken-test-with-231'
refs #5737

History

#1 Updated by Tom Clegg about 6 years ago

  • Description updated (diff)
  • Category set to API

#2 Updated by Tom Clegg about 5 years ago

  • Description updated (diff)

#3 Updated by Tom Clegg about 5 years ago

  • Description updated (diff)

#4 Updated by Javier BĂ©rtoli over 4 years ago

  • Priority changed from Normal to High

Ruby 2.1.x is getting to its EOL

https://www.ruby-lang.org/en/downloads/

In security maintenance phase (will EOL soon!): Ruby 2.1.10

So we better begin moving forward. Given that ruby 2.4.0rc is out there, I'd suggest we move to, at least, 2.3.1

#5 Updated by Tom Morris over 4 years ago

  • Subject changed from [API] [Workbench] Ruby 2.2 compatibility to [API] [Workbench] Ruby 2.3 compatibility
  • Target version changed from Arvados Future Sprints to 2016-10-12 sprint

#6 Updated by Tom Morris over 4 years ago

  • Subject changed from [API] [Workbench] Ruby 2.3 compatibility to [API] [Workbench] Ruby 2.2 or 2.3 compatibility

#7 Updated by Tom Clegg over 4 years ago

  • Assigned To set to Tom Clegg
  • Priority changed from High to Normal

#8 Updated by Tom Clegg over 4 years ago

  • Priority changed from Normal to High

#9 Updated by Tom Clegg over 4 years ago

  • Status changed from New to In Progress

#10 Updated by Tom Clegg over 4 years ago

5737-ruby231

test b0200d9b2e88ac3b401ae0c16e5921aaa2c560cdhttps://ci.curoverse.com/job/developer-run-tests/19/

I would rather stick with Minitest, but I timed out trying to make it work with Rails3+Ruby2.3 -- switching (temporarily?) to test-unit was easier.

#11 Updated by Tom Clegg over 4 years ago

Got minitest working. Only remaining trouble is TESTOPTS=-v is ignored.

#12 Updated by Lucas Di Pentima over 4 years ago

  • Assigned To changed from Tom Clegg to Lucas Di Pentima
  • Target version changed from 2016-10-12 sprint to 2016-10-26 sprint

#13 Updated by Radhika Chippada over 4 years ago

  • Target version changed from 2016-10-26 sprint to 2016-11-09 sprint

#14 Updated by Lucas Di Pentima over 4 years ago

  • Target version changed from 2016-11-09 sprint to 2016-11-23 sprint

#15 Updated by Tom Morris over 4 years ago

Just to clarify Note4, while Ruby 2.1 is in security maintenance phase, no EOL has been announced. I suspect the official EOL date will be announced at Christmas when Ruby 2.4 is released and that it will be no earlier than March 1, 2017 and more likely June, 2017.

Still, even though the deadline isn't imminent, it'd be good to get this closed out so we can move on to the more valuable updating of Rails for the API server. This on its third sprint.

#16 Updated by Lucas Di Pentima over 4 years ago

  • Target version changed from 2016-11-23 sprint to 2016-12-14 sprint

#17 Updated by Lucas Di Pentima over 4 years ago

Changes at: b9e5c8b32858338850da3e12ce27570b828898b3
Couldn't make minitest execute the tests, so I deleted it leaving test-unit to do the work.
Fixes in several tests and other parts of the code following ruby warning messages.
Fixed the container reuse tests.

#18 Updated by Tom Clegg over 4 years ago

LGTM @ b9e5c8b

There is one Workbench test that fails for me on ruby2.3.1 but still passes on 2.1.10. I assume we'll need to sort that out before recommending Ruby 2.3, but I don't see why that should prevent us from merging the rest of the fixes in the meantime.

$ echo 2.3.1 >.ruby-version
$ ruby -v
ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-linux]
$ time WORKSPACE=`pwd` ./build/run-tests.sh --temp `pwd`/tmp --retry --only-install x --only apps/workbench apps/workbench_test=TESTOPTS=-n=/visit.dashboard.as.admin/
...
  1) Error:
ApplicationLayoutTest#test_visit_dashboard_as_admin:
Capybara::ExpectationNotMet: expected to find text "pipeline_with_job" in "pipeline_1 Failed 2:04 PM 01/12/2016 Active for 0m0s No output zzzzz-d1hrv-subprojpipeline Not started Started at 2:03 PM 01/12/2016. Active for 1m. zzzzz-d1hrv-f4gneyn6br1xize Not started Started at 2:03 PM 01/12/2016. Active for 1m. pipeline_1 Not started Started at 2:03 PM 01/12/2016. Active for 1m. uncommitted Uncommitted Started at 2:02 PM 01/12/2016. Active for 2m. running Started at 2:03 PM 01/12/2016. Active for 1m. requester_for_running_cr queued Queued Started at 2:02 PM 01/12/2016. Active for 2m. completed container request Complete 6:12 AM 12/01/2016 Active for 1d1m 1f4b0bc7583c2a7f9102c395f4ffc5e3+45 pipeline_2 Not started Started at 2:02 PM 01/12/2016. Active for 2m. zzzzz-d1hrv-twodonepipeline Complete 2:03 PM 01/12/2016 Active for 1m No output zzzzz-d1hrv-jq16l10gcsnyumo Ready Started at 2:01 PM 01/12/2016. Active for 3m. running_with_job Started at 2:01 PM 01/12/2016. Active for 3m." 
    test/integration/application_layout_test.rb:259:in `block (3 levels) in <class:ApplicationLayoutTest>'
    test/integration/application_layout_test.rb:258:in `block (2 levels) in <class:ApplicationLayoutTest>'
    test/test_helper.rb:299:in `run'

#19 Updated by Lucas Di Pentima over 4 years ago

  • Status changed from In Progress to Resolved

Also available in: Atom PDF