Raj Singh
2009-May-11 13:11 UTC
How to validate a patch submitted to rails core using .git
This is what I did. I have Rails 2.3.2 installed. rails demo ruby script/generate scaffold User name:string rake db:create rake db:migrate> ruby script/consoleLoading development environment (Rails 2.3.2)>> User.firstUser Load (0.3ms) SELECT * FROM "users" LIMIT 1 => nil>>So far so good. Now I will freeze rails.> rake rails:freeze:gemsTry script/console again>> User.firstUser Load (0.3ms) SELECT * FROM "users" LIMIT 1 => nil Now I will get rid of frozen rails.> rake rails:unfreeze(in /Users/nkumar/dev/scratch/demo) rm -rf vendor/rails Now I will install rails from github so that later I could apply the patch.> git clone git://github.com/rails/rails.gitNow I will try script/console and I get error. Loading development environment (Rails 2.3.2) /Library/Ruby/Site/1.8/rubygems/requirement.rb:150:in `parse'':ArgumentError: Illformed requirement ["~> 1.1.pre"] /Library/Ruby/Site/1.8/rubygems/requirement.rb:150:in `parse'':ArgumentError: Illformed requirement ["~> 1.1.pre"] /Users/nkumar/dev/scratch/demo/vendor/rails/railties/lib/console_with_helpers.rb:5:NameError: uninitialized constant ApplicationController>> User.firstNameError: uninitialized constant User from (irb):1 Notice that I have not even applied the patch I want to test. I am just getting ready to apply the patch. If I look at vendor/rails I see following directories. -rw-r--r-- 1 nkumar staff 3019 May 11 09:07 Rakefile drwxr-xr-x 9 nkumar staff 306 May 11 09:07 actionmailer drwxr-xr-x 10 nkumar staff 340 May 11 09:07 actionpack drwxr-xr-x 7 nkumar staff 238 May 11 09:07 activemodel drwxr-xr-x 11 nkumar staff 374 May 11 09:07 activerecord drwxr-xr-x 8 nkumar staff 272 May 11 09:07 activeresource drwxr-xr-x 10 nkumar staff 340 May 11 09:07 activesupport drwxr-xr-x 8 nkumar staff 272 May 11 09:07 ci drwxr-xr-x 3 nkumar staff 102 May 11 09:07 doc -rwxr-xr-x 1 nkumar staff 416 May 11 09:07 pushgems.rb drwxr-xr-x 18 nkumar staff 612 May 11 09:07 railties -rwxr-xr-x 1 nkumar staff 723 May 11 09:07 release.rb drwxr-xr-x 3 nkumar staff 102 May 11 09:07 tools When I had done rake:rails:freeze then I had following directories. drwxr-xr-x 9 nkumar staff 306 May 11 09:09 actionmailer drwxr-xr-x 10 nkumar staff 340 May 11 09:09 actionpack drwxr-xr-x 10 nkumar staff 340 May 11 09:09 activerecord drwxr-xr-x 7 nkumar staff 238 May 11 09:09 activeresource drwxr-xr-x 5 nkumar staff 170 May 11 09:09 activesupport drwxr-xr-x 16 nkumar staff 544 May 11 09:09 railties Can someone tell me what is the right way to test a patch. I know Rails contribution guide has information on how to test a patch. However the document tells you to checkout rails from github and then apply a patch. I did. However how do I tell my demo app to use the newly patch applied rails version. The only way I know of is to do vendor/rails and ,as I illustrated above, that did not work for me. -- Posted via http://www.ruby-forum.com/.