This repository has been archived by the owner on Apr 14, 2021. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 2k
Nested calls to bundle exec resolve xmlrpc incorrectly #5500
Labels
Comments
What's the output of |
Adding Environment
Bundler settings
GemfileGemfileGemfile.lock
|
Given the gemfile is empty, I don't see how bundle exec cucumber is working at all? |
That is the output for the simple reproduction that just runs a tiny ruby file. The output for the cucumber thing is: Environment
Bundler settings
GemfileGemfilesource 'https://rubygems.org'
git_source(:github) do |repo_name|
repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/")
"https://github.com/#{repo_name}.git"
end
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '~> 5.0.1'
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
# Use Puma as the app server
gem 'puma', '~> 3.0'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .coffee assets and views
gem 'coffee-rails', '~> 4.2'
# See https://github.com/rails/execjs#readme for more supported runtimes
# gem 'therubyracer', platforms: :ruby
# Use jquery as the JavaScript library
gem 'jquery-rails'
# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
gem 'turbolinks', '~> 5'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.5'
# Use Redis adapter to run Action Cable in production
# gem 'redis', '~> 3.0'
# Use ActiveModel has_secure_password
# gem 'bcrypt', '~> 3.1.7'
# Use Capistrano for deployment
# gem 'capistrano-rails', group: :development
group :development, :test do
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
gem 'byebug', platform: :mri
end
group :development do
# Access an IRB console on exception pages or by using <%= console %> anywhere in the code.
gem 'web-console', '>= 3.3.0'
gem 'listen', '~> 3.0.5'
# Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
gem 'spring'
gem 'spring-watcher-listen', '~> 2.0.0'
end
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
gem 'cucumber-rails', group: :test, require: false
gem 'database_cleaner', group: :test, require: false Gemfile.lock
|
I should probably note that again, this is the output for a demonstration. The original problem is running in a checked-out repo of |
Confirmed, thanks! |
Ugh, this seems to be a problem with the |
Have a fix locally for this, just need to write a test |
1 task
bundlerbot
added a commit
that referenced
this issue
Mar 15, 2017
[CLI] Dont reset every time the CLI is initialized Fixes #5500 - [x] Tests
philipefarias
added a commit
to dleemoo/rc-images
that referenced
this issue
Jun 12, 2017
Changes since last version used (1.14.6): == 1.15.1 (2017-06-02) Bugfixes: - `bundle lock --update GEM` will fail gracefully when the gem is not in the lockfile (rubygems/bundler#5693, @segiddins) - `bundle init --gemspec` will fail gracefully when the gemspec is invalid (@colby-swandale) - `bundle install --force` works when the gemfile contains git gems (rubygems/bundler#5678, @segiddins) - `bundle env` will print well-formed markdown when there are no settings (rubygems/bundler#5677, @segiddins) == 1.15.0 (2017-05-19) This space intentionally left blank. == 1.15.0.pre.4 (2017-05-10) Bugfixes: - avoid conflicts when `Gem.finish_resolve` is called after the bundle has been set up (@segiddins) - ensure that `Gem::Specification.find_by_name` always returns an object that can have `#to_spec` called on it (rubygems/bundler#5592, @jules2689) == 1.15.0.pre.3 (2017-04-30) Bugfixes: - avoid redundant blank lines in the readme generated by `bundle gem` (@koic) - ensure that `open-uri` is not loaded after `bundle exec` (@segiddins) - print a helpful error message when an activated default gem conflicts with a gem in the gemfile (@segiddins) - only shorten `ref` option for git gems when it is a SHA (rubygems/bundler#5620, @segiddins) == 1.15.0.pre.2 (2017-04-23) Bugfixes: - ensure pre-existing fit caches are updated from remote sources (rubygems/bundler#5423, @alextaylor000) - avoid duplicating specs in the lockfile after updating with the gem uninstalled (rubygems/bundler#5599, @segiddins) - ensure git gems have their extensions available at runtime (rubygems/bundler#5594, @jules2689, @segiddins) == 1.15.0.pre.1 (2017-04-16) Features: - print a notification when a newer version of bundler is available (rubygems/bundler#4683, @segiddins) - add man pages for all bundler commands (rubygems/bundler#4988, @feministy) - add the `bundle info` command (@fredrb, @colby-swandale) - all files created with `bundle gem` comply with the bundler style guide (@zachahn) - if installing a gem fails, print out the reason the gem needed to be installed (rubygems/bundler#5078, @segiddins) - allow setting `gem.push_key` to set the key used when running `rake release` (@DTrierweiler) - print gem versions that are regressing during `bundle update` in yellow (rubygems/bundler#5506, @brchristian) - avoid printing extraneous dependencies when the resolver encounters a conflict (@segiddins) - add the `bundle issue` command that prints instructions for reporting issues (rubygems/bundler#4871, @jonathanpike) - add `--source` and `--group` options to the `bundle inject` command (rubygems/bundler#5452, @Shekharrajak) - add the `bundle add` command to add a gem to the gemfile (@denniss) - add the `bundle pristine` command to re-install gems from cached `.gem` files (rubygems/bundler#4509, @denniss) - add a `--parseable` option for `bundle config` (@JuanitoFatas, @colby-swandale) Performance: - speed up gemfile initialization by storing locked dependencies as a hash (@jules2689) - speed up gemfile initialization by making locked dependency comparison lazy, avoiding object allocation (@jules2689) - only validate git gems when they are downloaded, instead of every time `Bundler.setup` is run (@segiddins) - avoid regenerating the lockfile when nothing has changed (@segiddins) - avoid diffing large arrays when no sources in the gemfile have changed (@segiddins) - avoid evaluating full gemspecs when running with RubyGems 2.5+ (@segiddins) Bugfixes: - fix cases where `bundle update` would print a resolver conflict instead of updating the selected gems (rubygems/bundler#5031, rubygems/bundler#5095, @segiddins) - print out a stack trace after an interrupt when running in debug mode (@segiddins) - print out when bundler starts fetching a gem from a remote server (@segiddins) - fix `bundle gem` failing when `git` is unavailable (rubygems/bundler#5458, @Shekharrajak, @colby-swandale) - suggest the appropriate command to unfreeze a bundle (rubygems/bundler#5009, @denniss) - ensure nested calls to `bundle exec` resolve default gems correctly (rubygems/bundler#5500, @segiddins) - ensure that a plugin failing to install doesn't uninstall other plugins (@kerrizor, @roseaboveit) - ensure `socket` is required before being referenced (rubygems/bundler#5533, @rafaelfranca) - allow running `bundle outdated` when gems aren't installed locally (rubygems/bundler#5553, @segiddins) - print a helpful error when `bundle exec`ing to a gem that isn't included in the bundle (rubygems/bundler#5487, @segiddins) - print an error message when a non-git gem is given a `branch` option (rubygems/bundler#5530, @colby-swandale) - allow interrupts to exit the process after gems have been installed (@segiddins) - print the underlying error when downloading gem metadata fails (rubygems/bundler#5579, @segiddins) - avoid deadlocking when installing with a lockfile that is missing dependencies (rubygems/bundler#5378, rubygems/bundler#5480, rubygems/bundler#5519, rubygems/bundler#5526, rubygems/bundler#5529, rubygems/bundler#5549, rubygems/bundler#5572, @segiddins)
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
This is an odd edge case that occurs in
cucumber-rails
integration tests, wherebundle exec rake cucumber
is called inside an integration test that is itself run throughbundle exec cucumber
.Here is a gist demonstrating the original case:
https://gist.github.com/mvz/39a2408005f16174f5831eec4011910b
@rhenium reduced this to a simple demonstration here: ruby/openssl#103 (comment)
Here is a gist with that demonstration as a Dockerfile:
https://gist.github.com/mvz/2b603766f5de391f5c23393f766146c8
In that gist, I expect the output of
bundle exec ./a.rb
andbundle exec bundle exec ./a.rb
to be the same, but it is not.The text was updated successfully, but these errors were encountered: