rubygems / bundler

Manage your Ruby application's gem dependencies
https://bundler.io
MIT License
4.88k stars 2k forks source link

Indefinite loop of "Resolving dependencies" #6130

Closed leoarnold closed 6 years ago

leoarnold commented 6 years ago

Hi there, the following setup sends Bundler into "Resolving dependencies" indefinitely (like several terminal pages of dots). It might be that the amount of gems and possible combinations is bringing Bundler's algorithms to its knees and I'd appreciate any help on debugging this.

Note: Despite the huge amount of gems, Bundler used to handle installs and updates with ease until about beginning of Oct 2017 :-/

leoarnold commented 6 years ago

Environment

Bundler   1.15.4
Rubygems  2.6.11
Ruby      2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]
GEM_HOME  ~/.rvm/gems/ruby-2.4.1
GEM_PATH  ~/.rvm/gems/ruby-2.4.1:~/.rvm/gems/ruby-2.4.1@global
RVM       1.29.2 (latest)
Git       2.14.2
Platform  x86_64-linux
OpenSSL   OpenSSL 1.0.1f 6 Jan 2014
rubygems-bundler (1.4.4)

Bundler settings

specific_platform
  Set for the current user (~/.bundle/config): "true"
path
  Set for your local app (~/myproject/.bundle/config): "vendor/bundle"
disable_shared_gems
  Set for your local app (~/myproject/.bundle/config): true

Gemfile

gems.rb

source 'https://rubygems.org'

puppetversion = ENV['PUPPET_GEM_VERSION']

# Gemnasium.com does not understand ternary operators
#
# rubocop:disable Bundler/DuplicatedGem
if puppetversion.nil?
  gem 'puppet', '~> 5.0'
else
  gem 'puppet', puppetversion
end
# rubocop:enable Bundler/DuplicatedGem

group :development do
  gem 'codacy-coverage', '~> 1.0'
  gem 'coderay', '~> 1.1'
  gem 'mdl', '~> 0.3'
  gem 'metadata-json-lint', '~> 2.0'
  gem 'parallel_tests', '~> 2.13'
  gem 'puppet-blacksmith', '~> 3.3'
  gem 'puppetlabs_spec_helper', '~> 2.0'
  gem 'rspec-puppet-facts', '~> 1.7'
  gem 'rubocop', '~> 0.51'
  gem 'semantic_puppet' if puppetversion.to_f < 4.9
  gem 'simplecov', '~> 0.13'
  gem 'simplecov-murmur', '~> 0.8'
end

group :acceptance_testing do
  gem 'beaker-rspec', '~> 6.2'
end

group :ci do
  gem 'codeclimate-test-reporter', '~> 1.0'
end

group :metatools do
  gem 'github-linguist', '~> 5.0'
  gem 'pry', '~> 0.11'
  gem 'travis', '~> 1.8'
end

gems.locked

<No ~/myproject/gems.locked found>
leoarnold commented 6 years ago
$ bundle install --path vendor/bundle -V
Running `bundle install --path "vendor/bundle" --verbose` with bundler 1.15.4
Found changes from the lockfile, re-resolving dependencies because the list of sources changed, the dependencies in your gemfile changed, you added a new platform to your gemfile
HTTP GET https://index.rubygems.org/versions
HTTP 206 Partial Content https://index.rubygems.org/versions
Fetching gem metadata from https://rubygems.org/
Looking up gems ["puppet", "codacy-coverage", "coderay", "mdl", "metadata-json-lint", "parallel_tests", "puppet-blacksmith", "puppetlabs_spec_helper", "rspec-puppet-facts", "rubocop", "semantic_puppet", "simplecov", "simplecov-murmur", "beaker-rspec", "codeclimate-test-reporter", "github-linguist", "pry", "travis"]
Looking up gems ["kramdown", "mixlib-cli", "mixlib-config", "json", "spdx-licenses", "semantic", "json-schema", "mocha", "rake", "rspec", "rspec-puppet", "puppet-lint", "puppet-syntax", "facter", "hiera", "hiera-puppet", "rgen", "ffi", "json_pure", "minitar", "sys-admin", "win32-api", "win32console", "win32-dir", "win32-eventlog", "win32-process", "win32-security", "win32-service", "win32-taskscheduler", "windows-api", "windows-pr", "CFPropertyList", "gettext-setup", "locale", "rest-client", "nokogiri", "colorize", "beaker", "serverspec", "specinfra", "charlock_holmes", "escape_utils", "mime-types", "pygments.rb", "rugged", "backports", "faraday", "faraday_middleware", "gh", "highline", "netrc", "launchy", "net-http-persistent", "typhoeus", "pusher-client", "websocket-native", "terminal-notifier", "addressable", "facterdb", "mcollective-client", "term-ansicolor", "rainbow", "parser", "powerpack", "ruby-progressbar", "astrolabe", "tins", "unicode-display_width", "parallel", "ruby_parser", "method_source", "yard", "slop", "spoon", "simplecov-html", "multi_json", "docile", "lockfile"]
Looking up gems ["metaclass", "test-unit", "ffi-win32-extensions", "libxml-ruby", "fast_gettext", "gettext", "spruz", "archive-tar-minitar", "hoe", "rcov", "mime-types-data", "rubypython", "posix-spawn", "yajl-ruby", "rack", "multipart-post", "racc", "rake-compiler", "rexical", "tenderlove-frex", "weakling", "mini_portile", "mini_portile2", "pkg-config", "configuration", "connection_pool", "ethon", "structured_warnings", "public_suffix", "jgrep", "ptools", "termios", "em-http-request", "eventmachine", "libwebsocket", "ruby-hmac", "websocket", "sexp_processor", "ast", "blimpy", "fission", "inifile", "net-scp", "net-ssh", "rbvmomi", "unf", "google-api-client", "aws-sdk", "docker-api", "hocon", "fog", "minitest", "rsync", "open_uri_redirections", "beaker-answers", "stringify-hash", "beaker-hiera", "fog-google", "beaker-pe", "beaker-hostgenerator", "in-parallel", "aws-sdk-v1", "beaker-facter", "thor", "beaker-puppet", "beaker-vmpooler", "beaker-aws", "beaker-google", "beaker-vagrant", "beaker-vmware", "beaker-docker", "beaker-openstack", "beaker-vcloud", "pry-byebug", "rb-readline", "bones", "ParseTree", "cucumber", "diff-lcs", "spicycode-rcov", "syntax", "rspec-core", "rspec-expectations", "rspec-mocks", "net-telnet", "sfl", "hashie", "oauth2", "multi_xml", "roauth", "rspec-its", "systemu", "stomp", "i18n", "rdoc", "http-cookie", "http-accept", "erubis", "net-http-pipeline"]
Looking up gems ["camping", "fcgi", "memcache-client", "mongrel", "ruby-openid", "test-spec", "thin", "win32-file", "em-socksify", "http_parser.rb", "cookiejar", "echoe", "needle", "jruby-pageant", "bcrypt_pbkdf", "rbnacl", "rbnacl-libsodium", "unf_ext", "require_all", "deep_merge", "minitar-cli", "oga", "levenshtein", "text", "blankslate", "byebug", "power_assert", "builder", "polyglot", "treetop", "gherkin", "multi_test", "cucumber-core", "gherkin3", "cucumber-wire", "event-bus", "cucumber-expressions", "fog-core", "fog-xml", "fog-json", "extlib", "httpadapter", "signet", "liquid", "sinatra", "autoparse", "uuidtools", "jwt", "retriable", "activesupport", "googleauth", "hurley", "memoist", "representable", "virtus", "httpclient", "faraday-middleware", "httpauth", "concurrent-ruby", "rubyforge", "RubyInline", "gemcutter", "domain_name", "sqlite3", "abstract", "SexpProcessor", "excon", "rspec-support", "httparty", "aws-sdk-resources", "aws-sdk-acm", "aws-sdk-apigateway", "aws-sdk-applicationautoscaling", "aws-sdk-applicationdiscoveryservice", "aws-sdk-autoscaling", "aws-sdk-budgets", "aws-sdk-cloudformation", "aws-sdk-cloudfront", "aws-sdk-cloudhsm", "aws-sdk-cloudsearch", "aws-sdk-cloudsearchdomain", "aws-sdk-cloudtrail", "aws-sdk-cloudwatch", "aws-sdk-cloudwatchevents", "aws-sdk-cloudwatchlogs", "aws-sdk-codecommit", "aws-sdk-codedeploy", "aws-sdk-codepipeline", "aws-sdk-cognitoidentity", "aws-sdk-cognitoidentityprovider", "aws-sdk-cognitosync", "aws-sdk-configservice", "aws-sdk-databasemigrationservice", "aws-sdk-datapipeline", "aws-sdk-devicefarm", "aws-sdk-directconnect", "aws-sdk-directoryservice", "aws-sdk-dynamodb", "aws-sdk-dynamodbstreams", "aws-sdk-ec2", "aws-sdk-ecr", "aws-sdk-ecs", "aws-sdk-efs", "aws-sdk-elasticache", "aws-sdk-elasticbeanstalk", "aws-sdk-elasticloadbalancing", "aws-sdk-elasticloadbalancingv2", "aws-sdk-elasticsearchservice", "aws-sdk-elastictranscoder", "aws-sdk-emr", "aws-sdk-firehose", "aws-sdk-gamelift", "aws-sdk-glacier", "aws-sdk-iam", "aws-sdk-importexport", "aws-sdk-inspector", "aws-sdk-iot", "aws-sdk-iotdataplane", "aws-sdk-kinesis", "aws-sdk-kinesisanalytics", "aws-sdk-kms", "aws-sdk-lambda", "aws-sdk-lambdapreview", "aws-sdk-machinelearning", "aws-sdk-marketplacecommerceanalytics", "aws-sdk-marketplacemetering", "aws-sdk-opsworks", "aws-sdk-rds", "aws-sdk-redshift", "aws-sdk-route53", "aws-sdk-route53domains", "aws-sdk-s3", "aws-sdk-servicecatalog", "aws-sdk-ses", "aws-sdk-simpledb", "aws-sdk-sms", "aws-sdk-snowball", "aws-sdk-sns", "aws-sdk-sqs", "aws-sdk-ssm", "aws-sdk-storagegateway", "aws-sdk-support", "aws-sdk-swf", "aws-sdk-waf", "aws-sdk-workspaces", "aws-sdk-appstream", "aws-sdk-codebuild", "aws-sdk-health", "aws-sdk-lightsail", "aws-sdk-opsworkscm", "aws-sdk-pinpoint", "aws-sdk-polly", "aws-sdk-rekognition", "aws-sdk-sfn", "aws-sdk-shield", "aws-sdk-wafregional", "aws-sdk-xray", "aws-sdk-batch", "aws-sdk-clouddirectory", "aws-sdk-costandusagereportservice", "aws-sdk-lexruntimeservice", "aws-sdk-mturk", "aws-sdk-organizations", "aws-sdk-workdocs", "aws-sdk-codestar", "aws-sdk-lexmodelbuildingservice", "aws-sdk-resourcegroupstaggingapi", "aws-sdk-lex", "aws-sdk-marketplaceentitlementservice", "aws-sdk-states", "aws-sdk-athena", "tokyocabinet", "trollop", "cdb-full", "formatador", "named-parameters", "unicode", "fog-brightbox", "ipaddress", "fog-softlayer", "fog-radosgw", "fog-sakuracloud", "fog-profitbricks", "fog-terremark", "fog-vmfusion", "fog-voxel", "opennebula", "fog-atmos", "fog-ecloud", "fog-storm_on_demand", "fog-aws", "fog-serverlove", "fog-riakcs", "fog-local", "fog-powerdns", "fog-dynect", "fog-xenserver", "fog-aliyun", "fog-vsphere", "fog-cloudatcost", "fog-openstack", "fog-rackspace", "fog-digitalocean", "fog-dnsimple", "fog-internet-archive", "fog-joyent", "fog-ovirt", "little-plugger", "loquacious", "bones-extras", "bones-git"]
Looking up gems ["markaby", "metaid", "activerecord", "mab", "cgi_multipart_eof_fix", "daemons", "fastthread", "gem_plugin", "ruby-yadis", "flexmock", "win32-file-stat", "allison", "eventmachine-le", "preforker", "powerbar", "ruby-ll", "columnize", "debugger-linecache", "pattern-match", "facets", "cucumber-tag_expressions", "xmlrpc", "english", "rack-test", "shotgun", "tilt", "rack-protection", "mustermann", "ZenTest", "descendants_tracker", "axiom-types", "coercible", "equalizer", "tzinfo", "thread_safe", "functional-ruby", "ref", "aws-sdk-core", "aws-sigv4", "logging", "os", "hooks", "uber", "declarative", "declarative-option", "jnunemaker-crack", "crack", "aws-sigv2", "aws-sdk-dax", "aws-sdk-greengrass", "aws-sdk-cloudhsmv2", "aws-sdk-glue", "aws-sdk-migrationhub", "aws-sdk-mobile", "inflecto", "curses", "xml-simple", "rbovirt", "bones-rcov", "bones-rspec", "bones-rubyforge", "bones-zentest", "git", "pry-debugger"]
Looking up gems ["ansi", "ruby_core_source", "debugger-ruby_core_source", "language", "ice_nine", "adamantium", "atomic", "jamespath", "jmespath", "aws-partitions", "activemodel", "arel", "activerecord-deprecated_finders", "debugger", "tool", "safe_yaml"]
Looking up gems ["memoizable", "psych", "bcrypt-ruby"]
Looking up gems ["bcrypt", "jar-dependencies"]
Looking up gems ["ruby-maven"]
Looking up gems ["maven-tools", "ruby-maven-libs"]
Fetching version metadata from https://rubygems.org/
Looking up gems ["kramdown", "mixlib-cli", "mixlib-config", "json", "spdx-licenses", "semantic", "semantic_puppet", "json-schema", "puppet", "mocha", "rake", "rspec", "rspec-puppet", "puppet-lint", "puppet-syntax", "metadata-json-lint", "parallel_tests", "facter", "hiera", "hiera-puppet", "rgen", "ffi", "json_pure", "minitar", "sys-admin", "win32-api", "win32console", "win32-dir", "win32-eventlog", "win32-process", "win32-security", "win32-service", "win32-taskscheduler", "windows-api", "windows-pr", "CFPropertyList", "gettext-setup", "locale", "puppetlabs_spec_helper", "rest-client", "nokogiri", "colorize", "beaker", "serverspec", "specinfra", "charlock_holmes", "escape_utils", "mime-types", "pygments.rb", "rugged", "backports", "faraday", "faraday_middleware", "gh", "highline", "netrc", "launchy", "pry", "net-http-persistent", "typhoeus", "pusher-client", "websocket-native", "terminal-notifier", "addressable", "simplecov", "facterdb", "mcollective-client", "term-ansicolor", "rainbow", "parser", "powerpack", "ruby-progressbar", "astrolabe", "tins", "unicode-display_width", "parallel", "ruby_parser", "method_source", "coderay", "yard", "slop", "spoon", "simplecov-html", "multi_json", "docile", "lockfile", "metaclass", "test-unit", "ffi-win32-extensions", "libxml-ruby", "fast_gettext", "gettext", "spruz", "archive-tar-minitar", "hoe", "rcov", "mime-types-data", "rubypython", "posix-spawn", "yajl-ruby", "rack", "multipart-post", "racc", "rake-compiler", "rexical", "tenderlove-frex", "weakling", "mini_portile", "mini_portile2", "pkg-config", "configuration", "connection_pool", "ethon", "structured_warnings", "public_suffix", "jgrep", "ptools", "termios", "em-http-request", "eventmachine", "libwebsocket", "ruby-hmac", "websocket", "sexp_processor", "ast", "blimpy", "fission", "inifile", "net-scp", "net-ssh", "rbvmomi", "unf", "google-api-client", "aws-sdk", "docker-api", "hocon", "fog", "minitest", "rsync", "open_uri_redirections", "beaker-answers", "stringify-hash", "beaker-hiera", "fog-google", "beaker-pe", "beaker-hostgenerator", "in-parallel", "aws-sdk-v1", "beaker-facter", "thor", "beaker-puppet", "beaker-vmpooler", "beaker-aws", "beaker-google", "beaker-vagrant", "beaker-vmware", "beaker-docker", "beaker-openstack", "beaker-vcloud", "pry-byebug", "rb-readline", "bones", "ParseTree", "cucumber", "diff-lcs", "spicycode-rcov", "syntax", "rspec-core", "rspec-expectations", "rspec-mocks", "net-telnet", "sfl", "hashie", "oauth2", "multi_xml", "roauth", "rspec-its", "systemu", "stomp", "i18n", "rdoc", "http-cookie", "http-accept", "erubis", "net-http-pipeline", "camping", "fcgi", "memcache-client", "mongrel", "ruby-openid", "test-spec", "thin", "win32-file", "em-socksify", "http_parser.rb", "cookiejar", "echoe", "needle", "jruby-pageant", "bcrypt_pbkdf", "rbnacl", "rbnacl-libsodium", "unf_ext", "require_all", "deep_merge", "minitar-cli", "oga", "levenshtein", "text", "blankslate", "byebug", "power_assert", "builder", "polyglot", "treetop", "gherkin", "multi_test", "cucumber-core", "gherkin3", "cucumber-wire", "event-bus", "cucumber-expressions", "fog-core", "fog-xml", "fog-json", "extlib", "httpadapter", "signet", "liquid", "sinatra", "autoparse", "uuidtools", "jwt", "retriable", "activesupport", "googleauth", "hurley", "memoist", "representable", "virtus", "httpclient", "faraday-middleware", "httpauth", "concurrent-ruby", "rubyforge", "RubyInline", "gemcutter", "domain_name", "sqlite3", "abstract", "SexpProcessor", "excon", "rspec-support", "httparty", "aws-sdk-resources", "aws-sdk-acm", "aws-sdk-apigateway", "aws-sdk-applicationautoscaling", "aws-sdk-applicationdiscoveryservice", "aws-sdk-autoscaling", "aws-sdk-budgets", "aws-sdk-cloudformation", "aws-sdk-cloudfront", "aws-sdk-cloudhsm", "aws-sdk-cloudsearch", "aws-sdk-cloudsearchdomain", "aws-sdk-cloudtrail", "aws-sdk-cloudwatch", "aws-sdk-cloudwatchevents", "aws-sdk-cloudwatchlogs", "aws-sdk-codecommit", "aws-sdk-codedeploy", "aws-sdk-codepipeline", "aws-sdk-cognitoidentity", "aws-sdk-cognitoidentityprovider", "aws-sdk-cognitosync", "aws-sdk-configservice", "aws-sdk-databasemigrationservice", "aws-sdk-datapipeline", "aws-sdk-devicefarm", "aws-sdk-directconnect", "aws-sdk-directoryservice", "aws-sdk-dynamodb", "aws-sdk-dynamodbstreams", "aws-sdk-ec2", "aws-sdk-ecr", "aws-sdk-ecs", "aws-sdk-efs", "aws-sdk-elasticache", "aws-sdk-elasticbeanstalk", "aws-sdk-elasticloadbalancing", "aws-sdk-elasticloadbalancingv2", "aws-sdk-elasticsearchservice", "aws-sdk-elastictranscoder", "aws-sdk-emr", "aws-sdk-firehose", "aws-sdk-gamelift", "aws-sdk-glacier", "aws-sdk-iam", "aws-sdk-importexport", "aws-sdk-inspector", "aws-sdk-iot", "aws-sdk-iotdataplane", "aws-sdk-kinesis", "aws-sdk-kinesisanalytics", "aws-sdk-kms", "aws-sdk-lambda", "aws-sdk-lambdapreview", "aws-sdk-machinelearning", "aws-sdk-marketplacecommerceanalytics", "aws-sdk-marketplacemetering", "aws-sdk-opsworks", "aws-sdk-rds", "aws-sdk-redshift", "aws-sdk-route53", "aws-sdk-route53domains", "aws-sdk-s3", "aws-sdk-servicecatalog", "aws-sdk-ses", "aws-sdk-simpledb", "aws-sdk-sms", "aws-sdk-snowball", "aws-sdk-sns", "aws-sdk-sqs", "aws-sdk-ssm", "aws-sdk-storagegateway", "aws-sdk-support", "aws-sdk-swf", "aws-sdk-waf", "aws-sdk-workspaces", "aws-sdk-appstream", "aws-sdk-codebuild", "aws-sdk-health", "aws-sdk-lightsail", "aws-sdk-opsworkscm", "aws-sdk-pinpoint", "aws-sdk-polly", "aws-sdk-rekognition", "aws-sdk-sfn", "aws-sdk-shield", "aws-sdk-wafregional", "aws-sdk-xray", "aws-sdk-batch", "aws-sdk-clouddirectory", "aws-sdk-costandusagereportservice", "aws-sdk-lexruntimeservice", "aws-sdk-mturk", "aws-sdk-organizations", "aws-sdk-workdocs", "aws-sdk-codestar", "aws-sdk-lexmodelbuildingservice", "aws-sdk-resourcegroupstaggingapi", "aws-sdk-lex", "aws-sdk-marketplaceentitlementservice", "aws-sdk-states", "aws-sdk-athena", "tokyocabinet", "trollop", "cdb-full", "formatador", "named-parameters", "unicode", "fog-brightbox", "ipaddress", "fog-softlayer", "fog-radosgw", "fog-sakuracloud", "fog-profitbricks", "fog-terremark", "fog-vmfusion", "fog-voxel", "opennebula", "fog-atmos", "fog-ecloud", "fog-storm_on_demand", "fog-aws", "fog-serverlove", "fog-riakcs", "fog-local", "fog-powerdns", "fog-dynect", "fog-xenserver", "fog-aliyun", "fog-vsphere", "fog-cloudatcost", "fog-openstack", "fog-rackspace", "fog-digitalocean", "fog-dnsimple", "fog-internet-archive", "fog-joyent", "fog-ovirt", "little-plugger", "loquacious", "bones-extras", "bones-git", "markaby", "metaid", "activerecord", "mab", "cgi_multipart_eof_fix", "daemons", "fastthread", "gem_plugin", "ruby-yadis", "flexmock", "win32-file-stat", "allison", "eventmachine-le", "preforker", "powerbar", "ruby-ll", "columnize", "debugger-linecache", "pattern-match", "facets", "cucumber-tag_expressions", "xmlrpc", "english", "rack-test", "shotgun", "tilt", "rack-protection", "mustermann", "ZenTest", "descendants_tracker", "axiom-types", "coercible", "equalizer", "tzinfo", "thread_safe", "functional-ruby", "ref", "aws-sdk-core", "aws-sigv4", "logging", "os", "hooks", "uber", "declarative", "declarative-option", "jnunemaker-crack", "crack", "aws-sigv2", "aws-sdk-dax", "aws-sdk-greengrass", "aws-sdk-cloudhsmv2", "aws-sdk-glue", "aws-sdk-migrationhub", "aws-sdk-mobile", "inflecto", "curses", "xml-simple", "rbovirt", "bones-rcov", "bones-rspec", "bones-rubyforge", "bones-zentest", "git", "pry-debugger", "ansi", "ruby_core_source", "debugger-ruby_core_source", "language", "ice_nine", "adamantium", "atomic", "jamespath", "jmespath", "aws-partitions", "activemodel", "arel", "activerecord-deprecated_finders", "debugger", "tool", "safe_yaml", "memoizable", "psych", "bcrypt-ruby", "bcrypt", "jar-dependencies", "ruby-maven", "maven-tools", "ruby-maven-libs"]
Looking up gems ["faraday-middleware"]
Fetching dependency metadata from https://rubygems.org/
Looking up gems ["faraday-middleware"]
Resolving dependencies.............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................^C
segiddins commented 6 years ago

Hi there, can you try this with the 1.16 beta? @greysteil made some incredible resolver improvements, so this may already be resolved

leoarnold commented 6 years ago

Just WOW! Incredible! beaker-rspec is a dependency monster and Bundler 1.16 slays it with ease, thanks!

segiddins commented 6 years ago

Awesome, glad to hear it!