From 24f5e3010f632d400e56042e4b14b121a09e6c74 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Rodr=C3=ADguez?= Date: Fri, 31 Jan 2025 06:50:17 +0100 Subject: [PATCH] [rubygems/rubygems] Metadata dependencies can be `Gem::Dependency` instances They use less memory that way. When resolving from scratch a Gemfile including only `"gem "rails", "~> 8.0.1"`, I get the following results: ### Before Total allocated: 265.06 MB (3186053 objects) Total retained: 116.98 MB (1302280 objects) ### After Total allocated: 262.99 MB (3177437 objects) Total retained: 115.91 MB (1297821 objects) https://github.com/rubygems/rubygems/commit/a4ef9c5f56 --- lib/bundler/resolver/spec_group.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/bundler/resolver/spec_group.rb b/lib/bundler/resolver/spec_group.rb index 1b448b617f..db7920ef9e 100644 --- a/lib/bundler/resolver/spec_group.rb +++ b/lib/bundler/resolver/spec_group.rb @@ -82,7 +82,7 @@ module Bundler def metadata_dependency(name, requirement) return if requirement.nil? || requirement.none? - Dependency.new("#{name}\0", requirement) + Gem::Dependency.new("#{name}\0", requirement) end end end