Rails 1.2: Release Candidate 1

Posted by David November 23, 2006 @ 06:01 AM

It’s been almost eight months since the last major release of Rails introduced RJS, respond_to, eager loading, and much more. It’s about time we introduced the latest batch of big ideas we’ve been polishing in the interim.

Since this is a major new release and we’ve gotten so much incredible uptake even since 1.1, we’re feeling the need to certify that things work as well as they can out the gates. Thus, this release candidate to fret out any regressions or major issues with the new features.

Update: Josh Susser has more on what this means for developers, and how best to go about submitting bug reports for the new release.

What’s New

But first, allow me to give you a short rundown of what you should be excited about. While these new features may not appear to have the immediate glitz and glamour the likes of RJS, they still represent a big fundamental shift in how a lot of Rails applications will be created from this day forth.

REST and Resources

REST, and general HTTP appreciation, is the star of Rails 1.2. The bulk of these features were originally introduced to the general public in my RailsConf keynote on the subject. Give that a play to get into the mindset of why REST matters for Rails.

Then start thinking about how your application could become more RESTful. How you too can transform that 15-action controller into 2-3 new controllers each embracing a single resource with CRUDing love. This is where the biggest benefit is hidden: A clear approach to controller-design that’ll reduce complexity for the implementer and result in an application that behaves as a much better citizen on the general web.

To help the transition along, we have a scaffold generator that’ll create a stub CRUD interface, just like the original scaffolder, but in a RESTful manner. You can try it out with “script/generate scaffold_resource”. Left with no arguments like that, you get a brief introduction to how it works and what’ll create.

The only real API element that binds all this together is the new map.resources, which is used instead of map.connect to wire a resource-based controller for HTTP verb love. Then, once you have a resource-loving controller, you can link with our verb-emulation link link_to "Destroy", post_url(post), :method => :delete. Again, running the resource scaffolder will give you a feel for how it all works.

Formats and respond_to

While respond_to has been with us since Rails 1.1, we’ve added a small tweak in 1.2 that ends up making a big difference for immediate usefulness of the feature. That is the magic of :format. All new applications will have one additional default route: map.connect ':controller/:action/:id.:format'. With this route installed, imagine the following example:

class WeblogController < ActionController::Base
  def index
    @posts = Post.find :all
    respond_to do |format|
      format.html
      format.xml { render :xml => @posts.to_xml }
      format.rss { render :action => "feed.rxml" }
    end
  end
end
GET /weblog     # returns HTML from browser Accept header
GET /weblog.xml # returns the XML
GET /weblog.rss # returns the RSS

Using the Accept header to accomplish this is no longer necessary. That makes everything a lot easier. You can explore your API in the browser just by adding .xml to an URL. You don’t need a before_filter to look for clues of a newsreader, just use .rss. And all of them automatically works with page and action caching.

Of course, this format-goodness plays extra well together with map.resources, which automatically makes sure everything Just Works. The resource-scaffold generator even includes an example for this using format.xml, so /posts/5.xml is automatically wired up. Very nifty!

Multibyte

Unicode ahoy! While Rails has always been able to store and display unicode with no beef, it’s been a little more complicated to truncate, reverse, or get the exact length of a UTF-8 string. You needed to fool around with KCODE yourself and while plenty of people made it work, it wasn’t as plug’n’play easy as you could have hoped (or perhaps even expected).

So since Ruby won’t be multibyte-aware until this time next year, Rails 1.2 introduces ActiveSupport::Multibyte for working with Unicode strings. Call the chars method on your string to start working with characters instead of bytes.

Imagine the string ‘€2.99’. If we manipulate it at a byte-level, it’s easy to get broken dreams:

'€2.99'[0,1] # => "\342" 
'€2.99'[0,2] # => "?" 
'€2.99'[0,3] # => "€"

The € character takes three bytes. So not only can’t you easily byte-manipulate it, but String#first and TextHelper#truncate used to choke too. In the old days, this would happen:

'€2.99'.first        # => '\342'
truncate('€2.99', 2) # => '?'

With Rails 1.2, you of course get:

'€2.99'.first        # => '€'
truncate('€2.99', 2) # => '€2'

TextHelper#truncate/excerpt and String#at/from/to/first/last automatically does the .chars conversion, but if when you need to manipulate or display length yourself, be sure to call .chars. Like:

You've written <%= @post.body.chars.length %> characters.

With Rails 1.2, we’re assuming that you want to play well with unicode out the gates. The default charset for action renderings is therefore also UTF-8 (you can set another with ActionController::Base.default_charset=(encoding)). KCODE is automatically set to UTF-8 as well.

Watch the screencast. (but note that manually setting the KCODE is no longer necessary)

Unicode was in greatest demand, but Multibyte is ready handle other encodings (say, Shift-JIS) as they are implemented. Please extend Multibyte for the encodings you use.

Thanks to Manfred Stienstra, Julian Tarkhanov, Thijs van der Vossen, Jan Behrens, and (others?) for creating this library.

Gotchas

While we’ve tried our best to remain as backwards compatible with 1.1.6 as possible, there are a few minor edge cases that will need some rework if you used to do things a certain way.

Routes

Action Pack has an all new implementation of Routes that’s both faster and more secure, but it’s also a little stricter. Semicolons and periods are separators, so a /download/:file route which used to match /download/history.txt doesn’t work any more. Use :requirements => { :file => /.*/ } to match the period.

Auto-loading

We’ve fixed a bug that allowed libraries from Ruby’s standard library to be auto-loaded on reference. Before, if you merely reference the Pathname constant, we’d autoload pathname.rb. No more, you’ll need to manually require 'pathname' now.

We’ve also improved the handling of module loading, which means that a reference for Accounting::Subscription will look for app/models/accounting/subscription.rb. At the same time, that means that merely referencing Subscription will not look for subscription.rb in any subdir of app/models. Only app/models/subscription.rb will be tried. If you for some reason depended on this, you can still get it back by adding app/models/accounting to config.load_paths in config/environment.rb.

Prototype

To better comply with the HTML spec, Prototype’s Ajax-based forms no longer serialize disabled form elements. Update your code if you rely on disabled field submission.

For consistency Prototype’s Element and Field methods no longer take an arbitrary number of arguments. This means you need to update your code if you use Element.toggle, Element.show, Element.hide, Field.clear, and Field.present in hand-written JavaScript (the Prototype helpers have been updated to automatically generate the correct thing).

// if you have code that looks like this
Element.show('page', 'sidebar', 'content');
// you need to replace it with code like this
['page', 'sidebar', 'content'].each(Element.show);

Action Mailer

All emails are MIME version 1.0 by default, so you’ll have to update your mailer unit tests: @expected.mime_version = '1.0'

Deprecation

Since Rails 1.0 we’ve kept a stable, backward-compatible API, so your apps can move to new releases without much work. Some of that API now feels like our freshman 15 so we’re going on a diet to trim the fat. Rails 1.2 deprecates a handful of features which now have superior alternatives or are better suited as plugins.

Deprecation isn’t a threat, it’s a promise! These features will be entirely gone in Rails 2.0. You can keep using them in 1.2, but you’ll get a wag of the finger every time: look for unsightly deprecation warnings in your test results and in your log files.

Treat your 1.0-era code to some modern style. To get started, just run your tests and tend to the warnings.

Installing

The release candidate gems live in the Rails gem repository. You install them like this:

gem install rails --source http://gems.rubyonrails.org --include-dependencies

Note that it’ll say something like “Successfully installed rails-1.1.6.5618”. That’s correct as we won’t use the final version numbers until the official release.

You can also grab it straight from Subversion with http://dev.rubyonrails.org/svn/rails/tags/rel_1-2-0_RC1.

Submitting regression bugs

There you have it. Those are the major changes and as always, you can get the full, nitty-gritty scoop in the CHANGELOGs. Over the last eight months, we’ve made literaly hundreds of improvements. It’s well worth traversing the CHANGELOGs for goodies. Ryan’s Scraps is doing a good job annotating the changes as well.

But with the release of any new piece of software, a number of things which used to work, will work no longer.

While the intention with Rails 1.2 is to provide seamless backwards compatibility, we’re only human, and chances are a few things have snuck through. So if you’re trying out the 1.2 release candidate, and find a bug, be sure to report it to us. There are a few steps you should follow to help us fix your bug during the release canididate cycle.

When adding your bug report, be sure to put ‘1.2regression’ in the keywords field. Bugs with this keyword show up in a trac report, if you’re looking for a place to help out, start there.

If at all possible, please include a failing unit test with your bug report. This makes our life significantly easier, and helps others verify that you’ve found a genuine case.

Posted in Releases | 87 comments

Comments

  1. Tom Mornini on 23 Nov 06:43:

    Congrats!

    Looks like fantastic release.

  2. Dylan on 23 Nov 07:11:

    Big news. Just installed without a hitch. Great work. Looking forward to REST and the rest of it.

  3. Jeroen on 23 Nov 07:21:

    Woohoo!

  4. Andreas on 23 Nov 07:34:

    Yeah! Thanks to you all!

  5. Oliver on 23 Nov 07:40:

    Ah… you know how to make the holidays so much sweeter—a release candidate of Rails 1.2!

    Thanks!

  6. Hendy Irawan on 23 Nov 08:18:

    Yummy….. :-)

  7. Vlad on 23 Nov 08:24:

    Long live Rails!

  8. Underflow_ on 23 Nov 08:24:

    Great job ! Congrats !

    Just to mention, in new applications, there’s a new config setting in app/controllers/application.rb :

    in ApplicationController :

    session :session_key => ‘_<%= app_name %>_session_id’

    so apps in the same host have their own cookies.

    Add it on your existing app, if you want this feature.

  9. jesus on 23 Nov 08:42:

    Release early, release often. not exactly right? Why do we had to wait 8 month were a lot of features could have been released as say rails 1.5? Watching rails_edge an break some stuff with an update is not for everybody. I don’t want to figure out stuff with no documentation for why it breaks my app now. So please do more interim releases.

  10. Ross on 23 Nov 08:47:

    Wow – great stuff guys! Looking forward to testing it out!

  11. Eimantas on 23 Nov 08:52:

    Yay! Though while installing i got 1.1.6 version so i had to grab it from svn.

  12. Sandro Paganotti on 23 Nov 09:00:

    Wow, this is a fantastic news! Well done guys! Thanks to you all!

  13. mclow on 23 Nov 09:16:

    Congratulations!

    What about a format for JSON?

    class WeblogController < ActionController::Base def index @posts = Post.find :all end

    respond_to do |format|
        format.html
        format.js { render :js => @posts.to_json() }
      end
    end

    Keep up the good work!

    mc

  14. Vishnu Gopal on 23 Nov 09:20:

    Cool :)

  15. Jeong Mok, Cho on 23 Nov 09:37:

    Wow~ Congratulations! Multibyte is highly expected for CJK strings~.

  16. Tonio on 23 Nov 09:44:

    Good job ! We didn’t hear you on the drop of ActiveResource though… (ps: the sample code for ‘formats and respond_t’ is broken)

  17. fjan on 23 Nov 10:06:

    The installation instructions just give me rails 1.1.6. Is there anyway to get this without going the svn route?

  18. b on 23 Nov 10:06:

    I got 1.1.6 too. I realize its no big deal and it will propagate soon.

    But can anyone tell me how to install it as a gem from subversion?

  19. anonymous coward on 23 Nov 10:40:

    @jesus – what exactly is your contribution here?

  20. Des on 23 Nov 10:52:

    Thank you for your work!!!

  21. b on 23 Nov 10:57:

    woops! Im still new to all this, sorry.

    Successfully installed rails-1.1.6.5618

    I guess that is the new release!

    my bad. I was confused by the 1.1.6.5618 but realized it had all the goods when I checked out the pre-release from sv and did rake rails:update and nothing happened. Ha!

    My bad.

    It all sounds great btw! And thanks guys for all your hard work!

  22. Stephan on 23 Nov 11:12:

    Wow you made my day

  23. Help... on 23 Nov 11:29:

    What does mean this sentence?

    “Thus, this release candidate to fret out any regressions or major issues with the new features.”

    is it correct? I’m not native english and don’t understand it, I think it has syntax errors (although it sounds as a joke it isn’t)

  24. Matte on 23 Nov 12:04:

    Great Work! Thanks for everythings!

  25. Matthijs Langenberg on 23 Nov 12:39:

    Keep up the good work guys, this is a great release!

  26. Bil Kleb on 23 Nov 12:42:

    Typos? “dependend” -> “depended” and “litteraly” -> “literally”

    Also, there seems to be some strange indenting for the first code snippet?

  27. DEkart on 23 Nov 12:50:

    Hurray!!! This is the most important thing in my life since Rails 1.1 :)

  28. JonGretar on 23 Nov 14:23:

    Is there something new in ActiveRecord though? I use ActiveRecord a fair bit outside Rails (with Camping and parsers etc.) and I’m wondering what, if any, changes and improvements are on that side.

  29. dharana on 23 Nov 14:33:

    Nice to read this :) I hope 1.2final isn’t too far away.

  30. devaulw on 23 Nov 14:52:

    Thank you for the early holiday present! I look forward to learning and using these new features.

  31. eyp on 23 Nov 15:45:

    Wow!, thanks a lot for Multibyte and REST support!! Rails is amazing but Rails 1.2 is terrrrrrrrrrrrrrrific :)

  32. Levent on 23 Nov 17:18:

    How do models such as Accounting::Subscription map to table names in active record (by default now)?

  33. Ronald de Gunst on 23 Nov 17:29:

    Great news! I introduced Rails this week at a big fashionretailer. Now they don’t need edgerails. This makes a big difference. (For the managers)

  34. DHH on 23 Nov 17:41:

    Levent: accounting_subscription

    Ronald: That’s great. Bear in mind that this is still a pre-release/release candidate. The final version is still a few weeks off.

  35. Mike on 23 Nov 19:39:

    I receive the following output when trying to upgrade:

    Successfully installed rails-1.1.6.5618 Successfully installed activesupport-1.3.1.5618 Successfully installed activerecord-1.14.4.5618 Successfully installed actionpack-1.12.5.5618 Successfully installed actionmailer-1.2.5.5618 Successfully installed actionwebservice-1.1.6.5618 Installing RDoc documentation for activesupport-1.3.1.5618…

    lib/active_support/dependencies.rb:52:16: Unrecognized directive ‘nodoc’ Installing RDoc documentation for activerecord-1.14.4.5618… Installing RDoc documentation for actionpack-1.12.5.5618…

    lib/action_controller/routing.rb:1042:30: ’:’ not followed by identified or operator

    lib/action_controller/routing.rb:1046:39: ’:’ not followed by identified or operator Installing RDoc documentation for actionmailer-1.2.5.5618… Installing RDoc documentation for actionwebservice-1.1.6.5618…

    What are the errors about?

  36. JonGretar on 23 Nov 21:11:

    @Mike: Nothing to worry about. The docs for that gems might be a bit strange but the real meat is fine.

  37. Bob on 23 Nov 21:11:

    Just great – super great.

    Keep up the good work guys.

  38. hangon on 23 Nov 22:29:

    how to update through a (fucking) proxy ?

  39. Jman on 24 Nov 04:08:

    I’m thankful for the Rails team and Rails 1.2 :)

    Happy Thanksgiving, all!

  40. nebie on 24 Nov 04:40:

    Will the new features in rails be included in the new “Agile Web Development with Rails” thats coming out in december?

  41. Rob Sanheim on 24 Nov 06:59:

    Nebie: They already are. AWDwR edition 2 has been using edge rails (ie 1.2) all along.

  42. hu? on 24 Nov 08:04:

    When I installed the gem on windows, it only installs the version 1.1.6.5584!

    Did I miss something ?

  43. windows on 24 Nov 08:42:

    It doesn’t work on windows ?

    PS C:\ruby\lib\ruby\gems\1.8\gems> gem install rails—source http://gems.rubyonrails.org—include-dependencies Successfully installed rails-1.1.6.5584

  44. Jeff on 24 Nov 09:22:

    Just ran a: svn co -r5618 http://dev.rubyonrails.org/svn/rails/trunk vendor/rails

    Can’t wait to check it out!

  45. Avinash Meetoo on 24 Nov 09:45:

    Congrats guys and girls!

    I’m looking forward to indulge into RESTful pleasures.

    More seriously, like you, I believe Rails (and Ruby) is beautiful and is going to completely change the way we build software.

  46. Stephan Soller on 24 Nov 11:41:

    Thanks guys! I’m really looking forward to build my next application with rails 1.2 to try the new stuff. Greak work!

    To hangon (comment #38): to install behind a proxy set the HTTP_PROXY environment variable. On my windows machine it looks like this: set HTTP_PROXY=http://192.168.0.1:1234/ Once set, gems will use the proxy. :)

  47. Peter on 24 Nov 12:39:

    Update via URL?

    This works for me:-

    gem install -p http://1.2.3.4:1234/ rails—source http://gems.rubyonrails.org—include-dependencies

    Peter

  48. Well on 24 Nov 12:42:

    It seems that the gem is not ready yet. PS H:\> gem list -r—source http://gems.rubyonrails.org

    • REMOTE GEMS *

    rails (1.1.6.5584, 1.1.6.5560, 1.1.2.5263, 1.1.2.5123, 1.1.2) Web-application framework with template engine, control-flow layer, and ORM.

  49. shodson on 24 Nov 14:06:

    Good job guys! Keep up the good work. Now I can teach AWDwR with 1.2 bits.

  50. Ed on 24 Nov 16:05:

    I’m ready to write tickets on my experience with Rails 1.2 Release Candidate 1, but first one has already been tagged invalid (see http://dev.rubyonrails.org/ticket/6693).

    Yes, it is blog software, but it runs fine using Rails 1.1.6

    Running under the 1.2 Release Candidate 1 it generates issues. Didn’t the rails group want feedback about Rails 1.2?

    I’m working with about twenty different Rails apps that run fine using Rails 1.1.6 and I have just switched them all to use 1.2 release candidate, instead. Typo is just the first app tested and it immediately had problems. Should I write any more tickets or is the feedback not needed?

    Ed

  51. Tony on 24 Nov 18:01:

    Very cool, can’t wait for the stable release!

  52. Björn on 24 Nov 18:03:

    Ed: Unless you have positively tracked the problem(s) to Rails core, they will probably be handled faster if you submit your reports to the respective application’s bug tracker first. The Typo developers can decide if the bug is in typo or in rails much faster than the rails developers, and then either fix it in Typo or hand over the responsibility to the Rails team.

  53. murphy on 24 Nov 19:17:

    This is the most important thing in my life since Rails 1.1 :)

    I hope not!

  54. Ed on 24 Nov 19:49:

    Bjorn

    The Typo trac has been down for some time now. No way to submit to them. There are several other apps I’m working with that will probally have issues, too. They don’t even have tracs. If the Rails team wants some feedback, there needs to be some channel for us regular folks to use, too.

    All of the apps are working in Rails 1.1.6. The only thing that changed is the use of Rails 1.2

    I think some of the feedback, sent directly, might be helpful to Rails 1.2.

    Don’t you think?

    P.S. I have added more discussion to http://dev.rubyonrails.org/ticket/6693

    routes, zero record ids

  55. pysh on 25 Nov 10:04:

    Prototype’s Element and Field methods no longer take an arbitrary number of arguments. 我认为这是个坏消息,为什么不兼容一下呢

  56. Kwahu on 25 Nov 12:52:

    Just starting but already like the sound of RESTful:)

  57. Ed on 25 Nov 14:26:

    After an all-nighter: I am very impressed! Only Typo has issues with the Release Candidate 1 . I have worked with typo, beast, boxroom, eXplain, jobtracker, junebug, mephisto, parabola (removed components to partials), radiant, rforum, rriki, snaps. ajax_scaffold plugin (changed 1 line), and a few others.

    Thanks to the Rails team!

  58. Markus on 25 Nov 15:50:

    I don’t know if this is a bug or expected behaviour with UTF-8:

    ‘€¨´’ =~ /\A\w{1,20}\z/

    evaluates to true

  59. j2m on 25 Nov 16:37:

    @Jesus 8 months and only one outbreak of vendoritis ;-)

    Excellent job, thank you core team. You deserve a rest (sic).

  60. j2m on 25 Nov 16:37:

    @Jesus 8 months and only one outbreak of vendoritis ;-)

    Excellent job, thank you core team. You deserve a rest (sic).

  61. Hilmi on 25 Nov 23:02:

    Markus: Current Ruby Regular Expression engine is like that, you may try compiling your ruby with oniguruma which should work correctly but I don’t know if it breaks anything…

  62. Dmitry Kalashnikov on 26 Nov 01:34:

    Great Job! Check out my new RoR vs CakePHP comparison: http://klimb.com/blog/?p=12

  63. Dmitry Kalashnikov on 26 Nov 01:35:

    Great Job! Ruby On Rails vs CakePHP comparison

  64. jeroen on 26 Nov 14:32:

    I have

    RAILS_GEM_VERSION = “1.1.6”

    in my environment.rb but still it seems to load the newer RC1 instead of being tied to exactly 1.1.6

  65. jeroen on 26 Nov 14:40:

    @myself: Whoops! had to put at the very top and not inside the Rails::Initializer.run block

  66. jeroen on 26 Nov 21:50:

    REST. I really dig the concept but I can definately use a hand (and this is probably not best place to ask for help, I know)

    I have setup a ClubController. Visitors can create a new club. The form has two buttons, one create button, which will only show after they have pressed the “check domain” button.

    Now, where does check domain link to? It doesn’t fit in with the CRUD action setup in my ClubController. So, a more general question would be, if you define anything other than CRUD methods in your RESTfull controllers, does that mean you haven’t spent enough modelling your app?

  67. Soleone on 27 Nov 00:08:

    jeroen: Good Question! I would like an answer to this one too!

  68. josh on 27 Nov 05:29:

    @jeroen: I find that REST will get you most of the way, but very rarely is it sufficient for a whole application. Usually I end up adding extra actions to controllers. I try to hang them off the RESTful routes when I can, but if I can’t do that easily, I’ll fall back to using the old-style non-RESTful routes. So far that hasn’t been a problem, but I haven’t had to do any ActiveResource stuff yet either.

  69. chameau suprême on 27 Nov 14:13:

    Hi,

    being new to rails (but having bought the beta book from prag prog), I tried to install (seemingly successfully) the RC1 and got those warnings on Win32:

    C:\>gem install rails—source http://gems.rubyonrails.org—include-dependencies Bulk updating Gem source index for: http://gems.rubyonrails.org Successfully installed rails-1.1.6.5618 Successfully installed activesupport-1.3.1.5618 Successfully installed activerecord-1.14.4.5618 Successfully installed actionpack-1.12.5.5618 Successfully installed actionmailer-1.2.5.5618 Successfully installed actionwebservice-1.1.6.5618 Installing ri documentation for activesupport-1.3.1.5618…

    lib/active_support/dependencies.rb:52:16: Unrecognized directive ‘nodoc’ Installing ri documentation for activerecord-1.14.4.5618… Installing ri documentation for actionpack-1.12.5.5618…

    lib/action_controller/routing.rb:1042:30: ’:’ not followed by identified or oper ator

    lib/action_controller/routing.rb:1046:39: ’:’ not followed by identified or oper ator Installing ri documentation for actionmailer-1.2.5.5618… Installing ri documentation for actionwebservice-1.1.6.5618… Installing RDoc documentation for activesupport-1.3.1.5618…

    lib/active_support/dependencies.rb:52:16: Unrecognized directive ‘nodoc’ Installing RDoc documentation for activerecord-1.14.4.5618… Installing RDoc documentation for actionpack-1.12.5.5618…

    lib/action_controller/routing.rb:1042:30: ’:’ not followed by identified or oper ator

    lib/action_controller/routing.rb:1046:39: ’:’ not followed by identified or oper ator Installing RDoc documentation for actionmailer-1.2.5.5618… Installing RDoc documentation for actionwebservice-1.1.6.5618…

  70. Moss on 28 Nov 07:53:

    A bit late to the party, but I just can’t resist commenting to thank you guys for the amazing work. The improved REST support is just gorgeous! It drove me to try edge Rails for the first time a little while back, and I’m thrilled to see it approaching a stable release.

  71. Rafael on 28 Nov 22:43:

    Tata! Thank you so much! I really begin to love programming again ;-) looking forward for further development… ...may I can contribute soon my part to it, not just consuming

  72. John Griffiths on 30 Nov 17:10:

    brilliant product, certainly kicks .net around for being easier and faster to develop for.

    well done!

  73. javan on 30 Nov 19:29:

    Attempting local installation of ‘rails’ Local gem file not found: rails*.gem Attempting remote installation of ‘rails’ Updating Gem source index for: http://gems.rubyonrails.org Successfully installed rails-1.1.6.5618 Successfully installed activesupport-1.3.1.5618 Successfully installed activerecord-1.14.4.5618 Successfully installed actionpack-1.12.5.5618 Successfully installed actionmailer-1.2.5.5618 Successfully installed actionwebservice-1.1.6.5618 Installing RDoc documentation for activesupport-1.3.1.5618…

    RDoc failure in lib/active_support/core_ext/module/delegation.rb at or around line 2 column 58

    Before reporting this, could you check that the file you’re documenting compiles cleanly—RDoc is not a full Ruby parser, and gets confused easily if fed invalid programs.

    The internal error was:

    ERROR: While executing gem … (TypeError) cannot convert Fixnum into String

  74. javan on 30 Nov 19:29:

    Attempting local installation of ‘rails’ Local gem file not found: rails*.gem Attempting remote installation of ‘rails’ Updating Gem source index for: http://gems.rubyonrails.org Successfully installed rails-1.1.6.5618 Successfully installed activesupport-1.3.1.5618 Successfully installed activerecord-1.14.4.5618 Successfully installed actionpack-1.12.5.5618 Successfully installed actionmailer-1.2.5.5618 Successfully installed actionwebservice-1.1.6.5618 Installing RDoc documentation for activesupport-1.3.1.5618…

    RDoc failure in lib/active_support/core_ext/module/delegation.rb at or around line 2 column 58

    Before reporting this, could you check that the file you’re documenting compiles cleanly—RDoc is not a full Ruby parser, and gets confused easily if fed invalid programs.

    The internal error was:

    ERROR: While executing gem … (TypeError) cannot convert Fixnum into String

  75. Gustavo Beathyate on 01 Dec 22:39:

    Excelent work. Congratulations for this and the book as well.

  76. Anthony Green on 03 Dec 10:41:

    To update my existing Rails application to RC 1.2 I did this - sudo gem install rails—source http://gems.rubyonrails.org—include-dependencies

    gem cleanup

    rake rails:update

  77. sergio jimenez on 04 Dec 15:47:

    I get this error when trying to install.

    ERROR: While executing gem … (Gem::GemNotFoundException) Could not find rake (>= 0.7.1) in the repository

    any help would be great.

  78. kevin on 04 Dec 23:31:

    fret out any regressions Perhaps he meant “ferret out any regressions”, but “fret” may work: http://www.thefreedictionary.com/fret

  79. blackrat on 07 Dec 02:19:

    Ed: What was the line change to ajax_scaffold to get it to work properly. I’ve been thrashing about in the code, and haven’t spotted it yet. Yours is the only reference I’ve found so far to making a change there.

  80. berti on 11 Dec 13:02:

    sergio: Try installing Rake first with a separate command:

    gem install rake.

    If that doesn’t work and you are using a Linux distro like Debian or Ubuntu, try installing the Rake package:

    apt-get install rake

    Then try installing the Rails gem again.

  81. Dez on 12 Dec 15:01:

    The ‘Welcome aboard’ landing page shows only 1.1.6 as the Rails version. Should it show 1.1.6.5618?

  82. sting on 13 Dec 15:15:

    Very nice work! I am expecting the stable release!

  83. Tompel Sukompo on 15 Dec 03:54:

    Great work, I’ll check it out soon

  84. www.yahoo.com on 15 Dec 05:09:

    I love ruby :)

  85. Pete on 15 Dec 09:58:

    You make the world a better place!

  86. woohoo on 17 Dec 02:09:

    awesomeness

  87. Seelfall on 19 Dec 22:54:

    Hello, Nu stiu daca nu cumva te-ar starni si mai mult asa ceva. erotic teen[/URL] http://top33.org Thanks