Skip to content

Bundle package broken after 1.7.14 #1973

@etehtsea

Description

@etehtsea

There is a bunch of new bundled gems in 1.7.14: descendants_tracker, thread_safe and other.
Theirs gemspecs placed in jruby-1.7.15/lib/ruby/gems/shared/specifications what breaks bundler.

Gemfile.lock

PATH
  remote: .
  specs:
    issue-repro (0.0.1)
      activesupport (~> 4.1.6)

GEM
  remote: https://rubygems.org/
  specs:
    activesupport (4.1.6)
      i18n (~> 0.6, >= 0.6.9)
      json (~> 1.7, >= 1.7.7)
      minitest (~> 5.1)
      thread_safe (~> 0.1)
      tzinfo (~> 1.1)
    i18n (0.6.11)
    json (1.8.1-java)
    minitest (5.3.3)
    rake (10.3.2)
    thread_safe (0.3.4-java)
    tzinfo (1.2.2)
      thread_safe (~> 0.1)

PLATFORMS
  java

DEPENDENCIES
  bundler (~> 1.6)
  issue-repro!
  rake

bundle package --all

Resolving dependencies...
Using rake 10.3.2
Using i18n 0.6.11
Using json 1.8.1
Using minitest 5.3.3
Using thread_safe 0.3.4
Using tzinfo 1.2.2
Using activesupport 4.1.6
Using bundler 1.7.3
Using issue-repro 0.0.1 from source at .
Updating files in vendor/cache
  * i18n-0.6.11.gem
  * json-1.8.1-java.gem
  * minitest-5.3.3.gem
Could not find thread_safe-0.3.4-java.gem for installation

This happens because bundler makes assumption that bundled gems's gemspecs are inside specifications/default directory.

 def builtin_gem?(spec)
  # Ruby 2.1, where all included gems have this summary
  return true if spec.summary =~ /is bundled with Ruby/
  # Ruby 2.0, where gemspecs are stored in specifications/default/
  spec.loaded_from && spec.loaded_from.include?("specifications/default/")
end

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions