Features/Rails 3.0.5

= Feature Name Rails 3.0.5 =

Summary
Update the Ruby on Rails gems in Fedora from 2.3.8 to 3.0.5

Owner

 * Name: Mo Morsi


 * Email: mmorsi@redhat.com

Current status

 * Targeted release: Fedora 15
 * Last updated: 02/04/11
 * Percentage of completion: 100%

See the [spreadsheet] I created tracking the packages which need to be updated and the bugzilla requests around those

All packages have been updated and rebuilt. Updates have been submitted to bugzilla and rawhide.

Detailed Description
Rails 3 is a large [update] to the Ruby on Rails web framework. It brings many new features such as a polished routing API, new activemailer and activerecord APIs, and many more new enhancements.

Since its a major version update there are some API incompatibilities between Rails 3 and Rails 2.3.8, the latest release in the 2.3.x upstream branch and the current release in Fedora. After much discussion on the [ruby-sig] mailing lists, the consensus was to update to Rails 3.0.5 in Fedora 15.

Benefit to Fedora
All new Rails projects are based on Rails 3.0.5 and all upstream Rails plugins have been updated to be compatible with Rails 3. We are updating the rubygem-rails packages in Fedora so that Fedora will continue to be a relevant platform for Ruby and Ruby of Rails development.

Scope
All required packages for Rails 3 support have been created and/or updated. Various packages in the dependency chain have been pushed and bugzilla requests filed for others to be updated. Everything is accounted for though and has clear path of acceptance.

How To Test
No special hardware is needed to test rails. Simply 'yum install rubygem-rails' and make use of the library. The 'rails' command can be used to create a new rails-based project. Any projects based on Rails 2.3.x will need to be updated to be Rails 3 compliant. There are many many guides on the Internet on how to do this.

User Experience
Users will notice no difference other than the availability of the updated Rails 3.0.5 rpms.

Dependencies
There are a few other packages (rails plugins and such) that will need to be updated to be Rails 3 compliant. This should largely exist outside the scope of this Feature and can be done on a case-by-case basis with updates being submitted as bugfixes.

Contingency Plan
None really needed. The Rails 3 rpms and dependency tree is built, verified, and ready to go. Just working its way through the Fedora process now. Should a blocker emerge, any changes to git can be rolled back and new packages not pushed.

Documentation
http://edgeguides.rubyonrails.org/3_0_release_notes.html

Release Notes
http://edgeguides.rubyonrails.org/3_0_release_notes.html

Comments and Discussion

 * See Talk:Features/Rails_3.0.5