Ruby on Rails | Screencasts | Download | Documentation | Weblog | Community | Source

Changeset 9240

Show
Ignore:
Timestamp:
04/08/08 04:21:32 (3 months ago)
Author:
rick
Message:

Don't require rails/gem_builder during rails initialization, it's only needed for the gems:build task. [rick]

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/railties/CHANGELOG

    r9236 r9240  
    11*SVN* 
     2 
     3* Don't require rails/gem_builder during rails initialization, it's only needed for the gems:build task. [rick] 
    24 
    35* script/performance/profiler compatibility with the ruby-prof >= 0.5.0. Closes #9176. [Catfish] 
  • trunk/railties/lib/initializer.rb

    r9215 r9240  
    88require 'rails/plugin/locator' 
    99require 'rails/plugin/loader' 
    10 require 'rails/gem_builder' 
    1110require 'rails/gem_dependency' 
    1211 
  • trunk/railties/lib/rails/gem_builder.rb

    r9216 r9240  
     1require 'rubygems' 
    12require 'rubygems/installer' 
    23 
  • trunk/railties/lib/rails/gem_dependency.rb

    r9215 r9240  
    1515      @lib      = options[:lib] 
    1616      @source   = options[:source] 
    17       @loaded   = false 
    18       @load_paths_added = false 
     17      @loaded   = @frozen = @load_paths_added = false 
    1918      @unpack_directory = nil 
    2019    end 
     
    2928      else 
    3029        $LOAD_PATH << File.join(unpacked_paths.first, 'lib') 
     30        @frozen = true 
    3131      end 
    3232      @load_paths_added = true 
     
    4646      puts $!.to_s 
    4747      $!.backtrace.each { |b| puts b } 
     48    end 
     49 
     50    def frozen? 
     51      @frozen 
    4852    end 
    4953 
  • trunk/railties/lib/tasks/gems.rake

    r9215 r9240  
    22task :gems => :environment do 
    33  Rails.configuration.gems.each do |gem| 
    4     puts "[#{gem.loaded? ? '*' : ' '}] #{gem.name} #{gem.requirement.to_s}" 
     4    code = gem.loaded? ? (gem.frozen? ? "F" : "I") : " " 
     5    puts "[#{code}] #{gem.name} #{gem.requirement.to_s}" 
    56  end 
     7  puts 
     8  puts "I = Installed" 
     9  puts "F = Frozen" 
    610end 
    711 
     
    913  desc "Build any native extensions for unpacked gems" 
    1014  task :build do 
     15    require 'rails/gem_builder' 
    1116    Dir[File.join(RAILS_ROOT, 'vendor', 'gems', '*')].each do |gem_dir| 
    1217      spec_file = File.join(gem_dir, '.specification') 
     
    2732 
    2833  desc "Unpacks the specified gem into vendor/gems." 
    29   task :unpack do 
    30     Rake::Task["environment"].invoke 
     34  task :unpack => :environment do 
    3135    require 'rubygems' 
    3236    require 'rubygems/gem_runner' 
    3337    Rails.configuration.gems.each do |gem| 
    34       next unless ENV['GEM'].blank? || ENV['GEM'] == gem.name 
     38      next unless !gem.frozen? && (ENV['GEM'].blank? || ENV['GEM'] == gem.name) 
    3539      gem.unpack_to(File.join(RAILS_ROOT, 'vendor', 'gems')) if gem.loaded? 
    3640    end