bundler 0.9.16 → 0.9.17

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of bundler might be problematic. Click here for more details.

data/CHANGELOG.md CHANGED
@@ -1,3 +1,15 @@
1
+ ## 0.9.17 (April 7, 2010)
2
+
3
+ Features:
4
+
5
+ - Bundler.require now calls Bundler.setup automatically
6
+ - Gem::Specification#add_bundler_dependencies added for gemspecs
7
+
8
+ Bugfixes:
9
+
10
+ - Gem paths are not longer duplicated while loading bundler
11
+ - exec no longer duplicates RUBYOPT if it is already set correctly
12
+
1
13
  ## 0.9.16 (April 3, 2010)
2
14
 
3
15
  Features:
data/bin/bundle CHANGED
File without changes
data/lib/bundler.rb CHANGED
@@ -70,7 +70,7 @@ module Bundler
70
70
  end
71
71
 
72
72
  def require(*groups)
73
- load.require(*groups)
73
+ setup(*groups).require(*groups)
74
74
  end
75
75
 
76
76
  def load
@@ -144,7 +144,7 @@ module Bundler
144
144
  ENV['GEM_HOME'] = File.expand_path(bundle_path, root)
145
145
  ENV['GEM_PATH'] = ''
146
146
  else
147
- paths = [Gem.dir, Gem.path].flatten.compact.reject{|p| p.empty? }
147
+ paths = [Gem.dir, Gem.path].flatten.compact.uniq.reject{|p| p.empty? }
148
148
  ENV["GEM_PATH"] = paths.join(File::PATH_SEPARATOR)
149
149
  ENV["GEM_HOME"] = bundle_path.to_s
150
150
  end
data/lib/bundler/cli.rb CHANGED
@@ -163,9 +163,11 @@ module Bundler
163
163
 
164
164
  # Set RUBYOPT
165
165
  rubyopt = [ENV["RUBYOPT"]].compact
166
- rubyopt.unshift "-rbundler/setup"
167
- rubyopt.unshift "-I#{File.expand_path('../..', __FILE__)}"
168
- ENV["RUBYOPT"] = rubyopt.join(' ')
166
+ if rubyopt.empty? || rubyopt.first !~ /-rbundler\/setup/
167
+ rubyopt.unshift "-rbundler/setup"
168
+ rubyopt.unshift "-I#{File.expand_path('../..', __FILE__)}"
169
+ ENV["RUBYOPT"] = rubyopt.join(' ')
170
+ end
169
171
 
170
172
  begin
171
173
  # Run
@@ -31,6 +31,17 @@ module Gem
31
31
  gemfile << dependencies_to_gemfile(development_dependencies, :development)
32
32
  end
33
33
 
34
+ def add_bundler_dependencies(*groups)
35
+ groups = [:default] if groups.empty?
36
+ Bundler.definition.dependencies.each do |dep|
37
+ if dep.groups.include?(:development)
38
+ self.add_development_dependency(dep.name, dep.requirement.to_s)
39
+ elsif (dep.groups & groups).any?
40
+ self.add_dependency(dep.name, dep.requirement.to_s)
41
+ end
42
+ end
43
+ end
44
+
34
45
  private
35
46
 
36
47
  def dependencies_to_gemfile(dependencies, group = nil)
@@ -15,7 +15,9 @@ module Bundler
15
15
  # Has to happen first
16
16
  clean_load_path
17
17
 
18
- specs = groups.any? ? specs_for(groups) : requested_specs
18
+ unloaded = groups - (@loaded_groups || [])
19
+ @loaded_groups = groups | (@loaded_groups || [])
20
+ specs = unloaded.any? ? specs_for(unloaded) : requested_specs
19
21
 
20
22
  cripple_rubygems(specs)
21
23
 
@@ -26,7 +28,9 @@ module Bundler
26
28
  end
27
29
 
28
30
  Gem.loaded_specs[spec.name] = spec
29
- $LOAD_PATH.unshift(*spec.load_paths)
31
+ spec.load_paths.each do |path|
32
+ $LOAD_PATH.unshift(path) unless $LOAD_PATH.include?(path)
33
+ end
30
34
  end
31
35
  self
32
36
  end
@@ -50,8 +50,11 @@ module Bundler
50
50
  configure_gem_path_and_home(SPECS)
51
51
  SPECS.each do |spec|
52
52
  Gem.loaded_specs[spec.name] = spec
53
- $LOAD_PATH.unshift(*spec.require_paths)
53
+ spec.require_paths.each do |path|
54
+ $LOAD_PATH.unshift(path) unless $LOAD_PATH.include?(path)
55
+ end
54
56
  end
57
+ self
55
58
  end
56
59
 
57
60
  def self.require(*groups)
@@ -1,3 +1,3 @@
1
1
  module Bundler
2
- VERSION = "0.9.16"
2
+ VERSION = "0.9.17"
3
3
  end
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 9
8
- - 16
9
- version: 0.9.16
8
+ - 17
9
+ version: 0.9.17
10
10
  platform: ruby
11
11
  authors:
12
12
  - Carl Lerche
@@ -16,7 +16,7 @@ autorequire:
16
16
  bindir: bin
17
17
  cert_chain: []
18
18
 
19
- date: 2010-04-03 00:00:00 -07:00
19
+ date: 2010-04-07 00:00:00 -07:00
20
20
  default_executable:
21
21
  dependencies:
22
22
  - !ruby/object:Gem::Dependency