bundler 1.2.0.pre → 1.2.0.pre.1

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,4 +1,24 @@
1
- ## 1.2.0.pre
1
+ ## 1.2.0.pre.1 (May 27, 2012)
2
+
3
+ Features:
4
+
5
+ - Import git submodules of submodules recursively (@nwwatson, #1935)
6
+
7
+ Bugfixes:
8
+
9
+ - Exit from `check` with a non-zero status when frozen with no lock
10
+ - Use `latest_release` in Capistrano and Vlad integration (#1264)
11
+ - Work around a Ruby 1.9.3p194 bug in Psych when config files are empty
12
+
13
+ Documentation:
14
+
15
+ - Add instructions for local git repos to the `config` manpage
16
+ - Update the `Gemfile` manpage to include ruby versions (@stevenh512)
17
+ - When OpenSSL is missing, provide instructions for fixing (#1776 etc.)
18
+ - Unknown exceptions now link to ISSUES for help instead of a new ticket
19
+ - Correct inline help for `clean --force` (@dougbarth, #1911)
20
+
21
+ ## 1.2.0.pre (May 4, 2012)
2
22
 
3
23
  Features:
4
24
 
@@ -32,6 +52,15 @@ Documentation:
32
52
  - Add basic documentation for bin_path and bundle_path (@radar)
33
53
  - Add documentation for the run method in Bundler::Installer
34
54
 
55
+ ## 1.1.4 (May 27, 2012)
56
+
57
+ Bugfixes:
58
+
59
+ - Use `latest_release` in Capistrano and Vlad integration (#1264)
60
+ - Unknown exceptions now link to ISSUES for help instead of a new ticket
61
+ - When OpenSSL is missing, provide instructions for fixing (#1776 etc.)
62
+ - Correct inline help for `clean --force` (@dougbarth, #1911)
63
+ - Work around a Ruby 1.9.3p194 bug in Psych when config files are empty
35
64
 
36
65
  ## 1.1.3 (March 23, 2012)
37
66
 
data/ISSUES.md CHANGED
@@ -1,11 +1,21 @@
1
1
  # Bundler Issues
2
2
 
3
- ## Troubleshooting
3
+ So! You're having problems with Bundler. This file is here to help. If you're running into an error, try reading the rest of this file for help. If you can't figure out how to solve your problem, there are also instructions on how to report a bug.
4
+
5
+ ## Documentation
4
6
 
5
- Instructions for common Bundler use-cases can be found on the [Bundler documentation site](http://gembundler.com/v1.0/).
7
+ Instructions for common Bundler uses can be found on the [Bundler documentation site](http://gembundler.com/v1.1/).
6
8
 
7
9
  Detailed information about each Bundler command, including help with common problems, can be found in the [Bundler man pages](http://gembundler.com/man/bundle.1.html).
8
10
 
11
+ ## Troubleshooting
12
+
13
+ ### Heroku errors
14
+
15
+ Please open a ticket with Heroku if you're having trouble deploying. They have a professional support team who can help you resolve Heroku issues far better than the Bundler team can. If the problem that you are having turns out to be a bug in Bundler itself, Heroku support can get the exact details to us.
16
+
17
+ ### Something else
18
+
9
19
  After reading the documentation, try these troubleshooting steps:
10
20
 
11
21
  # remove user-specific gems and git repos
@@ -26,24 +36,9 @@ After reading the documentation, try these troubleshooting steps:
26
36
  # try to install one more time
27
37
  bundle install
28
38
 
29
- ## Frequently encountered issues
30
-
31
- ### Heroku errors
32
-
33
- Open a ticket with Heroku. If the issue somehow turns out to be with Bundler itself, the Heroku support team will forward the details of your issue to us.
34
-
35
- ### REE and Zlib::GzipFile::Error
36
-
37
- Ruby Enterprise Edition users may see a `Zlib::GzipFile::Error` while installing gems. It is due to [a bug in REE](http://code.google.com/p/rubyenterpriseedition/issues/detail?id=45). You may be able to resolve the issue by upgrading REE, or changing to a different interpreter.
38
-
39
- ### Rake activation error
40
-
41
- Anyone who has installed the Spork gem may see activation errors while running `rake` directly. This is because old versions of Spork would [install the newest rake using a mkmf file](https://github.com/timcharper/spork/issues/119). To resolve the issue, update the Spork version requirement in your Gemfile to at least `"~>0.8.5"` or `"~>0.9.0.rc8"`.
42
-
43
-
44
39
  ## Reporting unresolved problems
45
40
 
46
- Instructions that allow the Bundler team to reproduce your issue are vitally important. When you report a bug, please include the following information:
41
+ The Bundler team needs to know some things in order to diagnose and hopefully fix the bug you've found. When you report a bug, please include the following information:
47
42
 
48
43
  - The command you ran
49
44
  - Exception backtrace(s), if any
@@ -57,11 +52,12 @@ Instructions that allow the Bundler team to reproduce your issue are vitally imp
57
52
  - Whether you have the `rubygems-bundler` gem, which can break gem binares
58
53
  - Whether you have the `open_gem` gem, which can cause rake activation conflicts
59
54
 
60
-
61
55
  If you are using Rails 2.3, please also include:
62
56
 
63
57
  - Your boot.rb file
64
58
  - Your preinitializer.rb file
65
59
  - Your environment.rb file
66
60
 
67
- [Create a gist](https://gist.github.com) containing all of that information, then visit the [Bundler issue tracker](https://github.com/carlhuda/bundler) and create a new ticket describing your problem and linking to your gist.
61
+ [Create a gist](https://gist.github.com) containing all of that information, then visit the [Bundler issue tracker](https://github.com/carlhuda/bundler/issues) and [create a new ticket](https://github.com/carlhuda/bundler/issues/new) describing your problem and linking to your gist.
62
+
63
+ Thanks for reporting issues and making Bundler better!
data/bin/bundle CHANGED
@@ -1,31 +1,14 @@
1
1
  #!/usr/bin/env ruby
2
2
  require 'bundler'
3
- begin
4
- # Check if an older version of bundler is installed
5
- $:.each do |path|
6
- if path =~ %r'/bundler-0.(\d+)' && $1.to_i < 9
7
- err = "Please remove Bundler 0.8 versions."
8
- err << "This can be done by running `gem cleanup bundler`."
9
- abort(err)
10
- end
3
+ # Check if an older version of bundler is installed
4
+ $:.each do |path|
5
+ if path =~ %r'/bundler-0.(\d+)' && $1.to_i < 9
6
+ err = "Please remove Bundler 0.8 versions."
7
+ err << "This can be done by running `gem cleanup bundler`."
8
+ abort(err)
11
9
  end
12
- require 'bundler/cli'
13
- Bundler::CLI.start
14
- rescue Bundler::BundlerError => e
15
- Bundler.ui.error e.message
16
- Bundler.ui.debug e.backtrace.join("\n")
17
- exit e.status_code
18
- rescue Interrupt => e
19
- Bundler.ui.error "\nQuitting..."
20
- Bundler.ui.debug e.backtrace.join("\n")
21
- exit 1
22
- rescue SystemExit => e
23
- exit e.status
24
- rescue Exception => e
25
- Bundler.ui.error "Unfortunately, a fatal error has occurred. " +
26
- "Please report this error to the Bundler issue tracker at " +
27
- "https://github.com/carlhuda/bundler/issues so that we can fix it. " +
28
- "Please include the full output of the command, your Gemfile and Gemfile.lock. " +
29
- "Thanks!"
30
- raise e
31
10
  end
11
+
12
+ require 'bundler/cli'
13
+ require 'bundler/friendly_errors'
14
+ Bundler.with_friendly_errors { Bundler::CLI.start }
@@ -5,7 +5,7 @@
5
5
  require 'bundler/deployment'
6
6
 
7
7
  Capistrano::Configuration.instance(:must_exist).load do
8
- after "deploy:finalize_update", "bundle:install"
8
+ before "deploy:finalize_update", "bundle:install"
9
9
  Bundler::Deployment.define_task(self, :task, :except => { :no_release => true })
10
10
  set :rake, lambda { "#{fetch(:bundle_cmd, "bundle")} exec rake" }
11
11
  end
data/lib/bundler/cli.rb CHANGED
@@ -113,6 +113,9 @@ module Bundler
113
113
  not_installed.each { |s| Bundler.ui.error " * #{s.name} (#{s.version})" }
114
114
  Bundler.ui.warn "Install missing gems with `bundle install`"
115
115
  exit 1
116
+ elsif !Bundler.default_lockfile.exist? && Bundler.settings[:frozen]
117
+ Bundler.ui.error "This bundle has been frozen, but there is no Gemfile.lock present"
118
+ exit 1
116
119
  else
117
120
  Bundler.load.lock
118
121
  Bundler.ui.info "The Gemfile's dependencies are satisfied"
@@ -616,7 +619,7 @@ module Bundler
616
619
 
617
620
  desc "clean", "Cleans up unused gems in your bundler directory"
618
621
  method_option "force", :type => :boolean, :default => false, :banner =>
619
- "forces clean even if --path is set"
622
+ "forces clean even if --path is not set"
620
623
  def clean
621
624
  if Bundler.settings[:path] || options[:force]
622
625
  Bundler.load.clean
@@ -41,16 +41,16 @@ module Bundler
41
41
  bundle_dir = context.fetch(:bundle_dir, File.join(context.fetch(:shared_path), 'bundle'))
42
42
  bundle_gemfile = context.fetch(:bundle_gemfile, "Gemfile")
43
43
  bundle_without = [*context.fetch(:bundle_without, [:development, :test])].compact
44
- current_release = context.fetch(:current_release)
45
- if current_release.to_s.empty?
44
+ app_path = context.fetch(:latest_release)
45
+ if app_path.to_s.empty?
46
46
  raise error_type.new("Cannot detect current release path - make sure you have deployed at least once.")
47
47
  end
48
- args = ["--gemfile #{File.join(current_release, bundle_gemfile)}"]
48
+ args = ["--gemfile #{File.join(app_path, bundle_gemfile)}"]
49
49
  args << "--path #{bundle_dir}" unless bundle_dir.to_s.empty?
50
50
  args << bundle_flags.to_s
51
51
  args << "--without #{bundle_without.join(" ")}" unless bundle_without.empty?
52
52
 
53
- run "cd #{current_release} && #{bundle_cmd} install #{args.join(' ')}"
53
+ run "cd #{app_path} && #{bundle_cmd} install #{args.join(' ')}"
54
54
  end
55
55
  end
56
56
  end
@@ -1,5 +1,5 @@
1
1
  require 'uri'
2
- require 'net/http/persistent'
2
+ require 'bundler/vendored_persistent'
3
3
 
4
4
  module Bundler
5
5
  # Handles all the fetching with the rubygems server
@@ -104,6 +104,16 @@ module Bundler
104
104
  end
105
105
 
106
106
  index
107
+ rescue LoadError => e
108
+ if e.message.include?("cannot load such file -- openssl")
109
+ raise InstallError,
110
+ "\nCould not load OpenSSL." \
111
+ "\nYou must recompile Ruby with OpenSSL support or change the sources in your" \
112
+ "\nGemfile from 'https' to 'http'. Instructions for compiling with OpenSSL" \
113
+ "\nusing RVM are available at rvm.io/packages/openssl."
114
+ else
115
+ raise e
116
+ end
107
117
  end
108
118
 
109
119
  # fetch index
@@ -170,7 +180,7 @@ module Bundler
170
180
  name, requirement = d
171
181
  dep = Gem::Dependency.new(name, requirement.split(", "))
172
182
  rescue ArgumentError => e
173
- if e.message.include?('Illformed requirement ["#<YAML::Syck::DefaultKey')
183
+ if e.message.include?('Ill-formed requirement ["#<YAML::Syck::DefaultKey')
174
184
  puts # we shouldn't print the error message on the "fetching info" status line
175
185
  raise GemspecError, %{Unfortunately, the gem #{s[:name]} (#{s[:number]}) } +
176
186
  %{has an invalid gemspec. As a result, Bundler cannot install this Gemfile. } +
@@ -208,7 +218,7 @@ module Bundler
208
218
  Bundler.ui.debug "Could not fetch prerelease specs from #{strip_user_pass_from_uri(@remote_uri)}"
209
219
  end
210
220
  rescue Gem::RemoteFetcher::FetchError
211
- raise Bundler::HTTPError, "Could not reach #{strip_user_pass_from_uri(@remote_uri)}"
221
+ raise HTTPError, "Could not reach #{strip_user_pass_from_uri(@remote_uri)}"
212
222
  end
213
223
 
214
224
  return spec_list
@@ -0,0 +1,22 @@
1
+ module Bundler
2
+ def self.with_friendly_errors
3
+ begin
4
+ yield
5
+ rescue Bundler::BundlerError => e
6
+ Bundler.ui.error e.message
7
+ Bundler.ui.debug e.backtrace.join("\n")
8
+ exit e.status_code
9
+ rescue Interrupt => e
10
+ Bundler.ui.error "\nQuitting..."
11
+ Bundler.ui.debug e.backtrace.join("\n")
12
+ exit 1
13
+ rescue SystemExit => e
14
+ exit e.status
15
+ rescue Exception => e
16
+ Bundler.ui.error(
17
+ "Unfortunately, a fatal error has occurred. Please see the Bundler \n" \
18
+ "troubleshooting documentation at http://bit.ly/bundler-issues. Thanks! \n")
19
+ raise e
20
+ end
21
+ end
22
+ end
@@ -124,6 +124,7 @@ module Bundler
124
124
  msg = "An error occurred while installing #{spec.name} (#{spec.version}),"
125
125
  msg << " and Bundler cannot continue.\nMake sure that `gem install"
126
126
  msg << " #{spec.name} -v '#{spec.version}'` succeeds before bundling."
127
+ Bundler.ui.debug e.backtrace.join("\n")
127
128
  raise Bundler::InstallError, msg
128
129
  end
129
130
 
@@ -2,8 +2,8 @@ module Bundler
2
2
  class Settings
3
3
  def initialize(root)
4
4
  @root = root
5
- @local_config = (File.exist?(local_config_file) && yaml = YAML.load_file(local_config_file)) ? yaml : {}
6
- @global_config = (File.exist?(global_config_file) && yaml = YAML.load_file(global_config_file)) ? yaml : {}
5
+ @local_config = load_config(local_config_file)
6
+ @global_config = load_config(global_config_file)
7
7
  end
8
8
 
9
9
  def [](key)
@@ -124,5 +124,13 @@ module Bundler
124
124
  def local_config_file
125
125
  Pathname.new("#{@root}/config")
126
126
  end
127
+
128
+ def load_config(config_file)
129
+ if config_file.exist? && !config_file.size.zero?
130
+ yaml = YAML.load_file(config_file)
131
+ end
132
+ yaml || {}
133
+ end
134
+
127
135
  end
128
136
  end
@@ -552,8 +552,7 @@ module Bundler
552
552
  git "reset --hard #{@revision}"
553
553
 
554
554
  if submodules
555
- git "submodule init"
556
- git "submodule update"
555
+ git "submodule update --init --recursive"
557
556
  end
558
557
  end
559
558
  end
@@ -0,0 +1,3 @@
1
+ vendor = File.expand_path('../vendor', __FILE__)
2
+ $:.unshift(vendor) unless $:.include?(vendor)
3
+ require 'net/http/persistent'
@@ -2,6 +2,7 @@ if defined?(Thor)
2
2
  Bundler.ui.warn "Thor has already been required. " +
3
3
  "This may cause Bundler to malfunction in unexpected ways."
4
4
  end
5
- $:.unshift File.expand_path('../vendor', __FILE__)
5
+ vendor = File.expand_path('../vendor', __FILE__)
6
+ $:.unshift(vendor) unless $:.include?(vendor)
6
7
  require 'thor'
7
8
  require 'thor/actions'
@@ -2,5 +2,5 @@ module Bundler
2
2
  # We're doing this because we might write tests that deal
3
3
  # with other versions of bundler and we are unsure how to
4
4
  # handle this better.
5
- VERSION = "1.2.0.pre" unless defined?(::Bundler::VERSION)
5
+ VERSION = "1.2.0.pre.1" unless defined?(::Bundler::VERSION)
6
6
  end
@@ -96,3 +96,35 @@ You can set them globally either via environment variables or `bundle config`,
96
96
  whichever is preferable for your setup. If you use both, environment variables
97
97
  will take preference over global settings.
98
98
 
99
+ ## LOCAL GIT REPOS
100
+
101
+ Bundler also allows you to work against a git repository locally
102
+ instead of using the remote version. This can be achieved by setting
103
+ up a local override:
104
+
105
+ bundle config local.GEM_NAME /path/to/local/git/repository
106
+
107
+ For example, in order to use a local Rack repository, a developer could call:
108
+
109
+ bundle config local.rack ~/Work/git/rack
110
+
111
+ Now instead of checking out the remote git repository, the local
112
+ override will be used. Similar to a path source, every time the local
113
+ git repository change, changes will be automatically picked up by
114
+ Bundler. This means a commit in the local git repo will update the
115
+ revision in the `Gemfile.lock` to the local git repo revision. This
116
+ requires the same attention as git submodules. Before pushing to
117
+ the remote, you need to ensure the local override was pushed, otherwise
118
+ you may point to a commit that only exists in your local machine.
119
+
120
+ Bundler does many checks to ensure a developer won't work with
121
+ invalid references. Particularly, we force a developer to specify
122
+ a branch in the `Gemfile` in order to use this feature. If the branch
123
+ specified in the `Gemfile` and the current branch in the local git
124
+ repository do not match, Bundler will abort. This ensures that
125
+ a developer is always working against the correct branches, avoiding
126
+ a reference to be accidentally updated.
127
+
128
+ Finally, Bundler also ensures that the current revision in the
129
+ `Gemfile.lock` exists in the local git repository. By doing this, Bundler
130
+ forces you to fetch the latest changes in the remotes.
data/man/gemfile.5.ronn CHANGED
@@ -25,6 +25,33 @@ might contain the gems listed in the `Gemfile`.
25
25
 
26
26
  Each of these _source_s `MUST` be a valid Rubygems repository.
27
27
 
28
+ ## RUBY (#ruby)
29
+
30
+ If your application requires a specific Ruby version or engine, specify your
31
+ requirements using the `ruby` method, with the following arguments.
32
+ All parameters are `OPTIONAL` unless otherwise specified.
33
+
34
+ ### VERSION (required)
35
+
36
+ The version of Ruby that your application requires. If your application
37
+ requires an alternate Ruby engine, such as JRuby or Rubinius, this should be
38
+ the Ruby version that the engine is compatible with.
39
+
40
+ ruby "1.9.3"
41
+
42
+ ### ENGINE (:engine)
43
+
44
+ Each application _may_ specify a Ruby engine. If an engine is specified, an
45
+ engine version _must_ also be specified.
46
+
47
+ ### ENGINE VERSION (:engine_version)
48
+
49
+ Each application _may_ specify a Ruby engine version. If an engine version is
50
+ specified, an engine _must_ also be specified. If the engine is "ruby" the
51
+ engine version specified _must_ match the Ruby version.
52
+
53
+ ruby "1.8.7", :engine => "jruby", :engine_version => "1.6.7"
54
+
28
55
  ## GEMS (#gem)
29
56
 
30
57
  Specify gem requirements using the `gem` method, with the following arguments.
@@ -399,4 +399,38 @@ OUTPUT
399
399
  out.should_not include("#{user}:#{password}")
400
400
  end
401
401
  end
402
+
403
+ context "when ruby is compiled without openssl" do
404
+ before do
405
+ # Install a monkeypatch that reproduces the effects of openssl being
406
+ # missing when the fetcher runs, as happens in real life. The reason
407
+ # we can't just overwrite openssl.rb is that Artifice uses it.
408
+ bundled_app("broken_ssl").mkpath
409
+ bundled_app("broken_ssl/openssl.rb").open("w") do |f|
410
+ f.write <<-RUBY
411
+ $:.delete File.expand_path("..", __FILE__)
412
+ require 'openssl'
413
+
414
+ require 'bundler'
415
+ class Bundler::Fetcher
416
+ def fetch(*)
417
+ raise LoadError, "cannot load such file -- openssl"
418
+ end
419
+ end
420
+ RUBY
421
+ end
422
+ end
423
+
424
+ it "explains what to do to get it" do
425
+ gemfile <<-G
426
+ source "#{source_uri.gsub(/http/, 'https')}"
427
+ gem "rack"
428
+ G
429
+
430
+ bundle :install, :artifice => "endpoint",
431
+ :env => {"RUBYOPT" => "-I#{bundled_app("broken_ssl")}"}
432
+ out.should include("Could not load OpenSSL.")
433
+ end
434
+ end
435
+
402
436
  end
@@ -201,6 +201,20 @@ describe "bundle check" do
201
201
  end
202
202
  end
203
203
 
204
+ it "fails when there's no lock file and frozen is set" do
205
+ gemfile <<-G
206
+ source "file://#{gem_repo1}"
207
+ gem "foo"
208
+ G
209
+
210
+ bundle "install"
211
+ bundle "install --deployment"
212
+ FileUtils.rm(bundled_app("Gemfile.lock"))
213
+
214
+ bundle :check, :exitstatus => true
215
+ exitstatus.should_not eq(0)
216
+ end
217
+
204
218
  context "--path" do
205
219
  before do
206
220
  gemfile <<-G
@@ -594,9 +594,9 @@ G
594
594
  it "fails when the engine version doesn't match" do
595
595
  simulate_ruby_engine "jruby" do
596
596
  gemfile <<-G
597
- gem "rack", "0.9.1"
597
+ gem "rack", "0.9.1"
598
598
 
599
- #{engine_version_incorrect}
599
+ #{engine_version_incorrect}
600
600
  G
601
601
 
602
602
  bundle "exec rackup", :exitstatus => true
metadata CHANGED
@@ -1,65 +1,60 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: bundler
3
- version: !ruby/object:Gem::Version
4
- hash: 481461827
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.2.0.pre.1
5
5
  prerelease: 6
6
- segments:
7
- - 1
8
- - 2
9
- - 0
10
- - pre
11
- version: 1.2.0.pre
12
6
  platform: ruby
13
- authors:
14
- - "Andr\xC3\xA9 Arko"
7
+ authors:
8
+ - André Arko
15
9
  - Terence Lee
16
10
  - Carl Lerche
17
11
  - Yehuda Katz
18
12
  autorequire:
19
13
  bindir: bin
20
14
  cert_chain: []
21
-
22
- date: 2012-05-04 00:00:00 Z
23
- dependencies:
24
- - !ruby/object:Gem::Dependency
15
+ date: 2012-05-28 00:00:00.000000000 Z
16
+ dependencies:
17
+ - !ruby/object:Gem::Dependency
25
18
  name: ronn
26
- prerelease: false
27
- requirement: &id001 !ruby/object:Gem::Requirement
19
+ requirement: !ruby/object:Gem::Requirement
28
20
  none: false
29
- requirements:
30
- - - ">="
31
- - !ruby/object:Gem::Version
32
- hash: 3
33
- segments:
34
- - 0
35
- version: "0"
21
+ requirements:
22
+ - - ! '>='
23
+ - !ruby/object:Gem::Version
24
+ version: '0'
36
25
  type: :development
37
- version_requirements: *id001
38
- - !ruby/object:Gem::Dependency
39
- name: rspec
40
26
  prerelease: false
41
- requirement: &id002 !ruby/object:Gem::Requirement
27
+ version_requirements: !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ - !ruby/object:Gem::Dependency
34
+ name: rspec
35
+ requirement: !ruby/object:Gem::Requirement
42
36
  none: false
43
- requirements:
37
+ requirements:
44
38
  - - ~>
45
- - !ruby/object:Gem::Version
46
- hash: 3
47
- segments:
48
- - 2
49
- - 0
50
- version: "2.0"
39
+ - !ruby/object:Gem::Version
40
+ version: '2.0'
51
41
  type: :development
52
- version_requirements: *id002
53
- description: Bundler manages an application's dependencies through its entire life, across many machines, systematically and repeatably
54
- email:
42
+ prerelease: false
43
+ version_requirements: !ruby/object:Gem::Requirement
44
+ none: false
45
+ requirements:
46
+ - - ~>
47
+ - !ruby/object:Gem::Version
48
+ version: '2.0'
49
+ description: Bundler manages an application's dependencies through its entire life,
50
+ across many machines, systematically and repeatably
51
+ email:
55
52
  - andre@arko.net
56
- executables:
53
+ executables:
57
54
  - bundle
58
55
  extensions: []
59
-
60
56
  extra_rdoc_files: []
61
-
62
- files:
57
+ files:
63
58
  - .gitignore
64
59
  - .travis.yml
65
60
  - CHANGELOG.md
@@ -81,6 +76,7 @@ files:
81
76
  - lib/bundler/endpoint_specification.rb
82
77
  - lib/bundler/environment.rb
83
78
  - lib/bundler/fetcher.rb
79
+ - lib/bundler/friendly_errors.rb
84
80
  - lib/bundler/gem_helper.rb
85
81
  - lib/bundler/gem_helpers.rb
86
82
  - lib/bundler/gem_installer.rb
@@ -147,6 +143,7 @@ files:
147
143
  - lib/bundler/vendor/thor/task.rb
148
144
  - lib/bundler/vendor/thor/util.rb
149
145
  - lib/bundler/vendor/thor/version.rb
146
+ - lib/bundler/vendored_persistent.rb
150
147
  - lib/bundler/vendored_thor.rb
151
148
  - lib/bundler/version.rb
152
149
  - lib/bundler/vlad.rb
@@ -235,56 +232,119 @@ files:
235
232
  - spec/update/gems_spec.rb
236
233
  - spec/update/git_spec.rb
237
234
  - spec/update/source_spec.rb
238
- - lib/bundler/man/bundle-exec
239
235
  - lib/bundler/man/bundle
236
+ - lib/bundler/man/bundle-config
237
+ - lib/bundler/man/bundle-config.txt
238
+ - lib/bundler/man/bundle-exec
239
+ - lib/bundler/man/bundle-exec.txt
240
240
  - lib/bundler/man/bundle-install
241
- - lib/bundler/man/gemfile.5
241
+ - lib/bundler/man/bundle-install.txt
242
242
  - lib/bundler/man/bundle-package
243
+ - lib/bundler/man/bundle-package.txt
243
244
  - lib/bundler/man/bundle-update
244
- - lib/bundler/man/bundle-exec.txt
245
- - lib/bundler/man/gemfile.5.txt
246
245
  - lib/bundler/man/bundle-update.txt
247
- - lib/bundler/man/bundle-config
248
- - lib/bundler/man/bundle-config.txt
249
246
  - lib/bundler/man/bundle.txt
250
- - lib/bundler/man/bundle-package.txt
251
- - lib/bundler/man/bundle-install.txt
247
+ - lib/bundler/man/gemfile.5
248
+ - lib/bundler/man/gemfile.5.txt
252
249
  homepage: http://gembundler.com
253
250
  licenses: []
254
-
255
251
  post_install_message:
256
252
  rdoc_options: []
257
-
258
- require_paths:
253
+ require_paths:
259
254
  - lib
260
- required_ruby_version: !ruby/object:Gem::Requirement
255
+ required_ruby_version: !ruby/object:Gem::Requirement
261
256
  none: false
262
- requirements:
263
- - - ">="
264
- - !ruby/object:Gem::Version
265
- hash: 57
266
- segments:
267
- - 1
268
- - 8
269
- - 7
257
+ requirements:
258
+ - - ! '>='
259
+ - !ruby/object:Gem::Version
270
260
  version: 1.8.7
271
- required_rubygems_version: !ruby/object:Gem::Requirement
261
+ required_rubygems_version: !ruby/object:Gem::Requirement
272
262
  none: false
273
- requirements:
274
- - - ">="
275
- - !ruby/object:Gem::Version
276
- hash: 23
277
- segments:
278
- - 1
279
- - 3
280
- - 6
263
+ requirements:
264
+ - - ! '>='
265
+ - !ruby/object:Gem::Version
281
266
  version: 1.3.6
282
267
  requirements: []
283
-
284
268
  rubyforge_project: bundler
285
269
  rubygems_version: 1.8.21
286
270
  signing_key:
287
271
  specification_version: 3
288
272
  summary: The best way to manage your application's dependencies
289
- test_files: []
290
-
273
+ test_files:
274
+ - spec/bundler/dsl_spec.rb
275
+ - spec/bundler/gem_helper_spec.rb
276
+ - spec/bundler/source_spec.rb
277
+ - spec/cache/gems_spec.rb
278
+ - spec/cache/git_spec.rb
279
+ - spec/cache/path_spec.rb
280
+ - spec/cache/platform_spec.rb
281
+ - spec/install/deploy_spec.rb
282
+ - spec/install/gems/c_ext_spec.rb
283
+ - spec/install/gems/dependency_api_spec.rb
284
+ - spec/install/gems/env_spec.rb
285
+ - spec/install/gems/flex_spec.rb
286
+ - spec/install/gems/groups_spec.rb
287
+ - spec/install/gems/packed_spec.rb
288
+ - spec/install/gems/platform_spec.rb
289
+ - spec/install/gems/post_install_spec.rb
290
+ - spec/install/gems/resolving_spec.rb
291
+ - spec/install/gems/simple_case_spec.rb
292
+ - spec/install/gems/standalone_spec.rb
293
+ - spec/install/gems/sudo_spec.rb
294
+ - spec/install/gems/win32_spec.rb
295
+ - spec/install/gemspec_spec.rb
296
+ - spec/install/git_spec.rb
297
+ - spec/install/invalid_spec.rb
298
+ - spec/install/path_spec.rb
299
+ - spec/install/upgrade_spec.rb
300
+ - spec/lock/git_spec.rb
301
+ - spec/lock/lockfile_spec.rb
302
+ - spec/other/check_spec.rb
303
+ - spec/other/clean_spec.rb
304
+ - spec/other/config_spec.rb
305
+ - spec/other/console_spec.rb
306
+ - spec/other/exec_spec.rb
307
+ - spec/other/ext_spec.rb
308
+ - spec/other/help_spec.rb
309
+ - spec/other/init_spec.rb
310
+ - spec/other/newgem_spec.rb
311
+ - spec/other/open_spec.rb
312
+ - spec/other/outdated_spec.rb
313
+ - spec/other/platform_spec.rb
314
+ - spec/other/show_spec.rb
315
+ - spec/quality_spec.rb
316
+ - spec/realworld/edgecases_spec.rb
317
+ - spec/resolver/basic_spec.rb
318
+ - spec/resolver/platform_spec.rb
319
+ - spec/runtime/executable_spec.rb
320
+ - spec/runtime/load_spec.rb
321
+ - spec/runtime/platform_spec.rb
322
+ - spec/runtime/require_spec.rb
323
+ - spec/runtime/setup_spec.rb
324
+ - spec/runtime/with_clean_env_spec.rb
325
+ - spec/spec_helper.rb
326
+ - spec/support/artifice/endopint_marshal_fail_basic_authentication.rb
327
+ - spec/support/artifice/endpoint.rb
328
+ - spec/support/artifice/endpoint_500.rb
329
+ - spec/support/artifice/endpoint_api_missing.rb
330
+ - spec/support/artifice/endpoint_basic_authentication.rb
331
+ - spec/support/artifice/endpoint_extra.rb
332
+ - spec/support/artifice/endpoint_extra_missing.rb
333
+ - spec/support/artifice/endpoint_fallback.rb
334
+ - spec/support/artifice/endpoint_marshal_fail.rb
335
+ - spec/support/artifice/endpoint_redirect.rb
336
+ - spec/support/builders.rb
337
+ - spec/support/fakeweb/rack-1.0.0.marshal
338
+ - spec/support/fakeweb/windows.rb
339
+ - spec/support/helpers.rb
340
+ - spec/support/indexes.rb
341
+ - spec/support/matchers.rb
342
+ - spec/support/path.rb
343
+ - spec/support/platforms.rb
344
+ - spec/support/ruby_ext.rb
345
+ - spec/support/rubygems_ext.rb
346
+ - spec/support/rubygems_hax/platform.rb
347
+ - spec/support/sudo.rb
348
+ - spec/update/gems_spec.rb
349
+ - spec/update/git_spec.rb
350
+ - spec/update/source_spec.rb