Rails 2.3: Templates, Engines, Rack, Metal, much more!

Posted by David March 16, 2009 @ 02:39 PM

Rails 2.3 is finally done and out the door. This is one of the most substantial upgrades to Rails in a very long time. A brief rundown of the top hitters:

  • Templates: Allows your new skeleton Rails application to be built your way with your default stack of gems, configs, and more.
  • Engines: Share reusable application pieces complete with routes that Just Work, models, view paths, and the works.
  • Rack: Rails now runs on Rack which gives you access to all the middleware goodness.
  • Metal: Write super fast pieces of optimized logic that routes around Action Controller.
  • Nested forms: Deal with complex forms so much easier.

And that’s just the tip of the iceberg. We’ve put together a complete guide for the Rails 2.3 release notes with much more information. Be sure to checkout the section on what was deprecated when you’re ready to upgrade your application.

You install 2.3 with (the final version is marked 2.3.2):

gem install rails

If you’re running on Passenger, be sure to upgrade to 2.1.2 as well. Rails 2.3 doesn’t run on older versions of Passenger!

We hope you’ll love it.

Posted in Releases | 102 comments

Comments

  1. Mike on 16 Mar 14:50:

    You guys rock!

  2. Akshay on 16 Mar 14:51:

    Congrats everyone

  3. Michael on 16 Mar 14:52:

    Wonderful! Thank you.

  4. Clement on 16 Mar 14:52:

    Awesome ! Thanks

  5. slainer68 on 16 Mar 14:52:

    GREAT !

  6. Ian Swope on 16 Mar 14:53:

    Kick Ass! Great job all around.

  7. Ian Swope on 16 Mar 14:53:

    Kick Ass! Great job all around.

  8. Ian Swope on 16 Mar 14:53:

    Kick Ass! Great job all around.

  9. SoftMind on 16 Mar 14:55:

    Congratulations to Rails Team

  10. Michael on 16 Mar 14:56:

    Thank u guys and gals. Already updated my application (see link) with very little problems. Great job!

  11. Jan on 16 Mar 14:56:

    Yeah!

  12. Michael on 16 Mar 14:57:

    hm, the link doesn’t show… Anyway, if you’re interested, it is: http://dailyfratze.de

  13. Tom Schlenkhoff on 16 Mar 14:58:

    Congratulations, I can’t wait to rework CabChap to 2.3. Thanks!

  14. Mike Lapshin on 16 Mar 14:59:

    There is a bug with has_many :through association and named scope. ActiveRecord generates incorrect mysql statement for count query.

    Bug described here: http://rails.lighthouseapp.com/projects/8994/tickets/2250-activerecords-count-method-doesnt-work-with-has_many-through-and-mysql

  15. Norman Clarke on 16 Mar 14:59:

    Congrats! When’s 2.3.1 coming out? ;-)

  16. Antonio Cangiano on 16 Mar 15:02:

    Awesome work, guys! Thanks.

  17. Stefan Roehle on 16 Mar 15:13:

    Thanks guys! Great work!

  18. r13 on 16 Mar 15:14:

    Hurrrayy!

  19. Robert on 16 Mar 15:16:

    Thanks to everyone who made this possible!

  20. Johannes on 16 Mar 15:17:

    Great! :)

    @Norman Clarke: That’s Rails 2.3.2 already :p 2.3.1 was RC2

  21. Paul Grunt on 16 Mar 15:18:

    You guys turn out new versions so fast! Great Work!

  22. AkitaOnRails on 16 Mar 15:26:

    Awesome release!

  23. Allen on 16 Mar 15:28:

    Finally! Released!

  24. Dejan Dimic on 16 Mar 15:29:

    Great Work for this awesome release. Hardly wait to use all the goodies.

  25. Heli on 16 Mar 15:29:

    Thanks! My personal favs are the helpers with i18n, like i18n views and translation keys

  26. Bruce Hauman on 16 Mar 15:32:

    Loving the templates. Congrats all. Be proud. Be very proud.

  27. João Batista Silva on 16 Mar 15:32:

    Thanks. Great work!

    A new version, a new game to learn and win.

    Thanks Guys.

  28. Michelangelo Altamore on 16 Mar 15:33:

    My congratulations to the hard working core team and to all contributors for this wonderful release! Thank you, thank you, thank you!

  29. Simon Lau on 16 Mar 15:33:

    Congratulations on the launch! Great work as always.

  30. Sam Figueroa on 16 Mar 15:36:

    kick ass.

  31. Bob Martens on 16 Mar 15:41:

    Most excellent. Thanks to everyone who was a part of this work!

  32. Alex MIshyn on 16 Mar 15:42:

    Thanks! Great work!

  33. Leon on 16 Mar 15:47:

    中国人民发来贺电

  34. Peter Hellberg on 16 Mar 16:10:

    Awesome, time to upgrade my applications :)

  35. vcool on 16 Mar 16:12:

    Awesome! ill try it NOW ! this is great !!

  36. Nick Kostelnik on 16 Mar 16:14:

    Congratulations, well done!

  37. Andrea on 16 Mar 16:16:

    GG! Great Work!

  38. andress on 16 Mar 16:21:

    yahoo! (not the search engine, but the cowboy exclamation)

  39. Giorgio Clavelli on 16 Mar 16:42:

    I’m impressed!

  40. raj on 16 Mar 16:49:

    ... thanks people …

  41. Andrew Chalkley on 16 Mar 17:01:

    Yes!

  42. Anil on 16 Mar 17:16:

    Awesome!

  43. Greg on 16 Mar 17:52:

    Great!

    Now, where do I get started?

  44. Michael Johann on 16 Mar 18:27:

    Just started giving a JRuby on Rails course this morning and there came rails 2.3.2 from the server. Cool. Thanks to all.

  45. Marcello Parra on 16 Mar 18:39:

    If you have an error message “uninitialized constant ApplicationController”, just rename ‘application.rb to ‘application_controller.rb’.

    Thanks

  46. Josh Nussbaum on 16 Mar 18:41:

    siiiiiick release

  47. EH on 16 Mar 19:46:

    word up. congratulations!

  48. Jan Zimmek on 16 Mar 19:47:

    great release – thx

  49. Rupak Ganguly on 16 Mar 20:02:

    Great job guys. Very excited.

  50. Cameron on 16 Mar 20:16:

    Dude. Sweet!

  51. Mischa DeHart on 16 Mar 21:10:

    Yes!!

  52. Shenouda on 16 Mar 21:55:

    Congratulations and thanks for your efforts.

  53. Mike Gunderloy on 16 Mar 22:39:

    Marcello: You can also run rake rails:update to handle renaming your application controller (and other version cleanup).

    Also, please note that the 2.3.2 tag on GitHub is (accidentally) NOT on the commit that the 2.3.2 gems were built from. If you’re picking up the code from GitHub, please pull edge instead of the 2.3.2 tag, which is missing a critical fix to rack loading.

  54. Nikolay Kolev on 16 Mar 23:35:

    Great stepping stone to Rails 3.0! Awesome work, guys! Well coordinated with Phusion Passenger 2.1 release, too!

  55. Khalid Shaikh on 16 Mar 23:39:

    Conrats! http://www.perfectacumen.com/

  56. Morten on 17 Mar 00:00:

    @andress “yahoo! (not the search engine, but the cowboy exclamation)” – hahaha

  57. Peter Golov on 17 Mar 00:03:

    Thanks Rails team!

  58. wosmvp on 17 Mar 00:45:

    Congrats

  59. Ozgun Koyun on 17 Mar 02:06:

    Congratulations & Thanks

  60. Gavin on 17 Mar 03:11:

    You guys are the f’n greatest!!!

  61. Daly city boy on 17 Mar 06:32:

    awesome. congratulations guys!!!!

  62. Mil on 17 Mar 09:25:

    Thanks!

  63. duecorda on 17 Mar 10:00:

    Congratulations to Rails Team!!!

  64. Roman Smirnov on 17 Mar 11:50:

    Great news! Thanks.

  65. Gerjan Stokkink on 17 Mar 12:18:

    @Mike Gunderloy: what commit was used to build the gems?

  66. Tex on 17 Mar 13:43:

    Wonderful work !!!

    Congratulations !!!

  67. Tarun Jayaswal on 17 Mar 14:00:

    Very helpful for developers, great!!!

  68. Alex on 17 Mar 14:52:

    Это просто охуенно! Спасибо Всем!

  69. Tieg on 17 Mar 15:30:

    Great job on this release, it has some great stuff. On the git issue, will there eventually be a tag that we can use if pulling from github?

  70. John T. on 17 Mar 15:41:

    @Mike Gunderloy: I found that doing rake:rails:update did not do any 2.3.2 specific updates, until I commented out the version line in my environment.rb file that had: RAILS_GEM_VERSION = ‘2.2.2’ unless defined? RAILS_GEM_VERSION

  71. Michael Kastner on 17 Mar 16:39:

    You guys are too good to be true. Im getting dizzy …

    Thanks for the great work!

  72. Nilesh Trivedi on 17 Mar 17:47:

    Nice release. Awesome actually !

    Now, stuff I want for Rails 3:

    - Separate Validations from ActiveRecord - merge ActivePresenter into rails core

    and much more. ;-)

  73. Alfonso on 17 Mar 19:03:

    nested forms , wow wow

    thank you

  74. Paul on 17 Mar 21:50:

    Awesome, looks like a lot of great features. Are there any docs online on the current state of engines, and how much the feature is likely to change by Rails 3?

  75. Matt Duncan on 17 Mar 23:03:

    Great work, thanks!

  76. martin s. on 18 Mar 01:17:

    so sweet!

  77. lushop on 18 Mar 04:26:

    excelente smithers !!!!

  78. Kevin.Lee on 18 Mar 04:46:

    Thanks! great work!

  79. Conrad Taylor on 18 Mar 07:28:

    @John T.: You need to first update your environment.rb to the following:

    RAILS_GEM_VERSION = ‘2.3.2’ unless defined? RAILS_GEM_VERSION

    Then run the following command:

    rake rails:update

    @Rails Core Team and Contributors:

    Great job on the 2.3.2 release of Rails.

  80. fillman on 18 Mar 19:15:

    Rails – is future!

  81. Falk on 18 Mar 20:16:

    I love ruby & rails! A whole universe of slick and efficient possibilities – and fun to work with. PHP left the stage – ruby is my new star – and rails is the framework! ;)

    Thanks for all!

  82. Nate Wiger on 18 Mar 22:13:

    Note: If you need a version of SqlSessionStore that works with Rails 2.3, see: http://github.com/nateware/sql_session_store/tree/master

  83. Ben on 19 Mar 09:34:

    Thanks!! DHH & Core team!

  84. Wilco on 19 Mar 12:59:

    Excellent team, thank you very much!

  85. Matt Mitchell on 19 Mar 16:00:

    Congratulations! Very excited to check out the new Engine stuff. Thanks for bringing it into the the core.

  86. Eric Berry on 19 Mar 18:22:

    Awesome job guys! Keep up the great work.

  87. Kiran Bhosale on 21 Mar 15:31:

    Congatulations & Thanks! for it.

  88. Eduardo Carneiro on 22 Mar 02:18:

    Thanks team! Great job!!

  89. Bubu on 22 Mar 18:21:

    How can I make Rails 2.3 to work with Lighttpd?

  90. kgupta on 24 Mar 14:28:

    I am a .net programmer just want to know how to start with this language….I dont know from where to start…Any help will be appreciated ….also sending you the email..

  91. kgupta on 24 Mar 14:29:

    I am a .net programmer just want to know how to start with this language….I dont know from where to start…Any help will be appreciated ….also sending you the email..

  92. Alfred Rowe on 24 Mar 17:41:

    This version is something else. You guys are doing great, cheers!

  93. James Rissler on 24 Mar 21:01:

    This version Rocks.

    Thanks Much!

  94. Mehmet Davut on 24 Mar 21:50:

    Ruby on Rails Rocks :)

  95. Tim Booher on 25 Mar 01:27:

    Thanks, look forward to this new release

  96. Irlan on 25 Mar 09:42:

    Thanks, it’s very good job!Success for your team.

  97. Billee D. on 27 Mar 17:15:

    Templates…how freekin’ cool is that? Thanks Rails Core! I’m am really looking forward to 3.0 to see what you and the Merb crew have simmering. You guys rock and keep up the good work.

  98. Shakir Solomon on 27 Mar 19:58:

    sweeeet!

  99. Coda.fm admin on 31 Mar 05:46:

    Hi guys,

    Congratulations, this looks like a very promising update, and the nested forms where a very expected feature. However, I have the most strange issue when update from 2.1 to 2.3: in 2.3, every request to a controller take almost exactly 4.5 seconds before being handled by rails (the rails log say that the rendering took 100 ms. or less).

    GET -> 4.5s -> Rails -> 100ms

    How can I diagnose where are those 4.5 seconds being expended? (same results under Mongrel and Passenger). Thanks, sorry about the long post, but this issue has me waffled.

  100. Norat on 07 Apr 10:01:

    Cool!!!!! it is very nice

  101. Anonymous on 12 Apr 03:17:

    Nested forms: Deal with complex forms so much easier.

    “so much easier” is not an adverb. It should be something like “so much more easily” or something.

  102. joe on 15 Apr 13:14:

    how fastdid the trains go