Skip to content

Commit

Permalink
Initial upgrade to rails 2.0.5 step
Browse files Browse the repository at this point in the history
  • Loading branch information
Nick Harper committed Jan 3, 2011
1 parent 0716a00 commit 7bac87c
Show file tree
Hide file tree
Showing 9 changed files with 4,233 additions and 1,905 deletions.
126 changes: 95 additions & 31 deletions config/boot.rb
Original file line number Diff line number Diff line change
@@ -1,44 +1,108 @@
# Don't change this file. Configuration is done in config/environment.rb and config/environments/*.rb
# Don't change this file!
# Configure your app in config/environment.rb and config/environments/*.rb

unless defined?(RAILS_ROOT)
root_path = File.join(File.dirname(__FILE__), '..')
RAILS_ROOT = "#{File.dirname(__FILE__)}/.." unless defined?(RAILS_ROOT)

unless RUBY_PLATFORM =~ /mswin32/
require 'pathname'
root_path = Pathname.new(root_path).cleanpath(true).to_s
end
module Rails
class << self
def boot!
unless booted?
preinitialize
pick_boot.run
end
end

RAILS_ROOT = root_path
end
def booted?
defined? Rails::Initializer
end

def pick_boot
(vendor_rails? ? VendorBoot : GemBoot).new
end

def vendor_rails?
File.exist?("#{RAILS_ROOT}/vendor/rails")
end

unless defined?(Rails::Initializer)
if File.directory?("#{RAILS_ROOT}/vendor/rails")
require "#{RAILS_ROOT}/vendor/rails/railties/lib/initializer"
else
require 'rubygems'
def preinitialize
load(preinitializer_path) if File.exist?(preinitializer_path)
end

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
def preinitializer_path
"#{RAILS_ROOT}/config/preinitializer.rb"
end
end

if version = defined?(RAILS_GEM_VERSION) ? RAILS_GEM_VERSION : rails_gem_version
rails_gem = Gem.cache.find_name('rails', "=#{version}").first
class Boot
def run
load_initializer
Rails::Initializer.run(:set_load_path)
end
end

if rails_gem
gem "rails", "=#{version}"
require rails_gem.full_gem_path + '/lib/initializer'
class VendorBoot < Boot
def load_initializer
require "#{RAILS_ROOT}/vendor/rails/railties/lib/initializer"
end
end

class GemBoot < Boot
def load_initializer
self.class.load_rubygems
load_rails_gem
require 'initializer'
end

def load_rails_gem
if version = self.class.gem_version
gem 'rails', version
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.
)
gem 'rails'
end
rescue Gem::LoadError => load_error
$stderr.puts %(Missing the Rails #{version} gem. Please `gem install -v=#{version} rails`, update your RAILS_GEM_VERSION setting in config/environment.rb for the Rails version you do have installed, or comment out RAILS_GEM_VERSION to use the latest version installed.)
exit 1
end

class << self
def rubygems_version
Gem::RubyGemsVersion if defined? Gem::RubyGemsVersion
end

def gem_version
if defined? RAILS_GEM_VERSION
RAILS_GEM_VERSION
elsif ENV.include?('RAILS_GEM_VERSION')
ENV['RAILS_GEM_VERSION']
else
parse_gem_version(read_environment_rb)
end
end

def load_rubygems
require 'rubygems'

unless rubygems_version >= '0.9.4'
$stderr.puts %(Rails requires RubyGems >= 0.9.4 (you have #{rubygems_version}). Please `gem update --system` and try again.)
exit 1
end

rescue LoadError
$stderr.puts %(Rails requires RubyGems >= 0.9.4. Please install RubyGems and try again: http://rubygems.rubyforge.org)
exit 1
end
else
require_gem "rails"
require 'initializer'

def parse_gem_version(text)
$1 if text =~ /^[^#]*RAILS_GEM_VERSION\s*=\s*["']([!~<>=]*\s*[\d.]+)["']/
end

private
def read_environment_rb
File.read("#{RAILS_ROOT}/config/environment.rb")
end
end
end

Rails::Initializer.run(:set_load_path)
end

# All that for this:
Rails.boot!
4 changes: 3 additions & 1 deletion config/environment.rb
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
end

# Specifies gem version of Rails to use when vendor/rails is not present
RAILS_GEM_VERSION = '1.2.5'
RAILS_GEM_VERSION = '2.0.5'

# Bootstrap the Rails environment, frameworks, and default configuration
require File.join(File.dirname(__FILE__), 'boot')
Expand Down Expand Up @@ -44,6 +44,8 @@
# config.active_record.default_timezone = :utc

# See Rails::Configuration for more options

config.action_controller.session = { :session_key => "_abtt_tracker", :secret => "tePHuchaTRachEpr4p5UzeMu#hA-rEdEx=&raT+a" }
end

# Add new inflection rules using the following format
Expand Down
3 changes: 0 additions & 3 deletions config/environments/development.rb
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,6 @@
# Log error messages when you accidentally call methods on nil.
config.whiny_nils = true

# Enable the breakpoint server that script/breakpointer connects to
config.breakpoint_server = true

# Show full error reports and disable caching
config.action_controller.consider_all_requests_local = true
config.action_controller.perform_caching = false
Expand Down
Loading

0 comments on commit 7bac87c

Please sign in to comment.