| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
change checksum warning to debug print
This was super helpful when the server was continuously returning bad
checksums, but it’s a scary warning to see anytime we update the
versions file. And we’re going to need to update the versions file at
least twice a year, so it seems like a good idea to head off users
worrying about a message that is actually things working as intended.
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
This was super helpful when the server was continuously returning bad
checksums, but it’s a scary warning to see anytime we update the
versions file. And we’re going to need to update the versions file at
least twice a year, so it seems like a good idea to head off users
worrying about a message that is actually things working as intended.
|
| | |
|
| | |
|
|/ |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Better gem outdated list
Hi,
the current version of bundler is listing all gems with the group, I improve these list grouping the gems by group and not repeat the group every line.
Current:
```
Outdated gems included in the bundle:
* aasm (newest 4.11.0, installed 3.4.0, requested = 3.4.0) in group "default"
* activerecord-import (newest 0.15.0, installed 0.13.0) in group "default"
* annotate (newest 2.7.1, installed 2.7.0) in group "development"
* authority (newest 3.2.0, installed 3.0.0, requested ~> 3.0.0) in group "default"
* awesome_print (newest 1.7.0, installed 1.2.0, requested ~> 1.2.0) in groups "development, test"
* aws-sdk (newest 2.5.1, installed 1.60.2, requested ~> 1.60.2) in group "default"
* bootstrap-sass (newest 3.3.7, installed 3.3.5.1, requested ~> 3.3.5.1) in group "default"
* capybara (newest 2.7.1, installed 2.5.0, requested ~> 2.4) in group "test"
* capybara-email (newest 2.5.0, installed 2.4.0) in group "test"
* codeclimate-test-reporter (newest 0.6.0, installed 0.4.7) in group "test"
* coffee-rails (newest 4.2.1, installed 4.0.1, requested ~> 4.0.0) in group "default"
* countries (newest 1.2.5, installed 0.9.3, requested ~> 0.9.3) in group "default"
* country_select (newest 2.5.2, installed 2.1.1) in group "default"
* dalli (newest 2.7.6, installed 2.7.4) in group "default"
```
Better group:
```
$ bundle outdated
===== Group default =====
* addressable (newest 2.4.0, installed 2.3.8)
* puma (newest 3.6.0, installed 2.10.2, requested ~> 2.10.2)
* rails-assets-Sortable (newest 1.4.2, installed 0.7.1, requested ~> 0.7.1)
* rails-assets-jquery-file-upload (newest 9.12.5, installed 9.7.0, requested = 9.7.0)
* rails-assets-jquery-ui (newest 1.12.0, installed 1.11.0, requested = 1.11.0)
* rails-assets-superagent (newest 2.1.0, installed 0.21.0, requested ~> 0.21.0)
* rollbar (newest 2.12.0, installed 2.7.1, requested ~> 2.0)
* sidekiq-pro (newest 3.3.2, installed 3.3.1)
===== Group development =====
* brakeman (newest 3.3.3, installed 3.1.0)
===== Group development, test =====
* pry (newest 0.10.4, installed 0.10.3)
* pry-doc (newest 0.9.0, installed 0.8.0)
* rspec (newest 3.5.0, installed 3.3.0, requested ~> 3.0)
* rspec-support (newest 3.5.0, installed 3.3.0)
* rubocop-rspec (newest 1.4.0, installed 1.3.1)
===== Without group =====
* babel-source (newest 5.8.35, installed 5.8.34)
* execjs (newest 2.7.0, installed 2.6.0)
* hashie (newest 3.4.4, installed 3.3.1)
* ice_nine (newest 0.11.2, installed 0.11.1)
* mini_portile2 (newest 2.1.0, installed 2.0.0)
* minitest (newest 5.9.0, installed 5.8.4)
* multi_json (newest 1.12.1, installed 1.11.2)
* multipart-post (newest 2.0.0, installed 1.2.0)
* rails-assets-blueimp-canvas-to-blob (newest 3.3.0, installed 2.1.1)
* rails-assets-blueimp-load-image (newest 2.6.1, installed 1.13.0)
* rails-assets-blueimp-tmpl (newest 3.4.0, installed 2.5.4)
* rails-assets-jquery (newest 3.1.0, installed 2.1.4)
* rake (newest 11.2.2, installed 10.5.0)
* rdoc (newest 4.2.2, installed 4.2.0)
```
Regards
|
|/
|
|
|
|
|
|
|
|
|
|
| |
Restore default outdated.
Added command in cli:
- bundle outdated --groups
Added --group option.
Groups with alphabetical order.
Added test. Reverted.
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
use /tmp for mktmpdir
As we noticed in #4519, we need to use a temporary directory to hold
compact index downloads so that multiple processes don't write to the
same files at the same time and break everything.
The fix for that was #4561, which added temporary directories to hold
all files as they download, and then uses the (atomic) `FileUtils.cp` to
move the completed downloads into place, so there is never a point where
multiple processes are trying to write into the file at once.
Unfortunately, using `Dir.mktmpdir` requires that the parent directory
be _either_ world writable or sticky, but not both. Based on #4599, it
looks like it's common for home directories to be both world writable
and sticky. While that's a security problem by itself, it's not a big
concern for Bundler and the compact index. So we want to let users
continue to use Bundler, even with the compact index, without having to
change the permissions on their home directories.
This commit changes the `mktmpdir` call to create the temporary
directory inside the default OS tempdir, which is typically `/tmp` or
`/var/tmp` depending on distro. Since that directory is designed to hold
other temporary directories, that change should (theoretically) reduce
or eliminate the problem reported in #4599.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
As we noticed in #4519, we need to use a temporary directory to hold
compact index downloads so that multiple processes don't write to the
same files at the same time and break everything.
The fix for that was #4561, which added temporary directories to hold
all files as they download, and then uses the (atomic) `FileUtils.cp` to
move the completed downloads into place, so there is never a point where
multiple processes are trying to write into the file at once.
Unfortunately, using `Dir.mktmpdir` requires that the parent directory
be _either_ world writable or sticky, but not both. Based on #4599, it
looks like it's common for home directories to be both world writable
and sticky. While that's a security problem by itself, it's not a big
concern for Bundler and the compact index. So we want to let users
continue to use Bundler, even with the compact index, without having to
change the permissions on their home directories.
This commit changes the `mktmpdir` call to create the temporary
directory inside the default OS tempdir, which is typically `/tmp` or
`/var/tmp` depending on distro. Since that directory is designed to hold
other temporary directories, that change should (theoretically) reduce
or eliminate the problem reported in #4599.
|
|\ \
| |/
|/|
| |
| |
| |
| |
| |
| |
| |
| | |
Add conservative update options to bundle lock
Fix #4912.
The bundle lock command produces a lockfile same as bundle update but
won't install all the gems. If the `--update` option is fed to `bundle
lock` you can also specify the `--patch`, `--minor`, `--major` and
`--strict` options added to `bundle update` in 1.13.
|
|/
|
|
|
|
|
|
|
| |
Fix #4912.
The bundle lock command produces a lockfile same as bundle update but
won't install all the gems. If the `--update` option is fed to `bundle
lock` you can also specify the `--patch`, `--minor`, `--major` and
`--strict` options added to `bundle update` in 1.13.
|
|\
| |
| |
| |
| |
| | |
Remove build that always fails
In retrospect, once this build started always failing, we should have just removed it rather than moved it to allowed failures. I guess I was hoping it would get better. :/
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add a setting for forcing only the ruby platform
See https://github.com/bundler/bundler/pull/4895.
Closes https://github.com/bundler/bundler/issues/4813.
|
| | | |
|
| | | |
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
aycabta:use-require-instead-of-autoload-for-plugin-api, r=indirect
[workaround] Use `require` instead of `autoload` for bundler/plugin/api
Please read https://github.com/bundler/bundler/pull/4981#issuecomment-248674155.
> But it's elusive reproduction (and lack of test case) makes me think that the problem is a bit deeper and may recur.
I think so. This Pull Request is just *workaround*.
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
[Installer] Load gem plugins when installing
Closes #2824 I think
|
| | | | | |
|
|\ \ \ \ \
| |_|_|_|/
|/| | | |
| | | | |
| | | | |
| | | | | |
Fail fast in the specs when running from a path with special characters
\c @indirect
|
| | | | | |
|
|\ \ \ \ \
| |/ / / /
|/| | | |
| | | | |
| | | | |
| | | | | |
Change changelog on #4974
It's more accurate to say what was fixed that was broken. The prior text, "invoking bundler with binstubs generated by RubyGems 2.6.2+" was required to keep what was fixed in 1.13 still fixed.
|
|/ / / /
| | | |
| | | | |
It's more accurate to say what was fixed that was broken. The prior text, "invoking bundler with binstubs generated by RubyGems 2.6.2+" was required to keep what was fixed in 1.13 still fixed.
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Version 1.13.2
# Conflicts:
# lib/bundler/lazy_specification.rb
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Dynamically fetch expected rails version
This way, we don't have to update this expectation every time a new rails version comes out
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
JuanitoFatas:fix/4914-gemfile-engine-symbol-and-string, r=segiddins
Support specify engine by symbol in Gemfile
This fixes #4914.
Our test suite did not run with jruby but I have manually verified this patch works. Details can be seen below.
<details>
<summary>View manual verification details</summary>
The spec I added in this PR works with jruby:
```
$ chruby jruby-9.1.2.0
$ ruby -v
jruby 9.1.2.0 (2.3.0) 2016-05-26 7357c8f Java HotSpot(TM) 64-Bit Server VM 25.25-b02 on 1.8.0_25-b17 +jit [darwin-x86_64]
$ rspec spec/install/gemfile_spec.rb
Run options: exclude {:rubygems_master=>true, :git=>"=< 2.8.1", :rubygems=>"=< 2.6.4", :ruby=>"=< 2.3.0", :realworld=>true, :sudo=>true}
bundle install
with duplicated gems
will display a warning
with --gemfile
finds the gemfile
with gemfile set via config
uses the gemfile to install
uses the gemfile while in a subdirectory
with deprecated features
reports that lib is an invalid option
with engine specified in symbol <--------------------- HERE
should not report error <--------------------- HERE
Retried examples: 0
Finished in 43.89 seconds (files took 1.68 seconds to load)
6 examples, 0 failures
```
Real-world Gemfile also works after this patch:
```
$ ruby -v
jruby 9.1.2.0 (2.3.0) 2016-05-26 7357c8f Java HotSpot(TM) 64-Bit Server VM 25.25-b02 on 1.8.0_25-b17 +jit [darwin-x86_64]
$ cat Gemfile
source "https://rubygems.org"
ruby '2.3.0', :engine => :jruby, engine_version: '9.1.2.0'
$ dbundle
The Gemfile specifies no dependencies
Bundle complete! 0 Gemfile dependencies, 1 gem now installed.
Use `bundle show [gemname]` to see where a bundled gem is installed.
```
</details>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
[RubygemsIntegration] Ensure redefined methods have the same visibility
Closes #4975
\c @indirect @headius
I'd love to get this out as 1.13.2 asap, if it works
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
[Definition] Avoid parsing lockfile twice on init
\c @chrismo
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
[EndpointSpecification] Raise a helpful error when parsing metadata fails
Would make diagnosing a recent issue around this easier
\c @indirect would love to get this into 1.13.1
|
| | | | |
| | | | |
| | | | |
| | | | | |
::Rake::CommandFailedError doesn't exist.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Update bundle-exec docs for exec loading
See https://github.com/bundler/bundler/issues/4852 @indirect
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
fix message parenthesis color
Hello!
Using Bundler version 1.13.1 i noticed a small graphic inconsistency on parentheses color:
<img width="349" alt="screen shot 2016-09-19 at 16 16 10" src="https://cloud.githubusercontent.com/assets/557414/18635257/b41a0366-7e84-11e6-9664-174c90a0863f.png">
This commit resets the opening parenthesis color:
<img width="287" alt="screen shot 2016-09-19 at 16 27 08" src="https://cloud.githubusercontent.com/assets/557414/18635630/f7081b94-7e85-11e6-963c-8c2b869a9443.png">
Is this the expected behaviour? The spec was only checking the closing parenthesis color.
p.s:
Imho green parentheses look better here.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
fixing NoMethodError on settings
When the Settings object is initialized with no root directory it cannot read the local_config. This used to not be a problem due to the fact that the `#load_config` method did not try to exit early. Since now it does it returns nil when the config is not present setting the @local_config instance variable to nil. The fix is to return an empty hash the same way the `#load_config` method would return if it encountered a problem later on.
The attached test proves that there is a problem and the fix makes the problem go away.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Fix GEM_PATH regression in 1.13.
_nth time is a charm ... here's the latest latest latest commit message_:
Fix disable_shared_gems bug & keep nested exec
tl;dr `--deployment` will copy _all_ gems to the `--path` now and a
proper fix is in place for nested bundle execs when `--path` is set and
RubyGems >=2.6.2 is being used.
Fixes #4974.
There's two problems blended in here. Let's trace the events here from
the beginning, shall we?
First off, from probably the first versions of Bundler, when
`disable_shared_gems` is true, the `GEM_PATH` gets internally overridden
and initialized to an empty string. This is done to make sure that later
in the `Bundler.setup` process it's expanded to ONLY the Bundler `--path`
setting, otherwise it expands to include the system path.
In 1.12, `bundle exec` was changed to use `Kernel.load` in some cases,
and that new code path calls `require "bundler/setup"`.
Later, issue #4592 was filed, showing that in cases like `--deployment`
where `disable_shared_gems` is true, Bundler couldn't find itself,
because Bundler never lives in the `--path` but only in system gems. And
as it would later be discovered, was not a problem with RubyGems 2.6.1,
but was a problem with >=2.6.2 (and older RubyGems it would seem, though
those weren't as thoroughly investigated).
We fixed #4592 (see PR #4701) in 1.13.0 by changing the oooold code
initializing `GEM_PATH` to be initialized to `nil` instead of empty
string in all `disable_shared_gems` cases. But it created another bug,
filed as #4974, wherein system gems were no longer copied to the
`--path` when `disable_shared_gems` is true. In this commit here (#4992)
we've reverted the change so that `GEM_PATH` is now back to being
initialized to an empty string instead of `nil`.
That fixes #4974, but regresses #4592, and we needed a new way to fix
it.
After a few tortured attempts at this, I ran across issue #4602, a
similar report of nested bundle execs being broken, #4602 itself an
extension of #4381 reporting the same problem. It brought to light the
role the Rubygems version played in the problem.
When the `bundler` gem is installed and the wrapper is generated for any
gem executables, the contents of this wrapper are determined by the
Rubygems version. Up until RubyGems 2.6.1 the last line of this wrapper
calls `Gem.bin_path`. Bundler replaces the Rubygems implementation of
`Gem.bin_path` with its own, and has for a long time made a special
exception for the Bundler gem itself, short-circuiting with the contents
of a special ENV variable called `BUNDLE_BIN_PATH`.
In Rubygems 2.6.2, `bin_path` was superseded by a new
`Gem.activate_bin_path` method which did what `bin_path` did but also
activated the gem. Bundler 1.13 added support for this, but it didn't
include the same short-circuit for bundler itself. (Alert user @taoza
even noticed this here
fcaab35#r56665282).
This commit also includes that short circuit for Rubygems >=2.6.2 now
and nested bundle exec should continue to work.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
r=indirect
[LazySpecification] Select the best platform match when materializing
Closes #5006
This was not fun to track down >.<
|
| | | | |
| | | | |
| | | | |
| | | | | |
[Settings] Make auto_install a bool key
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Update specs to use compact_index 0.11
Also removed the penalty for adding requirements to dependencies!
\c @indirect
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
[FriendlyErrors] Print a custom message on Java::JavaLang::OutOfMemor…
…yError
Closes https://github.com/bundler/bundler/issues/4673
|
| | | | | | |
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | | |
[Settings] Make auto_install a bool key
|
| |/ / / / / |
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Un-vendor the compact index client
Step one to https://github.com/bundler/bundler/issues/4935
|
| | | | | | | |
|