diaspora/diaspora — pull request #4481 by MrZYX (2013-08-30 23:34:38+00:00)
Title: Explore Rails 4

This is an experimental pull request to track what needs to happen before we can update to Rails 4. As always collaboration is very welcome.

## Jasmine

Updating Jasmine to 2.0.0.rc2 is required to make the Jasmine spec runner boot under Rails 4. However this breaks all our Jasmine specs. Jasmine 2.0.0.rc2 requires selenium-webdriver 2.35 We probably also should wait until Jasmine 2.0.0 is released.

## bootstrap-sass

Rails 4 compatibility got introduced with bootstrap-sass 2.3.2.2. This also increased the Bootstrap release, so we need to carefully review our Bootstrap pages after the update.

## jquery-rails

For Rails 4 compatibility rails_admin needs to be updated to 0.5, however it depends on jquery-rails 3.0. That bumps the jQuery version 1.10. We need to do the move anyway at some point, so dropping rails_admin is the less desirable option here.

## caches_page

We should not use features that got removed from Rails core and extracted into separate Gems. Especially in this case since Rails 4 provides new improved caching facilities.

# i18n-inflector-rails

Requires unmerged PR and release of that: https://github.com/siefca/i18n-inflector-rails/pull/3

## compass-rails

Rails 4 compatibility is only available in an alpha release.

## Model.scoped

Replace with Model.all - easy. Should be done on this branch.

## Tons of other failures

Should be fixed on this branch.

## Tons of deprecation warnings

Should be fixed on this branch.

## Bonus: RSpec 2.14

Porting to RSpec 2.14 is not a requirement to Rails 4, RSpec 2.13 is and we're already on that. However 2.14 is an important step to the upcoming Rspec 3 and will probably play better with Rails 4 and Jasmine 2, so keeping on track here would be nice.