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

Upgrade to Ruby 2.3.0 #196

Merged
merged 7 commits into from
Aug 19, 2016
Merged

Upgrade to Ruby 2.3.0 #196

merged 7 commits into from
Aug 19, 2016

Conversation

tobz
Copy link
Contributor

@tobz tobz commented Aug 10, 2016

Pretty self-explanatory. Will require a corresponding change in edx/configuration if accepted / deployed.

@codecov-io
Copy link

codecov-io commented Aug 10, 2016

Current coverage is 96.50% (diff: 100%)

Merging #196 into master will increase coverage by <.01%

@@             master       #196   diff @@
==========================================
  Files            47         47          
  Lines          3208       3209     +1   
  Methods           0          0          
  Messages          0          0          
  Branches          0          0          
==========================================
+ Hits           3096       3097     +1   
  Misses          112        112          
  Partials          0          0          

Powered by Codecov. Last update 14ed8a8...03af2e0

@tobz tobz changed the title Upgrade to Ruby 2.3.1 Upgrade to Ruby 2.3.0 Aug 10, 2016
@tobz
Copy link
Contributor Author

tobz commented Aug 10, 2016

Process to actually upgrade a devstack:

sudo su forum
cd /edx/app/forum
source forum_env
rbenv install 2.3.0
rbenv global 2.3.0
ruby --version # should show 2.3.0
cd cs_comments_service
git fetch origin && git checkout master && git pull origin

@tobz
Copy link
Contributor Author

tobz commented Aug 10, 2016

/cc @robrap

@tobz
Copy link
Contributor Author

tobz commented Aug 10, 2016

also /cc @jibsheet

@jibsheet
Copy link
Contributor

Yeah, you'll at the very least need to cut a new base box image as this merges.
In the past we've sent upgrading instructions to the list / or told Devs to get a new devstack, you'll have to decide on the impact.
It should also go on the Eucalyptus upgrading page

@tobz
Copy link
Contributor Author

tobz commented Aug 10, 2016

This wouldn't be in Eucalyptus, as Ned has already cut the RC and theoretically should not be cherrypicking commits from master. Or are you saying that in the sense that the Eucalyptus release would be supplied on top of the latest base image which would implicitly have the updated Ruby version?

@robrap
Copy link
Contributor

robrap commented Aug 10, 2016

@tobz: Is this something you've determined is useful enough for performance to have everyone upgrade, or is this just a branch to use for testing?

Also, you changed to "2.3.0" instead of "2.3.1". Was that just a typo?

@tobz
Copy link
Contributor Author

tobz commented Aug 10, 2016

I'm confident it's worth the minimal effort to upgrade. The GC upgrades alone should provide measurable benefit under actual production load.

Also, 1.9.3 is entirely end-of-life, including no more security updates. Has been for almost 1.5 years. We really need to be on a newer, supported version.

2.3.1 to 2.3.0 was not a typo: rvm supports 2.3.1, but rbenv only supports 2.3.0, so I dropped it down to 2.3.0.

@jibsheet
Copy link
Contributor

@tobz I meant Ficus (We're helping debug Eucalyptus so it's on my brain)

@tobz
Copy link
Contributor Author

tobz commented Aug 10, 2016

Ah, right. Do it now instead of only remembering right before Ficus comes. :)

@robrap
Copy link
Contributor

robrap commented Aug 10, 2016

Sounds good. And hopefully we can coordinate one devstack update request that covers both the mongo and ruby upgrades.

@tobz
Copy link
Contributor Author

tobz commented Aug 10, 2016

Well, if we merged this soon, we'd presumably want developers to upgrade sooner, rather than later, and I think the Mongo upgrade would be more involved. I definitely don't want to wait to land this in an effort to have people be able to upgrade both things at once, FWIW.

@robrap
Copy link
Contributor

robrap commented Aug 10, 2016

👍

FYI: @wajeeha-khalid: you'll need to update your devstack one this lands, and it seems like it may go out to production in advance of your other changes.

@tobz tobz force-pushed the platform/upgrade-to-ruby23 branch from c869b61 to 71eb3ae Compare August 11, 2016 16:01
@wajeeha-khalid
Copy link
Contributor

@robrap thanks for headsup

@tobz tobz merged commit 2217808 into master Aug 19, 2016
tobz pushed a commit that referenced this pull request Aug 22, 2016
This reverts commit 2217808, reversing
changes made to 14ed8a8.
tobz added a commit that referenced this pull request Aug 22, 2016
Revert "Merge pull request #196 from edx/platform/upgrade-to-ruby23"
stanford-online-robot added a commit to Stanford-Online/cs_comments_service that referenced this pull request Sep 21, 2017
* origin/master:
  Remove superfluous newlines
  Fix scope syntax
  Revert "Updating bundler on Travis"
  Install newrelic_rpm to < 4.0
  Load app.rb from Rakefile to fix reindex.
  Fix typo in reindex task
  Pin the ES container to the current version we support.
  tests failures, travis cache could be the culprit
  moving docker compose file to .travis dir
  Make the ruby linking error go away.
  Run tests using the es and mongo containers with docker-compose.
  use 16.04 latest docker image for forums
  Add a default response size and a response size limit.
  Add method tracing inside user.
  Inline respec expected values.
  Fix respec tests.
  Remove sort order.
  MA-2139: Mark thread as read on thread and comment creation/update/actions
  Specify an owner
  Add an OEP-2 compliant openedx.yaml file
  Add the ability to request a thread without its responses.
  MA-2678: replace use of 'updated_at' for 'read' state
  Try plucking instead of mapping.
  Don't need to require NR method tracer; we're not tracing any methods.
  Back to what it was.  Faster that way. -_-
  Clean up usages of Mongoid to generate cleaner code / queries.
  Add tracing to #to_hash for Comment/CommentThread.
  Revert "Merge pull request openedx#196 from edx/platform/upgrade-to-ruby23"
  Use proper relations instead of forcefully loading relations by hand.
  Wait 10s after starting ElasticSearch.
  Wait 10s for ES to come online.
  Try waiting 10s for ES to come online.
  Switch to 2.3.0 since that's what rbenv currently supports.
  Upgrade to Ruby 2.3.1
  Switch to using MongoDB 3.0 in tests.
  Add message for rack config load.
  Fix new relic traces.
  Revert "Replaced Tire with elasticsearch-model"
  Updated the Mongoid configuration options
  Update new relic agent and fix.
  Reduced merges, do them in place, and reduce allocations.
  Handle comment context in cases of missing parent thread.
  Upgrade nokogiri to address security issues in libxml2 sparklemotion/nokogiri#1473
  MA-2419: created endpoint to mark thread as read for user
  Replaced Tire with elasticsearch-model
  return thread's last_activity_at in response object for thread endpoints
  jia/MA-1815 retrieve count for child comments
  Update newrelic plugin.
  MA-1930 add thread count in GET
  updating nokogiri
  Updated Commentable API spec
  Partially Cleaned Comment Thread API tests
  Refactored rake tasks
  Removed broken rake tasks
  Updated Query spec
  Updated i18n spec
  Updated Abuse API spec
  Updated Comment API spec
  Added factory_girl
  Organized rake tasks into separate files
  Added binstubs
  Updated spec_helper
  removing version data
  removed in error
  merge conflict
  fixing merge conflict
  update xml lib on top of mongo changes
  Cleaned Content model
  Cleaned Comment model
  Cleaned CommentThread model
  Re-organized Elasticsearch and DatabaseCleaner rspec configuration
  Running MongoDB and Elasticsearch as daemons
  Added rspec rake task
  Added Codecov coverage tracking
  Updated README
  Ignoring JetBrains artifacts
  Replaced .rvmrc with .ruby-version and .ruby-gemset
  Add Clinton Blackburn as an author
  Caching bundler dependencies
  Updating bundler on Travis
  generated new Gemfile.lock using the version of bundler that is preferred by edx dev-ops
  Upgrade Mongoid to 5.x release
  jia/MA-1748 update read states for users
  MA-1742; return read status on GET thread for user_id provided
  MA-1190;Thread PUT -  update thread read status
  Increased timeout back to 20s. Added relevant docstring
  MA-1189 ThreadGET - added recursive bool field to optionally include response comments
  MA-1359 returned resp_total for existing question and new thread
  changed timeout to 6 seconds
  Added last_activity_at index
stanford-online-robot added a commit to Stanford-Online/cs_comments_service that referenced this pull request Apr 12, 2019
* origin/rc: (129 commits)
  NewRelic as optional dependency
  Add error handling around Elasticsearch update/delete.
  fix
  TLS for forums + NR agent update + ignore heartbeat
  add newrelic include
  Fix
  Dont
  Blank out comment thread documents as well as comment documents. Change the text used to replace the content. Ensure that comments are processed in tests.
  Handle non-existent user and missing param upon retiring user.
  Shift from deprecated should to expect syntax.
  Add user retirement API endpoint to remove forum post content.
  Add ability to change author_username in content.
  try fix?
  Fix typo in dockerhub repo name
  EDUCATOR-1912 | Upgrade yajl-ruby to 1.3.1
  Update flagged API call to match will_paginate version
  EDUCATOR-162 | Pin activemodel to 4.2.8 in Gemfile.
  EDUCATOR-232 | Upgrade nokogiri to 1.8.1
  Fix logging errors
  Fix logging errors
  EDUCATOR-313: Bump ruby to 2.4.1; Use latest newrelic_rpm package;  Add test-forum docker-compose service.
  Fixed issues with app.rb require
  Update image reference for Travis
  Add support for Elasticsearch 1.5.2
  Remove superfluous newlines
  Fix scope syntax
  Revert "Updating bundler on Travis"
  Remove trace_execution_scoped blocks
  Add logging of LoadError in relation to missing NewRelic module
  Wrap newrelic calls in a rescue block
  Update development db to match others.
  We're using 3.0.14 in prod, test with that
  Install newrelic_rpm to < 4.0
  Install newrelic_rpm to < 4.0
  Enhance logging.
  Verify that ES is configured properly before starting
  Adjust and add search rake tasks.
  Minor changes to rebuild_index.
  Better filtering for rake search:initialize behavior
  Partially updated Search API spec
  Replaced Tire with elasticsearch-model
  Load app.rb from Rakefile to fix reindex.
  Fix typo in reindex task
  Load app.rb from Rakefile to fix reindex.
  Fix typo in reindex task
  Pin the ES container to the current version we support.
  tests failures, travis cache could be the culprit
  moving docker compose file to .travis dir
  Make the ruby linking error go away.
  Run tests using the es and mongo containers with docker-compose.
  use 16.04 latest docker image for forums
  Add a default response size and a response size limit.
  Add method tracing inside user.
  Inline respec expected values.
  Fix respec tests.
  Remove sort order.
  MA-2139: Mark thread as read on thread and comment creation/update/actions
  Specify an owner
  Add an OEP-2 compliant openedx.yaml file
  Add the ability to request a thread without its responses.
  MA-2678: replace use of 'updated_at' for 'read' state
  Try plucking instead of mapping.
  Don't need to require NR method tracer; we're not tracing any methods.
  Back to what it was.  Faster that way. -_-
  Clean up usages of Mongoid to generate cleaner code / queries.
  Add tracing to #to_hash for Comment/CommentThread.
  Revert "Merge pull request openedx#196 from edx/platform/upgrade-to-ruby23"
  Use proper relations instead of forcefully loading relations by hand.
  Wait 10s after starting ElasticSearch.
  Wait 10s for ES to come online.
  Try waiting 10s for ES to come online.
  Switch to 2.3.0 since that's what rbenv currently supports.
  Upgrade to Ruby 2.3.1
  Switch to using MongoDB 3.0 in tests.
  Add message for rack config load.
  Fix new relic traces.
  Revert "Replaced Tire with elasticsearch-model"
  Updated the Mongoid configuration options
  Update new relic agent and fix.
  Reduced merges, do them in place, and reduce allocations.
  Handle comment context in cases of missing parent thread.
  Upgrade nokogiri to address security issues in libxml2 sparklemotion/nokogiri#1473
  MA-2419: created endpoint to mark thread as read for user
  Replaced Tire with elasticsearch-model
  return thread's last_activity_at in response object for thread endpoints
  jia/MA-1815 retrieve count for child comments
  Update newrelic plugin.
  MA-1930 add thread count in GET
  updating nokogiri
  Updated Commentable API spec
  Partially Cleaned Comment Thread API tests
  Refactored rake tasks
  Removed broken rake tasks
  Updated Query spec
  Updated i18n spec
  Updated Abuse API spec
  Updated Comment API spec
  Added factory_girl
  Organized rake tasks into separate files
  Added binstubs
  ...
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.

5 participants