summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndre Arko <andre@arko.net>2011-01-21 12:12:08 -0800
committerAndre Arko <andre@arko.net>2011-01-21 12:12:08 -0800
commit4dbbc4a051f702a81768545c9ccca2db2bcc0115 (patch)
tree0b10afd7afa73cafeba067a17d751ab42910b127
parentf2ca8971cc5fdf31a7bff5302d81f6094646d886 (diff)
parentac9c3c9906cb9dae576ba65714950aa0d8ccf6b1 (diff)
downloadbundler-4dbbc4a051f702a81768545c9ccca2db2bcc0115.tar.gz
Merge pull request #968 from tenderlove/bundler
--- Rubygems 1.5.0 doesnt require all files that it did in previous versions. This branch adds the proper require statements to bundler. This branch also fixes warnings emitted by psych when dumping YAML.
-rw-r--r--lib/bundler.rb6
-rw-r--r--lib/bundler/cli.rb1
-rw-r--r--lib/bundler/rubygems_ext.rb6
-rw-r--r--lib/bundler/source.rb1
-rw-r--r--lib/bundler/ui.rb2
-rw-r--r--spec/support/rubygems_ext.rb2
6 files changed, 18 insertions, 0 deletions
diff --git a/lib/bundler.rb b/lib/bundler.rb
index dd1ad009b0..10425f8419 100644
--- a/lib/bundler.rb
+++ b/lib/bundler.rb
@@ -1,6 +1,12 @@
require 'rbconfig'
require 'fileutils'
require 'pathname'
+
+begin
+ require 'psych'
+rescue LoadError
+end
+
require 'yaml'
require 'bundler/rubygems_ext'
require 'bundler/version'
diff --git a/lib/bundler/cli.rb b/lib/bundler/cli.rb
index 68751ce606..5c03a97263 100644
--- a/lib/bundler/cli.rb
+++ b/lib/bundler/cli.rb
@@ -1,6 +1,7 @@
$:.unshift File.expand_path('../vendor', __FILE__)
require 'thor'
require 'thor/actions'
+require 'rubygems/user_interaction'
require 'rubygems/config_file'
# Work around a RubyGems bug
diff --git a/lib/bundler/rubygems_ext.rb b/lib/bundler/rubygems_ext.rb
index 29b12d79d4..f2c640c664 100644
--- a/lib/bundler/rubygems_ext.rb
+++ b/lib/bundler/rubygems_ext.rb
@@ -105,6 +105,12 @@ module Gem
alias eql? ==
+ def encode_with(coder)
+ to_yaml_properties.each do |ivar|
+ coder[ivar.to_s.sub(/^@/, '')] = instance_variable_get(ivar)
+ end
+ end
+
def to_yaml_properties
instance_variables.reject { |p| ["@source", "@groups"].include?(p.to_s) }
end
diff --git a/lib/bundler/source.rb b/lib/bundler/source.rb
index 934743f991..b374fdd89e 100644
--- a/lib/bundler/source.rb
+++ b/lib/bundler/source.rb
@@ -1,4 +1,5 @@
require "uri"
+require 'rubygems/user_interaction'
require "rubygems/installer"
require "rubygems/spec_fetcher"
require "rubygems/format"
diff --git a/lib/bundler/ui.rb b/lib/bundler/ui.rb
index e6331921aa..10d5df9eb1 100644
--- a/lib/bundler/ui.rb
+++ b/lib/bundler/ui.rb
@@ -1,3 +1,5 @@
+require 'rubygems/user_interaction'
+
module Bundler
class UI
def warn(message)
diff --git a/spec/support/rubygems_ext.rb b/spec/support/rubygems_ext.rb
index 9e1aa7fa8c..7f312e9547 100644
--- a/spec/support/rubygems_ext.rb
+++ b/spec/support/rubygems_ext.rb
@@ -1,3 +1,5 @@
+require 'rubygems/user_interaction'
+
module Spec
module Rubygems
def self.setup