Rails 3.0: Release candidate 2

Posted by David August 24, 2010 @ 03:07 AM

The release candidate process is progressing as planned. This second candidate has very few changes over the first, which means that unless any blockers are discovered with this release, we’re targeting the final release of Rails 3.0 for this week(!!!).

So please do help us weed out any blockers. Especially in our two new main dependencies: Bundler and ARel. They’ve both progressed into release candidacy for their 1.0 releases and will be sharing the same 1.0-final release date as Rails 3.0.

You can see a complete list of all the dotted t’s and crossed i’s on the new fabulous Github comparo view of RC1 and RC2.

As always, you install this latest version with: gem install rails --pre

Also note that Rails 3.0 now has it’s own stable branch. The master branch is now reserved for Rails 3.1 development. (That’s right, we’re already going there and it’s going to be M-A-G-I-C-A-L!).

Posted in Releases | 98 comments

Comments

  1. Santiago Pastorino on 24 Aug 03:11:

    Let’s start testing ;)

  2. Raphael Costa on 24 Aug 03:12:

    Niceee!!!!

  3. Brandon Tilley on 24 Aug 03:14:

    Awesome! Very exciting :)

  4. Zhong Wei on 24 Aug 03:14:

    Very good!

  5. Yuri Tomanek on 24 Aug 03:15:

    Awesome!

  6. raza on 24 Aug 03:21:

    Great work guys!

  7. parndt on 24 Aug 03:24:

    Excellent! Good work guys :)

    Hopefully we can time a release of the Rails3 version of Refinery CMS for the same time!

  8. ajijay hangat on 24 Aug 03:30:

    the magical world of Rails 3.

  9. oschina on 24 Aug 03:31:

    Chinese edition:

    http://www.oschina.net/news/11402/rails-3-0-rc2

  10. Gabriel Molter on 24 Aug 03:34:

    Well Done ! Let’s Rock and Ruby :D

  11. djones on 24 Aug 03:38:

    Nice. We’re working very hard to get Refinery CMS up and running for the 3.0 final.

  12. Chris on 24 Aug 03:40:

    I’ve been seeing a rather serious bug with layouts on RC1 and now RC2. Would somebody do me a favor and try to reproduce it?

    https://rails.lighthouseapp.com/projects/8994-ruby-on-rails/tickets/5371-layout-with-onlyexcept-options-makes-other-actions-render-without-layouts

  13. Mark on 24 Aug 03:45:

    What’s up with this ticket?

    https://rails.lighthouseapp.com/projects/8994/tickets/5098-rails-3-beta-4-activerecord-5x-slower-than-rails-235

  14. SoftMind on 24 Aug 03:45:

    Awesome News (_)

    Now counting days for the Awesome Release of Rails 3 Final.

    Congrats to the entire team

  15. Mars R on 24 Aug 03:53:

    Awesome! gr8 work guys.. Hats off to all, who involved in this success. Awaiting for 3.0 release.

  16. Jason Thomas on 24 Aug 04:01:

    Can’t wait to see how fast the folks at Heroku get Rails 3 in production.

  17. Jessica D on 24 Aug 04:02:

    Just to recap this release:

    • DHH admits that Ruby on Rails (RoR) sucks, and begs for the Merb team to fix his code
    • RoR is in such bad shape, it takes nearly a year for the awesome Merb folks to even create a Release Candidate
    • During which time, Ruby (the language) is still painfully slow
  18. Nate Kidwell on 24 Aug 04:03:

    Great as always.

  19. Henrique G. Testa on 24 Aug 04:05:

    @Chris – This isn’t exactly a bug. It is more a limitation on how layouts are implemented.

    Also, there is already an open ticket about it here:

    https://rails.lighthouseapp.com/projects/8994/tickets/3619-conditional-layouts-ignore-default-application-wide-layout#ticket-3619-1

  20. Zolzaya on 24 Aug 04:14:

    Great work guys!

  21. Naveen on 24 Aug 04:16:

    Awesome!!

  22. vzmind on 24 Aug 04:18:

    Got the feeling something is moving! All cosmic energies converge and we’ll soon got a the delivery of the most exciting and expected Web framework. Congrats for this work.

  23. Thiago Alves on 24 Aug 04:30:

    When I started reading this post I was wondering who is “David August”... duh!

    Anyway, that’s a major breakthru. Gonna try it myself. Thanks

  24. http://www.cqror.com on 24 Aug 04:52:

    Awesome!!

  25. Rachid on 24 Aug 05:00:

    Well done. As one of the many starters on Rails and Ruby last year I can say I am very pleased with the active community.

  26. Peter on 24 Aug 05:02:

    Thanks, and great work everyone!

  27. Roberto Thais on 24 Aug 05:03:

    Amazing work!

  28. Chris Jacob on 24 Aug 05:17:

    WOOOOOOOOT! Go Team!

  29. George Githinji on 24 Aug 05:20:

    Awesome! Thanks for your efforts and time!

  30. John Bale on 24 Aug 05:28:

    Will we be able to opt-out of xss escaping?

  31. Waynem101 on 24 Aug 06:21:

    This is cool….

  32. Jean on 24 Aug 06:49:

    Cool, I’m gonna check it out asap.

    Hopefully rc2 has improved deprecation warnings… The one for @response.layout really doesn’t make sense.

    And it will include all the small patches ignored for now ( assert_template :layout is broken)

  33. chief on 24 Aug 06:52:

    I also would like to know if the Active Record performance issue, compared to Rails 2.3, has been resolved.

  34. WANG Hailei on 24 Aug 06:53:

    Exciting!

  35. Vlad Gurgov on 24 Aug 08:05:

    Thanks for your hard work, guys! You rock!

  36. Jean on 24 Aug 08:12:

    What is the recommended way to upgrade ?

    I took my existing app, changed the gemfile to point to rails rc2.

    Then I tried to run

    $> bundle update

    this failed with the error : Bundler could not find compatible versions for gem “bundler”: In Gemfile: rails (= 3.0.0.rc2) depends on bundler (>= 1.0.0.rc.6)

    In snapshot (Gemfile.lock):
      bundler (1.0.0.rc.1)

    Trying to run bundle unlock tells me that I should use bundle update instead.

    I know I can “gem install—pre bundler” but then what’s the point of bundle …

  37. alexander on 24 Aug 08:18:

    Very good news.

  38. Messiah! on 24 Aug 08:25:

    Hell Yeah!

  39. Ar on 24 Aug 08:34:

    Still can’t quite get over the whole “RC” thing since it still appears that work needs to be done on Arel.

    To my understanding an RC is “Unless anyone finds bugs we ship it” not “We are pretty much there, just a few more changes”

    RC definitions changed recently?

  40. Fabian on 24 Aug 08:35:

    Awesome guys. Will upgrade my existing apps now for testing :D

  41. DD on 24 Aug 08:53:

    thanks!

  42. Brice on 24 Aug 08:55:

    Thanks for your great work.

  43. Steve on 24 Aug 09:05:

    Can’t wait for the release!

  44. Alexander Berezovskiy on 24 Aug 09:36:

    Hope final release will be stable enough to use it on prod.

  45. Basti on 24 Aug 10:08:

    Awesome! Can’t wait for the stable release to migrate my project!

  46. Kevin on 24 Aug 10:34:

    I am getting old waiting for rails – now its gonna take another decade to get decent affordable rails hosting. PHP + Cake rocks!!

  47. David William on 24 Aug 11:51:

    Can’t wait the final release. Going to use it in production.

  48. Jason Stewart on 24 Aug 12:50:

    Great work! Have been using the betas and first RC with no issues in a couple of new apps. Looking forward to the release.

  49. Jon Atack on 24 Aug 13:12:

    Great news, we’re excited to convert our app from 2.3.x to Rails 3.

  50. Yoshi on 24 Aug 13:31:

    Very exciting. Great work! just created a new VM for new version. Can’t wait!

  51. juandb on 24 Aug 13:31:

    wiiii

  52. railsfan on 24 Aug 13:44:

    It’s awesome!!!

  53. Attila Györffy on 24 Aug 14:07:

    I had a chance to upgrade some old Rails2 applications of mine to Rails3 (RC1) and I can say it’s relatively a smooth process, most of the issues are related to testing.

    Most of the testing frameworks, such as RSpec2 which are meant to be compatible with Rails3 are still under heavy development (they are kind of betas) which makes the upgrade slightly more tricky. Documentation is also missing at a lot of places.

    Having said that, I have to reconsider upgrading my already existing applications unless I can get an extensive test coverage.

  54. richy on 24 Aug 14:07:

    The longest release seems to be end.

  55. Lennon Jesus on 24 Aug 14:18:

    =D

  56. webreader@yahoo.com on 24 Aug 15:42:

    “You can see a complete list of all the dotted t’s and crossed i’s on the new fabulous Github”

    Shouldn’t it be:

    “You can see a complete list of all the dotted i’s and crossed t’s on the new fabulous Github”

    ?

  57. edmund on 24 Aug 15:58:

    @webreader For those without a sense of humor, yes.

  58. tom myer on 24 Aug 17:45:

    can´t wait to use it! thank you guys for all the hard work!!! greets

  59. Unckmania on 24 Aug 18:44:

    Here’s hoping this release is just awesome

  60. Alex on 24 Aug 20:42:

    Wait for it. It’s gonna be magi… :)

  61. dd on 24 Aug 22:04:

    Now irb/console does not load the irbrc file!!! What happened?

  62. Daniel Valio on 24 Aug 23:28:

    Yupeee!!! Rails 3!

  63. baudf@yahoo.fr on 25 Aug 09:21:

    Thanks a lot

  64. Kristian Mandrup on 25 Aug 09:27:

    Many of the defaults in Rails 3 are so 2005 by now. Would be nice with a shift to Cucumber and RSpec 2 instead of the ancient Test-Unit and Fixtures TDD stack that comes with Rails in its default configuration.

    Also, why not use Data Mapper (now 1.0) to substitute Active Record.

    At some point it must be time to move on from the default stack, as better substitutes become mainstream.

    Otherwise, Rails 3 is such a major improvement to Rails 2…

    I was just looking at a year old Rails 2 app, and it looked terribly “hacky” compared to the new style :) Cheers!

  65. stalkert on 25 Aug 09:46:

    Nice work!

  66. www.dch.co.uk on 25 Aug 12:00:

    Nice! Have been waiting for some time now!

  67. wout on 25 Aug 20:20:

    Excellent! Next month we’re releasing a new app built with Rails 3. Except for speed issues I’m very happy with all the improvements. Thanx guys!

  68. Jeremy on 25 Aug 20:31:

    Anyone else getting a problem when putting part of a where statement on a new line adds an AND to your query.

    ex.

    Person.where(“first_name = ‘Jeremy’ and favorite_food = ‘Pizza’)

    note: There is a new line after the and. It didn’t just run down.

    This throws an error. ActiveRecord::StatementInvalid: Mysql::Error:

    and says the query was this.

    SELECT `persons`.* FROM `persons` WHERE (first_name = ‘Jeremy’ and AND favorite_food = ‘Pizza’)

    Notice the second AND?

  69. Jeremy on 25 Aug 20:40:

    I swear I searched before I posted that last comment, but I was looking in the wrong place.

    https://rails.lighthouseapp.com/projects/8994/tickets/5457-arelar-prepending-and-unconditionally-after-newlines-in-string-literals-in-rc2

    for anyone else who is running into this.

  70. Chris (cwise@murmurinformatics.com) on 25 Aug 23:47:

    I only started to make the jump from beta4 to rc2 today.

    FormHelper::text_field seems to botch up fields of type time (MySql) when displaying their values.

    beta4 is fine (e.g. 13:00:00 for underlying ) rc2 displays long date format instead

  71. qwerty on 26 Aug 00:06:

    Where is the 3.0 api docs and what happened to ActiveRecord::Base.allow_concurrency???? I read through the edge guides and couldn’t find it listed as removed.

    HABTM still isn’t working like it probably should. No simple one liner to create the 2 model objects and have the join table be filled automatically. This is a core feature that should have worked in rails 1. Something like Person.relate(Person.new(...),Employee.new).save!

    Views still get no love, and scaffolding is worthless except to attract true newbies to web development.

    AR still can’t figure out relations by looking at foreign keys. WTF? This should be automated through migrations and if it can’t figure it out, it should ask!

    While multiple applications can live in the same rails instance, which is about freaking time and appreciated, it looks like it is still difficult to get them to properly share database resources.

    Reliance on the idiotically obvious REST adds a needless layer of complexity to routing. Moving to REST is one of the worst ideas implemented into Rails. There really does need to be a way to separate good and bad programmers and shun the bad. Remember when you could specify 1 route and everything else just worked? Resources needs to take an argument to remove unused resources.

    I see zero work has been done on deployment. Passenger is nice and all but Rails deployment needs to be as simple as PHP or even(especially) Java without third party libraries.

    The testing setup is pretty bad. Its over reliance on unit tests leads to poor looking and responding applications. Unit testing is helpful in certain cases, but its value in a web application is overstated by several orders of magnitude. You can write solid unit tests that come back green yet when you actually use the app in a real world situation, it can and usually will break down. Why has this been ignored?

    The current plug in system is pretty much broken. Not one program that I have tried to use through rails plugin … has worked. NOT ONE!

    The GEMFILE idea is nice in theory, but the implementation blows. It adds a layer of complexity and gives nothing of any real value. It is just another point of failure to have to fight through.

    Rails 3 should still be in beta. There is no rational explanation why it is not in beta still. It is nowhere near release ready.

  72. Chris (cwise@murmurinformatics.com) on 26 Aug 00:12:

    Further to my comment in #70, please see the sample project I set up to demonstrate it. Details are found in the README.

    git@github.com:cwise/time_bug.git

  73. Gaël Deest on 26 Aug 05:07:

    Comment #72 was obviously written by an arrogant and incompetent moron.

  74. Richard Nyström on 26 Aug 09:40:

    @qwerty:

    You are not forced to use REST if you don’t want to.

    Actually “GEMFILE” is one improvement for deployment. You should read more about how Bundler works and the problems it solves.

    If you are not satisfied with unit/test then hook in Cucumber and Rspec and do some Outside in Behavior driven development instead. It would be nice if it was the default setup in Rails 3 but it’s super easy to add your own setup in Rails 3 so it’s actually not a problem.

    Which plugins have you been testing that you say is broken?

  75. Chris (cwise@murmurinformatics.com) on 26 Aug 09:59:

    Re: “arrogant and incompetent?” in comment 73

    Actually I am quite sincere and am assuming that I made a mistake. I really hope you are talking about comment 71 and not my comment 70/72 for which I have a real problem moving forward to RC2.

  76. elux on 26 Aug 13:18:

    @qwerty—Here’s the point. Rails 3 is an elegant framework and a beautiful piece of software. If you don’t “get it” .. don’t use cutting edge stuff and go back to Java.

  77. mike on 26 Aug 15:51:

    @qwerty soooooooooooo don’t use it…

  78. Diego on 26 Aug 16:24:

    Ramaze + Sequel for me, thanks.

  79. Mihec on 26 Aug 19:36:

    It is not important if it is called beta or theta. This software just works. It is also not important how it came to be. The important aspect of Rails3 is solely its existence. It is a MIRACLE. Try to imagine a world without it, or if ruby would never be invented..

    Rails3 is already powering my latest StandUp Programming creation, the upcoming spliff counter http://kitschmaster.com/spliffcounter iPhone/iPad application for counting smoked spliffs.

    I love You R3! Many Thanks!

  80. Gaël Deest on 26 Aug 21:01:

    To Chris: #75

    Sorry, I was of course talking about comment #71.

  81. Chad on 26 Aug 23:40:

    71: Since clearly you know how EVERYTHING in the universe should ideally work, why don’t you go create your own universe where everything is exactly the way it should be. Then you can go live there and we won’t have to read your stupid rants on how stupid everybody else is.

  82. remi on 27 Aug 05:40:

    `bundle install` was giving me problems after I updated my Rails version in my Gemfile. Running `gem install bundler—pre` fixed it.

    Thanks for the great work! I’ve tried using Bundler and Rails 3 pre-beta a lot over the past few months and it has been extremely painful at times. Ever since the latest betas and RCs, however, everything has been smooth!

    I’m finally at the point where I get frustrated in Rails 2.3 projects, because of the amazing Rails 3 features that I’m missing.

    Great, great work! It’s good to see a stable Rails 3.

    To everyone bashing Rails: IMHO, I don’t think this is the appropriate venue for your comments. The Rails team and contributors have been working LONG and HARD on this release and they deserve our congratulations, not your venting. Also, there are MANY, many other GREAT frameworks out there. If Rails isn’t for you, that’s just fine!

  83. snicky on 27 Aug 11:23:

    we’re targeting the final release of Rails 3.0 for this week(!!!)

    Okay guys, it’s friday :)

  84. limux on 27 Aug 13:31:

    is this a bug? all the versions of 3.0 has this error.

    Successfully installed activesupport-3.0.0.rc2 Successfully installed activemodel-3.0.0.rc2 Successfully installed rack-mount-0.6.12 Successfully installed actionpack-3.0.0.rc2 Successfully installed arel-1.0.0.rc1 Successfully installed activerecord-3.0.0.rc2 Successfully installed activeresource-3.0.0.rc2 Successfully installed actionmailer-3.0.0.rc2 Successfully installed railties-3.0.0.rc2 Successfully installed bundler-1.0.0.rc.6 Successfully installed rails-3.0.0.rc2 11 gems installed Installing ri documentation for activesupport-3.0.0.rc2… Installing ri documentation for activemodel-3.0.0.rc2… Installing ri documentation for rack-mount-0.6.12… Installing ri documentation for actionpack-3.0.0.rc2… Installing ri documentation for arel-1.0.0.rc1… Installing ri documentation for activerecord-3.0.0.rc2… ERROR: While executing gem … (Errno::EINVAL) Invalid argument – ./</cdesc-><.yaml

  85. Peter on 27 Aug 14:07:

    My installation is a pain – when i run rails server i get this annoying error :

    “procedure entry point sqlite3_column_database_name could not be located in the dynamic link library sqlite3.dll”

    I installed sqlite3-ruby , i copied the sqlite3.exe to C:\Ruby\bin but still the error continues!!!!!!!

  86. johnny wha? on 27 Aug 20:16:

    “The release candidate process is progressing as planned.”

    Good one!

  87. biotin on 27 Aug 22:40:

    good shock news =)

  88. Oleh on 27 Aug 23:25:

    Oh… Rails is getting too popular :( (i mean two previous comments)

  89. Oleh on 27 Aug 23:26:

    Oh, crap, i meant #84 and #85

  90. http://www.modrails.com/ on 28 Aug 06:13:

    Would be cool if Phusion Passenger supports RubyOnRails 3 then as well, once it is stable.

  91. Chris on 28 Aug 08:19:

    Tried installing this on Ubuntu (ruby1.8.7-p249), and like with my previous attempt with RC1, the install yet again fails when building the documentation. sudo install rails—pre

    ....

    Installing ri documentation for rails-3.0.0.rc2…

    File not found: lib

  92. Mark on 28 Aug 16:16:

    90

    It does. I’m already running a Rails 3 app on Passenger.

  93. Stefan on 29 Aug 14:43:

    Installing rails results in exactly the same error as for Chris on my blank Debian/Squeeze box:

    root@rails21 # gem install rails—pre Successfully installed rails-3.0.0.rc2 1 gem installed Installing ri documentation for rails-3.0.0.rc2… File not found: lib

    - strace -

    write(1, “Installing ri documentation for ”..., 51Installing ri documentation for rails-3.0.0.rc2… ) = 51 getcwd(”/root”, 200) = 6 stat(”/var/lib/gems/1.8/gems/rails-3.0.0.rc2”, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 chdir(”/var/lib/gems/1.8/gems/rails-3.0.0.rc2”) = 0 stat(“lib”, 0×7fffffff4820) = -1 ENOENT (No such file or directory) rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 write(2, “File not found: lib”, 19File not found: lib) = 19 write(2, ”\n”, 1 ) = 1

  94. Stefan on 29 Aug 17:28:

    @Chris:

    I found the following workaround:

    $ gem install rails --pre # fails
    $ cd /var/lib/gems/1.8/gems/rails-3.0.0.rc2
    $ mkdir lib
    $ gem install rails --pre # works
  95. Mage on 29 Aug 17:50:

    I run my blog on Rails 3, upgraded from Rails 2.1, when they released the beta. The upgrade took maybe one day work.

    It runs fine with Ruby 1.9.2 rc, Passenger, Apache2 and Postgresql 9 (beta).

    The only thing wich doesn’t work yet is the Exception Notifier plugin. Later I will check that again.

  96. Brett on 29 Aug 22:53:

    I’m getting the following error:

    Successfully installed rails-3.0.0.rc2 1 gem installed Installing ri documentation for rails-3.0.0.rc2… File not found: lib

  97. Coitus Interruptus on 30 Aug 10:01:

    @qwerty – why not create querty’s swanky framework? It did wonders to merb ;-)

  98. qwerty on 31 Aug 01:43:

    ”@qwerty—Here’s the point. Rails 3 is an elegant framework and a beautiful piece of software. If you don’t “get it” .. don’t use cutting edge stuff and go back to Java.”

    Actually I do use and appreciate Rails. I just hate that it has so much unrealized potential and hate what rails really is to too many people:

    Training wheels for the untrained.

    Yes, I could create my own frameworks and have for several very specialized non-web domains. Unlike most people who use rails I have several computer science degrees. I am not self-taught, so I do not believe that Rails is magic and while it has its moments of elegance it is rather rough around the edges.

    All the rails can’t scale crap going around has everything to do with the poor concurrency in Ruby(1.9 is still very weak) and the total lack of it in Rails.

    Brining in MERB to addresses a lot of the flaws is a step in the right direction, but is still not release ready.