[rubygems/rubygems] Fix musl platform not being added to the lockfile
https://github.com/rubygems/rubygems/commit/235f7b4266
This commit is contained in:
parent
c28ee91263
commit
95c9711d6e
@ -65,7 +65,7 @@ module Bundler
|
|||||||
|
|
||||||
platforms.concat(new_platforms)
|
platforms.concat(new_platforms)
|
||||||
|
|
||||||
less_specific_platform = new_platforms.find {|platform| platform != Gem::Platform::RUBY && platform === Bundler.local_platform }
|
less_specific_platform = new_platforms.find {|platform| platform != Gem::Platform::RUBY && Bundler.local_platform === platform }
|
||||||
platforms.delete(Bundler.local_platform) if less_specific_platform
|
platforms.delete(Bundler.local_platform) if less_specific_platform
|
||||||
|
|
||||||
platforms
|
platforms
|
||||||
|
@ -1262,6 +1262,120 @@ RSpec.describe "bundle install with specific platforms" do
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
it "adds current musl platform" do
|
||||||
|
build_repo4 do
|
||||||
|
build_gem "rcee_precompiled", "0.5.0" do |s|
|
||||||
|
s.platform = "x86_64-linux"
|
||||||
|
end
|
||||||
|
|
||||||
|
build_gem "rcee_precompiled", "0.5.0" do |s|
|
||||||
|
s.platform = "x86_64-linux-musl"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
gemfile <<~G
|
||||||
|
source "#{file_uri_for(gem_repo4)}"
|
||||||
|
|
||||||
|
gem "rcee_precompiled", "0.5.0"
|
||||||
|
G
|
||||||
|
|
||||||
|
simulate_platform "x86_64-linux-musl" do
|
||||||
|
bundle "lock", artifice: "compact_index", env: { "BUNDLER_SPEC_GEM_REPO" => gem_repo4.to_s }
|
||||||
|
|
||||||
|
expect(lockfile).to eq(<<~L)
|
||||||
|
GEM
|
||||||
|
remote: #{file_uri_for(gem_repo4)}/
|
||||||
|
specs:
|
||||||
|
rcee_precompiled (0.5.0-x86_64-linux)
|
||||||
|
rcee_precompiled (0.5.0-x86_64-linux-musl)
|
||||||
|
|
||||||
|
PLATFORMS
|
||||||
|
x86_64-linux
|
||||||
|
x86_64-linux-musl
|
||||||
|
|
||||||
|
DEPENDENCIES
|
||||||
|
rcee_precompiled (= 0.5.0)
|
||||||
|
|
||||||
|
BUNDLED WITH
|
||||||
|
#{Bundler::VERSION}
|
||||||
|
L
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
it "adds current musl platform, when there are also gnu variants", rubygems: ">= 3.3.21" do
|
||||||
|
build_repo4 do
|
||||||
|
build_gem "rcee_precompiled", "0.5.0" do |s|
|
||||||
|
s.platform = "x86_64-linux-gnu"
|
||||||
|
end
|
||||||
|
|
||||||
|
build_gem "rcee_precompiled", "0.5.0" do |s|
|
||||||
|
s.platform = "x86_64-linux-musl"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
gemfile <<~G
|
||||||
|
source "#{file_uri_for(gem_repo4)}"
|
||||||
|
|
||||||
|
gem "rcee_precompiled", "0.5.0"
|
||||||
|
G
|
||||||
|
|
||||||
|
simulate_platform "x86_64-linux-musl" do
|
||||||
|
bundle "lock", artifice: "compact_index", env: { "BUNDLER_SPEC_GEM_REPO" => gem_repo4.to_s }
|
||||||
|
|
||||||
|
expect(lockfile).to eq(<<~L)
|
||||||
|
GEM
|
||||||
|
remote: #{file_uri_for(gem_repo4)}/
|
||||||
|
specs:
|
||||||
|
rcee_precompiled (0.5.0-x86_64-linux-gnu)
|
||||||
|
rcee_precompiled (0.5.0-x86_64-linux-musl)
|
||||||
|
|
||||||
|
PLATFORMS
|
||||||
|
x86_64-linux-gnu
|
||||||
|
x86_64-linux-musl
|
||||||
|
|
||||||
|
DEPENDENCIES
|
||||||
|
rcee_precompiled (= 0.5.0)
|
||||||
|
|
||||||
|
BUNDLED WITH
|
||||||
|
#{Bundler::VERSION}
|
||||||
|
L
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
it "does not add current platform if there's an equivalent less specific platform among the ones resolved" do
|
||||||
|
build_repo4 do
|
||||||
|
build_gem "rcee_precompiled", "0.5.0" do |s|
|
||||||
|
s.platform = "universal-darwin"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
gemfile <<~G
|
||||||
|
source "#{file_uri_for(gem_repo4)}"
|
||||||
|
|
||||||
|
gem "rcee_precompiled", "0.5.0"
|
||||||
|
G
|
||||||
|
|
||||||
|
simulate_platform "x86_64-darwin-15" do
|
||||||
|
bundle "lock", artifice: "compact_index", env: { "BUNDLER_SPEC_GEM_REPO" => gem_repo4.to_s }
|
||||||
|
|
||||||
|
expect(lockfile).to eq(<<~L)
|
||||||
|
GEM
|
||||||
|
remote: #{file_uri_for(gem_repo4)}/
|
||||||
|
specs:
|
||||||
|
rcee_precompiled (0.5.0-universal-darwin)
|
||||||
|
|
||||||
|
PLATFORMS
|
||||||
|
universal-darwin
|
||||||
|
|
||||||
|
DEPENDENCIES
|
||||||
|
rcee_precompiled (= 0.5.0)
|
||||||
|
|
||||||
|
BUNDLED WITH
|
||||||
|
#{Bundler::VERSION}
|
||||||
|
L
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
def setup_multiplatform_gem
|
def setup_multiplatform_gem
|
||||||
|
Loading…
x
Reference in New Issue
Block a user