1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

Fixed that boot.rb would set RAILS_GEM_VERSION twice, not respect an uncommented RAILS_GEM_VERSION line, and not use require_gem [DHH] Added rake rails:update:configs to update config/boot.rb from the latest (also included in rake rails:update) [DHH]

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4197 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
David Heinemeier Hansson 2006-04-07 18:21:52 +00:00
parent 7d3092478c
commit c077a7308e
3 changed files with 46 additions and 29 deletions

View file

@ -1,6 +1,9 @@
* Don't match commented out RAILS_GEM_VERSIONs. [Nicholas Seckar] *SVN*
* Added rake rails:update:configs to update config/boot.rb from the latest (also included in rake rails:update) [DHH]
* Fixed that boot.rb would set RAILS_GEM_VERSION twice, not respect an uncommented RAILS_GEM_VERSION line, and not use require_gem [DHH]
* Avoid "Constant already defined" warnings for RAILS_GEM_VERSION. [Chad Fowler]
*1.1.1* (April 6th, 2005) *1.1.1* (April 6th, 2005)

View file

@ -2,37 +2,43 @@
unless defined?(RAILS_ROOT) unless defined?(RAILS_ROOT)
root_path = File.join(File.dirname(__FILE__), '..') root_path = File.join(File.dirname(__FILE__), '..')
unless RUBY_PLATFORM =~ /mswin32/ unless RUBY_PLATFORM =~ /mswin32/
require 'pathname' require 'pathname'
root_path = Pathname.new(root_path).cleanpath(true).to_s root_path = Pathname.new(root_path).cleanpath(true).to_s
end end
RAILS_ROOT = root_path RAILS_ROOT = root_path
end end
if File.directory?("#{RAILS_ROOT}/vendor/rails") unless defined?(Rails::Initializer)
require "#{RAILS_ROOT}/vendor/rails/railties/lib/initializer" if File.directory?("#{RAILS_ROOT}/vendor/rails")
else require "#{RAILS_ROOT}/vendor/rails/railties/lib/initializer"
require 'rubygems'
if !defined?(RAILS_GEM_VERSION) && File.read(File.dirname(__FILE__) + '/environment.rb') =~ /^\s*RAILS_GEM_VERSION = '([\d.]+)'/
RAILS_GEM_VERSION = $1
end
if defined?(RAILS_GEM_VERSION)
rails_gem = Gem.cache.search('rails', "=#{RAILS_GEM_VERSION}").first
if rails_gem
require rails_gem.full_gem_path + '/lib/initializer'
else
STDERR.puts %(Cannot find gem for Rails =#{RAILS_GEM_VERSION}:
Install the missing gem with 'gem install -v=#{RAILS_GEM_VERSION} rails', or
change environment.rb to define RAILS_GEM_VERSION with your desired version.
)
exit 1
end
else else
require 'initializer' require 'rubygems'
end
end
Rails::Initializer.run(:set_load_path) environment_without_comments = IO.readlines(File.dirname(__FILE__) + '/environment.rb').reject { |l| l =~ /^#/ }.join
environment_without_comments =~ /[^#]RAILS_GEM_VERSION = '([\d.]+)'/
rails_gem_version = $1
if version = defined?(RAILS_GEM_VERSION) ? RAILS_GEM_VERSION : rails_gem_version
rails_gem = Gem.cache.search('rails', "=#{version}").first
if rails_gem
require_gem "rails", "=#{version}"
require rails_gem.full_gem_path + '/lib/initializer'
else
STDERR.puts %(Cannot find gem for Rails =#{version}:
Install the missing gem with 'gem install -v=#{version} rails', or
change environment.rb to define RAILS_GEM_VERSION with your desired version.
)
exit 1
end
else
require_gem "rails"
require 'initializer'
end
end
Rails::Initializer.run(:set_load_path)
end

View file

@ -71,8 +71,8 @@ namespace :rails do
rm_rf "vendor/rails" rm_rf "vendor/rails"
end end
desc "Update both scripts and public/javascripts from Rails" desc "Update both configs, scripts and public/javascripts from Rails"
task :update => [ "update:scripts", "update:javascripts" ] task :update => [ "update:scripts", "update:javascripts", "update:configs" ]
namespace :update do namespace :update do
desc "Add new scripts to the application script/ directory" desc "Add new scripts to the application script/ directory"
@ -102,5 +102,13 @@ namespace :rails do
scripts.reject!{|s| File.basename(s) == 'application.js'} if File.exists?(project_dir + 'application.js') scripts.reject!{|s| File.basename(s) == 'application.js'} if File.exists?(project_dir + 'application.js')
FileUtils.cp(scripts, project_dir) FileUtils.cp(scripts, project_dir)
end end
desc "Update boot/config.rb from your current rails install"
task :configs do
require 'railties_path'
project_dir = RAILS_ROOT + '/public/javascripts/'
scripts = Dir[RAILTIES_PATH + '/html/javascripts/*.js']
FileUtils.cp(RAILTIES_PATH + '/environments/boot.rb', RAILTIES_PATH + '/environments/boot.rb')
end
end end
end end