bundler 1.4.0.pre.1 → 1.4.0.pre.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of bundler might be problematic. Click here for more details.
- data/.travis.yml +18 -7
- data/CHANGELOG.md +15 -0
- data/CONTRIBUTING.md +8 -0
- data/DEVELOPMENT.md +27 -25
- data/ISSUES.md +33 -20
- data/README.md +6 -4
- data/Rakefile +1 -1
- data/UPGRADING.md +1 -1
- data/bin/bundle +1 -1
- data/bin/bundler +10 -0
- data/bundler.gemspec +2 -2
- data/lib/bundler/capistrano.rb +4 -0
- data/lib/bundler/cli.rb +7 -0
- data/lib/bundler/current_ruby.rb +9 -1
- data/lib/bundler/definition.rb +2 -0
- data/lib/bundler/dependency.rb +3 -1
- data/lib/bundler/dsl.rb +1 -1
- data/lib/bundler/fetcher.rb +1 -1
- data/lib/bundler/friendly_errors.rb +5 -0
- data/lib/bundler/gem_helpers.rb +7 -6
- data/lib/bundler/installer.rb +27 -20
- data/lib/bundler/parallel_workers/unix_worker.rb +2 -2
- data/lib/bundler/ruby_dsl.rb +1 -1
- data/lib/bundler/ruby_version.rb +12 -3
- data/lib/bundler/rubygems_ext.rb +1 -0
- data/lib/bundler/rubygems_integration.rb +1 -1
- data/lib/bundler/runtime.rb +2 -1
- data/lib/bundler/shared_helpers.rb +13 -0
- data/lib/bundler/source/git.rb +3 -3
- data/lib/bundler/source/git/git_proxy.rb +1 -1
- data/lib/bundler/source/path.rb +1 -2
- data/lib/bundler/source/rubygems.rb +3 -5
- data/lib/bundler/version.rb +1 -1
- data/man/bundle.ronn +1 -1
- data/man/gemfile.5.ronn +6 -2
- data/spec/bundler/dsl_spec.rb +2 -2
- data/spec/bundler/friendly_errors_spec.rb +13 -0
- data/spec/{other → commands}/binstubs_spec.rb +0 -0
- data/spec/{other → commands}/check_spec.rb +0 -0
- data/spec/{other → commands}/clean_spec.rb +0 -0
- data/spec/{other → commands}/config_spec.rb +0 -0
- data/spec/{other → commands}/console_spec.rb +0 -0
- data/spec/{other → commands}/exec_spec.rb +0 -0
- data/spec/{other → commands}/help_spec.rb +0 -0
- data/spec/{other → commands}/init_spec.rb +0 -0
- data/spec/{other → commands}/licenses_spec.rb +0 -0
- data/spec/{other → commands}/newgem_spec.rb +0 -0
- data/spec/{other → commands}/open_spec.rb +0 -0
- data/spec/{other → commands}/outdated_spec.rb +0 -0
- data/spec/{other → commands}/show_spec.rb +0 -0
- data/spec/install/gems/dependency_api_spec.rb +14 -0
- data/spec/install/git_spec.rb +42 -0
- data/spec/other/bundle_ruby_spec.rb +105 -75
- data/spec/other/cli_dispatch_spec.rb +21 -0
- data/spec/other/ext_spec.rb +23 -0
- data/spec/other/platform_spec.rb +204 -4
- data/spec/resolver/platform_spec.rb +7 -1
- data/spec/runtime/setup_spec.rb +1 -1
- data/spec/support/builders.rb +5 -1
- data/spec/support/indexes.rb +1 -1
- data/spec/support/platforms.rb +9 -1
- metadata +116 -84
- checksums.yaml +0 -7
data/.travis.yml
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
language: ruby
|
2
2
|
script: rake spec:travis
|
3
|
-
before_script: rake spec:travis:deps
|
3
|
+
before_script: travis_retry rake spec:travis:deps
|
4
4
|
branches:
|
5
5
|
only:
|
6
6
|
- master
|
@@ -30,21 +30,32 @@ rvm:
|
|
30
30
|
# Rubygems versions MUST be available as rake tasks
|
31
31
|
# see Rakefile:66 for the list of possible RGV values
|
32
32
|
env:
|
33
|
-
#
|
33
|
+
# We need to know if changes to rubygems will break bundler on release
|
34
34
|
- RGV=master
|
35
|
-
#
|
36
|
-
- RGV=v2.0.
|
35
|
+
# Test the latest rubygems release with all of our supported rubies
|
36
|
+
- RGV=v2.0.6
|
37
|
+
# Test the latest stable branch so we know the next minor will work
|
38
|
+
- RGV=2.0
|
37
39
|
matrix:
|
38
40
|
allow_failures:
|
39
|
-
#
|
41
|
+
# We want to know how we're doing with head, but not fail the build
|
40
42
|
- rvm: ruby-head
|
41
43
|
- env: RGV=master
|
44
|
+
- env: RGV=2.0
|
42
45
|
# 1.9.2 is simply too slow. it sometimes exceeds the 25m hard limit.
|
43
46
|
- rvm: 1.9.2
|
47
|
+
# Alternate implementations are good data points but not maintained
|
48
|
+
- rvm: jruby
|
49
|
+
- rvm: rbx
|
44
50
|
include:
|
45
|
-
#
|
51
|
+
# Riding the edge
|
46
52
|
- rvm: ruby-head
|
47
53
|
env: RGV=master
|
54
|
+
# Alternate implementations
|
55
|
+
- rvm: jruby
|
56
|
+
env: RGV=v2.0.6
|
57
|
+
- rvm: rbx
|
58
|
+
env: RGV=v2.0.6
|
48
59
|
# Rubygems goes down to 1.5.3 on Ruby 1.9.3
|
49
60
|
- rvm: 1.9.3
|
50
61
|
env: RGV=v1.8.25
|
@@ -56,7 +67,7 @@ matrix:
|
|
56
67
|
env: RGV=v1.5.3
|
57
68
|
# We only want an overview of how 1.9.2 is doing
|
58
69
|
- rvm: 1.9.2
|
59
|
-
env: RGV=
|
70
|
+
env: RGV=v2.0.6
|
60
71
|
# Rubygems goes down to 1.3.6 on Ruby 1.8.7
|
61
72
|
- rvm: 1.8.7
|
62
73
|
env: RGV=v1.8.25
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,18 @@
|
|
1
|
+
## 1.4.0.pre.2
|
2
|
+
|
3
|
+
Features:
|
4
|
+
|
5
|
+
- add support for the x64-mingw32 platform (#2356, #2590, @larskanis)
|
6
|
+
- add :patchlevel option to ruby DSL
|
7
|
+
- add `bundler` bin (#2598, @kirs)
|
8
|
+
- friendly ambiguous error messages (#2581, #2550, @jlsuttles, @jendiamond, @joyicecloud)
|
9
|
+
|
10
|
+
Bugfixes:
|
11
|
+
|
12
|
+
- allow passwordless Basic Auth (#2606, @rykov)
|
13
|
+
- don't suggest `gem install foo` when `foo` is a git gem that fails (@kirs)
|
14
|
+
- revert #2569, going back to git instead of https for :github gems
|
15
|
+
|
1
16
|
## 1.4.0.pre.1 (2013-08-04)
|
2
17
|
|
3
18
|
Features:
|
data/CONTRIBUTING.md
CHANGED
@@ -2,6 +2,14 @@
|
|
2
2
|
|
3
3
|
If you're having a problem, please see [ISSUES](https://github.com/bundler/bundler/blob/master/ISSUES.md) for troubleshooting steps and a guide for how to submit a ticket that will help us solve the problem you are having as quickly as possible.
|
4
4
|
|
5
|
+
# Requesting Features
|
6
|
+
|
7
|
+
Head on over to the [Bundler
|
8
|
+
features](https://github.com/bundler/bundler-features) project, or any of the
|
9
|
+
lists or channels listed below. Feature-wise we consider Bundler stable, so the
|
10
|
+
core team does not tend to work on feature suggestions. Pull requests welcome
|
11
|
+
though!
|
12
|
+
|
5
13
|
# Discussing Bundler
|
6
14
|
|
7
15
|
If you'd like to discuss features, ask questions, or just engage in general Bundler-focused discussion, please see the [#bundler](irc://irc.freenode.net/#bundler) IRC channel on Freenode, and the [Bundler mailing list](http://groups.google.com/group/ruby-bundler) on Google Groups.
|
data/DEVELOPMENT.md
CHANGED
@@ -2,11 +2,19 @@ Great to have you here! Here are a few ways you can help out with [Bundler](http
|
|
2
2
|
|
3
3
|
# Where should I start?
|
4
4
|
|
5
|
-
You can start learning about Bundler by reading [the documentation](http://
|
5
|
+
You can start learning about Bundler by reading [the documentation](http://bundler.io). If you want, you can also read a (lengthy) explanation of [why Bundler exists and what it does](http://bundler.io/v1.2/rationale.html). You can also check out discussions about Bundler on the [Bundler mailing list](https://groups.google.com/group/ruby-bundler) and in the [Bundler IRC channel](irc://irc.freenode.net/#bundler), which is #bundler on Freenode.
|
6
6
|
|
7
|
-
##
|
7
|
+
## Your first commits
|
8
|
+
|
9
|
+
If you’re interested in contributing to Bundler, that’s awesome! We’d love your help.
|
10
|
+
|
11
|
+
If you have any questions after reading this page, please feel free to contact either [@indirect](http://github.com/indirect) or [@hone](http://github.com/hone). They are both happy to provide help working through your first bugfix or thinking through the problem you’re trying to resolve.
|
12
|
+
|
13
|
+
## Tackle some small problems
|
14
|
+
|
15
|
+
We track [small
|
16
|
+
bugs](https://github.com/bundler/bundler/issues?labels=small&state=open) and [small features](https://github.com/bundler/bundler-features/issues?labels=small&state=open) so that anyone who wants to help can start with something that's not too overwhelming. If nothing on those lists looks good, though, just talk to us.
|
8
17
|
|
9
|
-
The Bundler core team consists of André Arko ([@indirect](http://github.com/indirect)), Terence Lee ([@hone](http://github.com/hone)), and Jessica Lynn Suttles ([@jlsuttles](http://github.com/jlsuttles)), with support and advice from original Bundler author Yehuda Katz ([@wycats](http://github.com/wycats)).
|
10
18
|
|
11
19
|
# Development setup
|
12
20
|
|
@@ -27,18 +35,6 @@ Bundler doesn't use a Gemfile to list development dependencies, because when we
|
|
27
35
|
With that set up, you can test changes you've made to Bundler by running `dbundle`, without interfering with the regular `bundle` command.
|
28
36
|
|
29
37
|
|
30
|
-
# Adding new features
|
31
|
-
|
32
|
-
If you would like to add a new feature to Bundler, please follow these steps:
|
33
|
-
|
34
|
-
1. [Create an issue](https://github.com/bundler/bundler/issues/new) to discuss your feature.
|
35
|
-
2. Base your commits on the master branch, since we follow [SemVer](http://semver.org) and don't add new features to old releases.
|
36
|
-
3. Commit the code and at least one test covering your changes to a feature branch in your fork.
|
37
|
-
4. Put a line in the [CHANGELOG](https://github.com/bundler/bundler/blob/master/CHANGELOG.md) summarizing your changes under the next release under the "Features" heading.
|
38
|
-
5. Send us a [pull request](https://help.github.com/articles/using-pull-requests) from your feature branch.
|
39
|
-
|
40
|
-
If you don't hear back immediately, don’t get discouraged! We all have day jobs, but we respond to most tickets within a day or two.
|
41
|
-
|
42
38
|
# Bug triage
|
43
39
|
|
44
40
|
Triage is the work of processing tickets that have been opened into actionable issues, feature requests, or bug reports. That includes verifying bugs, categorizing the ticket, and ensuring there's enough information to reproduce the bug for anyone who wants to try to fix it.
|
@@ -70,6 +66,19 @@ If you can reproduce an issue, you're well on your way to fixing it. :) Fixing i
|
|
70
66
|
Finally, the ticket may be a duplicate of another older ticket. If you notice a ticket is a duplicate, simply comment on the ticket noting the original ticket’s number. For example, you could say “This is a duplicate of issue #42, and can be closed”.
|
71
67
|
|
72
68
|
|
69
|
+
# Adding new features
|
70
|
+
|
71
|
+
If you would like to add a new feature to Bundler, please follow these steps:
|
72
|
+
|
73
|
+
1. [Create an issue](https://github.com/bundler/bundler-features/issues/new) to discuss your feature.
|
74
|
+
2. Base your commits on the master branch, since we follow [SemVer](http://semver.org) and don't add new features to old releases.
|
75
|
+
3. Commit the code and at least one test covering your changes to a feature branch in your fork.
|
76
|
+
4. Put a line in the [CHANGELOG](https://github.com/bundler/bundler/blob/master/CHANGELOG.md) summarizing your changes under the next release under the "Features" heading.
|
77
|
+
5. Send us a [pull request](https://help.github.com/articles/using-pull-requests) from your feature branch.
|
78
|
+
|
79
|
+
If you don't hear back immediately, don’t get discouraged! We all have day jobs, but we respond to most tickets within a day or two.
|
80
|
+
|
81
|
+
|
73
82
|
# Beta testing
|
74
83
|
|
75
84
|
Early releases require heavy testing, especially across various system setups. We :heart: testers, and are big fans of anyone who can run `gem install bundler --pre` and try out upcoming releases in their development and staging environments.
|
@@ -86,11 +95,11 @@ We don't currently have any translations, but please reach out to us if you woul
|
|
86
95
|
|
87
96
|
Code needs explanation, and sometimes those who know the code well have trouble explaining it to someone just getting into it. Because of that, we welcome documentation suggestions and patches from everyone, especially if they are brand new to using Bundler.
|
88
97
|
|
89
|
-
Bundler has two main sources of documentation: the built-in help (including usage information and man pages) and the [Bundler documentation site](http://
|
98
|
+
Bundler has two main sources of documentation: the built-in help (including usage information and man pages) and the [Bundler documentation site](http://bundler.io).
|
90
99
|
|
91
100
|
If you’d like to submit a patch to the man pages, follow the steps for adding a feature above. All of the man pages are located in the `man` directory. Just use the “Documentation” heading when you describe what you did in the changelog.
|
92
101
|
|
93
|
-
If you have a suggestion or proposed change for [
|
102
|
+
If you have a suggestion or proposed change for [bundler.io](http://bundler.io), please open an issue or send a pull request to the [bundler-site](https://github.com/bundler/bundler-site) repository.
|
94
103
|
|
95
104
|
|
96
105
|
# Community
|
@@ -99,17 +108,10 @@ Community is an important part of all we do. If you’d like to be part of the B
|
|
99
108
|
|
100
109
|
It would be tremendously helpful to have more people answering questions about Bundler (and often simply about Rubygems or Ruby itself) in our [issue tracker](https://github.com/bundler/bundler/issues) or on [Stack Overflow](http://stackoverflow.com/questions/tagged/bundler).
|
101
110
|
|
102
|
-
Additional documentation and explanation is always helpful, too. If you have any suggestions for the Bundler website [
|
111
|
+
Additional documentation and explanation is always helpful, too. If you have any suggestions for the Bundler website [bundler.io](http://bundler.io), we would absolutely love it if you opened an issue or pull request on the [bundler-site](https://github.com/bundler/bundler-site) repository.
|
103
112
|
|
104
113
|
Finally, sharing your experiences and discoveries by writing them up is a valuable way to help others who have similar problems or experiences in the future. You can write a blog post, create an example and commit it to Github, take screenshots, or make videos.
|
105
114
|
|
106
115
|
Examples of how Bundler is used help everyone, and we’ve discovered that people already use it in ways that we never imagined when we were writing it. If you’re still not sure what to write about, there are also several projects doing interesting things based on Bundler. They could probably use publicity too.
|
107
116
|
|
108
117
|
If you let someone on the core team know you wrote about Bundler, we will add your post to the list of Bundler resources on the Github project wiki.
|
109
|
-
|
110
|
-
|
111
|
-
# Your first commits
|
112
|
-
|
113
|
-
If you’re interested in contributing to Bundler, that’s awesome! We’d love your help.
|
114
|
-
|
115
|
-
If you have any questions after reading this page, please feel free to contact either [@indirect](http://github.com/indirect) or [@hone](http://github.com/hone). They are both happy to provide help working through your first bugfix or thinking through the problem you’re trying to resolve.
|
data/ISSUES.md
CHANGED
@@ -2,11 +2,15 @@
|
|
2
2
|
|
3
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
4
|
|
5
|
+
**Please use the [Bundler
|
6
|
+
Features](https://github.com/bundler/bundler-features) repo to suggest and
|
7
|
+
discuss features. The bundler issue tracker is only for bugs.**
|
8
|
+
|
5
9
|
## Documentation
|
6
10
|
|
7
|
-
Instructions for common Bundler uses can be found on the [Bundler documentation site](http://
|
11
|
+
Instructions for common Bundler uses can be found on the [Bundler documentation site](http://bundler.io/).
|
8
12
|
|
9
|
-
Detailed information about each Bundler command, including help with common problems, can be found in the [Bundler man pages](http://
|
13
|
+
Detailed information about each Bundler command, including help with common problems, can be found in the [Bundler man pages](http://bundler.io/v1.3/man/bundle.1.html).
|
10
14
|
|
11
15
|
## Troubleshooting
|
12
16
|
|
@@ -16,10 +20,10 @@ Please open a ticket with Heroku if you're having trouble deploying. They have a
|
|
16
20
|
|
17
21
|
### Other problems
|
18
22
|
|
19
|
-
First, figure out exactly what it is that you're trying to do. Then, go to the [Bundler documentation website](http://
|
23
|
+
First, figure out exactly what it is that you're trying to do. Then, go to the [Bundler documentation website](http://bundler.io) and see if we have instructions on how to do that.
|
20
24
|
|
21
25
|
Second, check [the compatibility
|
22
|
-
list](http://
|
26
|
+
list](http://bundler.io/compatibility.html), and make sure that the version of Bundler that you are
|
23
27
|
using works with the versions of Ruby and Rubygems that you are using.
|
24
28
|
|
25
29
|
If the instructions don't work, or you can't find any instructions, you can try these troubleshooting steps:
|
@@ -48,26 +52,35 @@ If the instructions don't work, or you can't find any instructions, you can try
|
|
48
52
|
|
49
53
|
## Reporting unresolved problems
|
50
54
|
|
51
|
-
Hopefully the troubleshooting steps above resolved your problem. If things still aren't working the way you expect them to, please let us know so that we can diagnose and hopefully fix the problem you're having.
|
55
|
+
Hopefully the troubleshooting steps above resolved your problem. If things still aren't working the way you expect them to, please let us know so that we can diagnose and hopefully fix the problem you're having.
|
56
|
+
|
57
|
+
**The best way to report a bug is by providing a reproduction script.** See these examples:
|
58
|
+
|
59
|
+
* [Git environment variables causing install to fail.](https://gist.github.com/xaviershay/6207550)
|
60
|
+
* [Multiple gems in a repository cannot be updated independently.](https://gist.github.com/xaviershay/6295889)
|
61
|
+
|
62
|
+
A half working script with comments for the parts you were unable to automate is still appreciated.
|
63
|
+
|
64
|
+
If you are unable to do that, please include the following information in your report:
|
52
65
|
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
66
|
+
- What you're trying to accomplish
|
67
|
+
- The command you ran
|
68
|
+
- What you expected to happen
|
69
|
+
- What actually happened
|
70
|
+
- The exception backtrace(s), if any
|
71
|
+
- Everything output by running `bundle env`
|
59
72
|
|
60
73
|
If your version of Bundler does not have the `bundle env` command, then please include:
|
61
74
|
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
75
|
+
- Your Gemfile
|
76
|
+
- Your Gemfile.lock
|
77
|
+
- Your Bundler configuration settings (run `bundle config`)
|
78
|
+
- What version of bundler you are using (run `bundle -v`)
|
79
|
+
- What version of Ruby you are using (run `ruby -v`)
|
80
|
+
- What version of Rubygems you are using (run `gem -v`)
|
81
|
+
- Whether you are using RVM, and if so what version (run `rvm -v`)
|
82
|
+
- Whether you have the `rubygems-bundler` gem, which can break gem executables (run `gem list rubygems-bundler`)
|
83
|
+
- Whether you have the `open_gem` gem, which can cause rake activation conflicts (run `gem list open_gem`)
|
71
84
|
|
72
85
|
If you are using Rails 2.3, please also include:
|
73
86
|
|
data/README.md
CHANGED
@@ -16,7 +16,7 @@ bundle install
|
|
16
16
|
bundle exec rails new myapp
|
17
17
|
```
|
18
18
|
|
19
|
-
See [
|
19
|
+
See [bundler.io](http://bundler.io) for the full documentation.
|
20
20
|
|
21
21
|
### Troubleshooting
|
22
22
|
|
@@ -26,12 +26,14 @@ For help with common problems, see [ISSUES](https://github.com/bundler/bundler/b
|
|
26
26
|
|
27
27
|
If you'd like to contribute to Bundler, that's awesome, and we <3 you. There's a guide to contributing to Bundler (both code and general help) over in [DEVELOPMENT](https://github.com/bundler/bundler/blob/master/DEVELOPMENT.md)
|
28
28
|
|
29
|
-
|
29
|
+
The `master` branch contains our current progress towards version 1.4. Versions 1.0-1.3 each have their own stable branches. Please submit bugfixes as pull requests to the stable branch for the version you would like to fix.
|
30
30
|
|
31
|
-
|
31
|
+
### Core Team
|
32
32
|
|
33
|
-
The
|
33
|
+
The Bundler core team consists of André Arko ([@indirect](http://github.com/indirect)), Terence Lee ([@hone](http://github.com/hone)), and Jessica Lynn Suttles ([@jlsuttles](http://github.com/jlsuttles)), with support and advice from original Bundler author Yehuda Katz ([@wycats](http://github.com/wycats)).
|
34
34
|
|
35
35
|
### Other questions
|
36
36
|
|
37
|
+
To see what has changed in recent versions of Bundler, see the [CHANGELOG](https://github.com/bundler/bundler/blob/master/CHANGELOG.md).
|
38
|
+
|
37
39
|
Feel free to chat with the Bundler core team (and many other users) on IRC in the [#bundler](irc://irc.freenode.net/bundler) channel on Freenode, or via email on the [Bundler mailing list](http://groups.google.com/group/ruby-bundler).
|
data/Rakefile
CHANGED
@@ -89,7 +89,7 @@ begin
|
|
89
89
|
namespace :rubygems do
|
90
90
|
rubyopt = ENV["RUBYOPT"]
|
91
91
|
# When editing this list, also edit .travis.yml!
|
92
|
-
%w(master v1.3.6 v1.3.7 v1.4.2 v1.5.3 v1.6.2 v1.7.2 v1.8.25 v2.0.
|
92
|
+
%w(master 2.0 v1.3.6 v1.3.7 v1.4.2 v1.5.3 v1.6.2 v1.7.2 v1.8.25 v2.0.6).each do |rg|
|
93
93
|
desc "Run specs with Rubygems #{rg}"
|
94
94
|
RSpec::Core::RakeTask.new(rg) do |t|
|
95
95
|
t.rspec_opts = %w(-fs --color)
|
data/UPGRADING.md
CHANGED
@@ -33,7 +33,7 @@ your deploy.rb file to run Bundler automatically as part of deploying:
|
|
33
33
|
require 'bundler/capistrano'
|
34
34
|
|
35
35
|
For more details on deploying using bundler, see the documentation
|
36
|
-
for the bundler cap task, and the [documentation on deploying](http://
|
36
|
+
for the bundler cap task, and the [documentation on deploying](http://bundler.io/deploying.html).
|
37
37
|
|
38
38
|
|
39
39
|
## Bundler 0.8 to 0.9 and above
|
data/bin/bundle
CHANGED
@@ -5,7 +5,7 @@ Signal.trap("INT") { exit 1 }
|
|
5
5
|
|
6
6
|
require 'bundler'
|
7
7
|
# Check if an older version of bundler is installed
|
8
|
-
|
8
|
+
$LOAD_PATH.each do |path|
|
9
9
|
if path =~ %r'/bundler-0.(\d+)' && $1.to_i < 9
|
10
10
|
err = "Looks like you have a version of bundler that's older than 0.9.\n"
|
11
11
|
err << "Please remove your old versions.\n"
|
data/bin/bundler
ADDED
@@ -0,0 +1,10 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'bundler'
|
4
|
+
require 'bundler/cli'
|
5
|
+
|
6
|
+
ui = Bundler::UI::Shell.new
|
7
|
+
ui.error "It's recommended to use Bundler through 'bundle' binary instead of 'bundler'"
|
8
|
+
|
9
|
+
bin = "#{File.dirname(__FILE__)}/bundle #{ARGV.join(" ")}"
|
10
|
+
exec bin
|
data/bundler.gemspec
CHANGED
@@ -9,7 +9,7 @@ Gem::Specification.new do |spec|
|
|
9
9
|
spec.licenses = ['MIT']
|
10
10
|
spec.authors = ["André Arko", "Terence Lee", "Carl Lerche", "Yehuda Katz"]
|
11
11
|
spec.email = ["andre@arko.net"]
|
12
|
-
spec.homepage = "http://
|
12
|
+
spec.homepage = "http://bundler.io"
|
13
13
|
spec.summary = %q{The best way to manage your application's dependencies}
|
14
14
|
spec.description = %q{Bundler manages an application's dependencies through its entire life, across many machines, systematically and repeatably}
|
15
15
|
|
@@ -23,6 +23,6 @@ Gem::Specification.new do |spec|
|
|
23
23
|
spec.files += Dir.glob('lib/bundler/man/**/*') # man/ is ignored by git
|
24
24
|
spec.test_files = spec.files.grep(%r{^spec/})
|
25
25
|
|
26
|
-
spec.executables = %w(bundle)
|
26
|
+
spec.executables = %w(bundle bundler)
|
27
27
|
spec.require_paths = ["lib"]
|
28
28
|
end
|
data/lib/bundler/capistrano.rb
CHANGED
@@ -4,6 +4,10 @@
|
|
4
4
|
# Bundler will be activated after each new deployment.
|
5
5
|
require 'bundler/deployment'
|
6
6
|
|
7
|
+
if Gem::Version.new(Capistrano::Version).release >= Gem::Version.new("3.0")
|
8
|
+
raise "For Capistrano 3.x integration, please use http://github.com/capistrano/bundler"
|
9
|
+
end
|
10
|
+
|
7
11
|
Capistrano::Configuration.instance(:must_exist).load do
|
8
12
|
before "deploy:finalize_update", "bundle:install"
|
9
13
|
Bundler::Deployment.define_task(self, :task, :except => { :no_release => true })
|
data/lib/bundler/cli.rb
CHANGED
data/lib/bundler/current_ruby.rb
CHANGED
@@ -69,7 +69,7 @@ module Bundler
|
|
69
69
|
end
|
70
70
|
|
71
71
|
def mingw?
|
72
|
-
Bundler::WINDOWS && Gem::Platform.local.os == "mingw32"
|
72
|
+
Bundler::WINDOWS && Gem::Platform.local.os == "mingw32" && Gem::Platform.local.cpu != 'x64'
|
73
73
|
end
|
74
74
|
|
75
75
|
def mingw_18?
|
@@ -84,5 +84,13 @@ module Bundler
|
|
84
84
|
mingw? && on_20?
|
85
85
|
end
|
86
86
|
|
87
|
+
def x64_mingw?
|
88
|
+
Bundler::WINDOWS && Gem::Platform.local.os == "mingw32" && Gem::Platform.local.cpu == 'x64'
|
89
|
+
end
|
90
|
+
|
91
|
+
def x64_mingw_20?
|
92
|
+
x64_mingw? && on_20?
|
93
|
+
end
|
94
|
+
|
87
95
|
end
|
88
96
|
end
|
data/lib/bundler/definition.rb
CHANGED
@@ -380,6 +380,8 @@ module Bundler
|
|
380
380
|
"Your Ruby version is #{actual}, but your Gemfile specified #{expected}"
|
381
381
|
when :engine_version
|
382
382
|
"Your #{system_ruby_version.engine} version is #{actual}, but your Gemfile specified #{ruby_version.engine} #{expected}"
|
383
|
+
when :patchlevel
|
384
|
+
"Your Ruby patchlevel is #{actual}, but your Gemfile specified #{expected}"
|
383
385
|
end
|
384
386
|
|
385
387
|
raise RubyVersionMismatch, msg
|
data/lib/bundler/dependency.rb
CHANGED
@@ -23,7 +23,9 @@ module Bundler
|
|
23
23
|
:mingw => Gem::Platform::MINGW,
|
24
24
|
:mingw_18 => Gem::Platform::MINGW,
|
25
25
|
:mingw_19 => Gem::Platform::MINGW,
|
26
|
-
:mingw_20 => Gem::Platform::MINGW
|
26
|
+
:mingw_20 => Gem::Platform::MINGW,
|
27
|
+
:x64_mingw => Gem::Platform::X64_MINGW,
|
28
|
+
:x64_mingw_20 => Gem::Platform::X64_MINGW
|
27
29
|
}.freeze
|
28
30
|
|
29
31
|
def initialize(name, version, options = {}, &blk)
|
data/lib/bundler/dsl.rb
CHANGED
@@ -230,7 +230,7 @@ module Bundler
|
|
230
230
|
|
231
231
|
if github = opts.delete("github")
|
232
232
|
github = "#{github}/#{github}" unless github.include?("/")
|
233
|
-
opts["git"] = "
|
233
|
+
opts["git"] = "git://github.com/#{github}.git"
|
234
234
|
end
|
235
235
|
|
236
236
|
if gist = opts.delete("gist")
|
data/lib/bundler/fetcher.rb
CHANGED
@@ -217,7 +217,7 @@ module Bundler
|
|
217
217
|
begin
|
218
218
|
Bundler.ui.debug "Fetching from: #{uri}"
|
219
219
|
req = Net::HTTP::Get.new uri.request_uri
|
220
|
-
req.basic_auth(uri.user, uri.password) if uri.user
|
220
|
+
req.basic_auth(uri.user, uri.password) if uri.user
|
221
221
|
if defined?(Net::HTTP::Persistent)
|
222
222
|
response = @connection.request(uri, req)
|
223
223
|
else
|
@@ -1,3 +1,5 @@
|
|
1
|
+
require "bundler/vendored_thor"
|
2
|
+
|
1
3
|
module Bundler
|
2
4
|
def self.with_friendly_errors
|
3
5
|
yield
|
@@ -5,6 +7,9 @@ module Bundler
|
|
5
7
|
Bundler.ui.error e.message, :wrap => true
|
6
8
|
Bundler.ui.trace e
|
7
9
|
exit e.status_code
|
10
|
+
rescue Thor::AmbiguousTaskError => e
|
11
|
+
Bundler.ui.error e.message
|
12
|
+
exit 15
|
8
13
|
rescue Thor::UndefinedTaskError => e
|
9
14
|
Bundler.ui.error e.message
|
10
15
|
exit 15
|