bundler 2.5.19 → 2.5.21

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cf59bff2285c5f99b1db1fbb57d3c372624ccc17fd68d8267d00d95739edbfda
4
- data.tar.gz: 5bd1a4207b31f2437da59356cdae6f2c2999842af730d866ec8799f6b6c8f589
3
+ metadata.gz: 4d14e278135c6fa088c2fc0837815d8251449d7c0335d422ba2fcaa3e29bc3c8
4
+ data.tar.gz: 9b0704eae91833bf63ab346369e0a0a5e3ed39093cbf19bbc27fe7f8eb5ff1ae
5
5
  SHA512:
6
- metadata.gz: e6d98b6893658ee4fca7b7bc633d73e48d88c736c55eb6bf807f9d37c1fce3975d965aa08d5b9b03f5b1b8ce1a84028b78a6510620c8936e7bcd86655ed983da
7
- data.tar.gz: f1edc568d88a5f2dcc82f5c6d74fe418e3ee186ef592b56df315b1678a0f60788bebd1c10f2bc2c463d85c5a050d0a959c956bacf8fffa62c55e73f9b8ee789c
6
+ metadata.gz: cad7762642146a6baba3c8cfab7528e667d0748da24fc442be84cc374bb10a8ef881ec9b87e0f019e4063bbf5112fd9a463ee9aab7567099e40811a9efcf5116
7
+ data.tar.gz: ad30723406fac680a09dac9d4c2dedb202888c86cbcfc79481f905d2d8e3ecde477ba1dda7f0270dedaf386d03b12e782ec350ed7cf83ea80cda5886450bb02f
data/CHANGELOG.md CHANGED
@@ -1,3 +1,25 @@
1
+ # 2.5.21 (October 3, 2024)
2
+
3
+ ## Bug fixes:
4
+
5
+ - Fix bug report template printed when changing a path source to a git source in frozen mode [#8079](https://github.com/rubygems/rubygems/pull/8079)
6
+ - Fix `stub.activated?` sometimes returning false after activation under bundler [#8073](https://github.com/rubygems/rubygems/pull/8073)
7
+ - Fix old cache format detection when application is not source controlled [#8076](https://github.com/rubygems/rubygems/pull/8076)
8
+ - Fix `bundler/inline` resetting ENV changes [#8059](https://github.com/rubygems/rubygems/pull/8059)
9
+
10
+ # 2.5.20 (September 24, 2024)
11
+
12
+ ## Enhancements:
13
+
14
+ - Don't try to auto-install dev versions of Bundler not available remotely [#8045](https://github.com/rubygems/rubygems/pull/8045)
15
+ - Don't try to install locked bundler when `--local` is passed [#8041](https://github.com/rubygems/rubygems/pull/8041)
16
+
17
+ ## Bug fixes:
18
+
19
+ - Fix `bundler/inline` overwriting lockfiles [#8055](https://github.com/rubygems/rubygems/pull/8055)
20
+ - Ensure refs directory in cached git source [#8047](https://github.com/rubygems/rubygems/pull/8047)
21
+ - Fix `bundle outdated` with `--group` option [#8052](https://github.com/rubygems/rubygems/pull/8052)
22
+
1
23
  # 2.5.19 (September 18, 2024)
2
24
 
3
25
  ## Enhancements:
@@ -4,8 +4,8 @@ module Bundler
4
4
  # Represents metadata from when the Bundler gem was built.
5
5
  module BuildMetadata
6
6
  # begin ivars
7
- @built_at = "2024-09-18".freeze
8
- @git_commit_sha = "d569990361".freeze
7
+ @built_at = "2024-10-03".freeze
8
+ @git_commit_sha = "5cc66a2380b".freeze
9
9
  @release = true
10
10
  # end ivars
11
11
 
@@ -12,7 +12,11 @@ module Bundler
12
12
 
13
13
  warn_if_root
14
14
 
15
- Bundler.self_manager.install_locked_bundler_and_restart_with_it_if_needed
15
+ if options[:local]
16
+ Bundler.self_manager.restart_with_locked_bundler_if_needed
17
+ else
18
+ Bundler.self_manager.install_locked_bundler_and_restart_with_it_if_needed
19
+ end
16
20
 
17
21
  Bundler::SharedHelpers.set_env "RB_USER_INSTALL", "1" if Gem.freebsd_platform?
18
22
 
@@ -97,28 +97,26 @@ module Bundler
97
97
  }
98
98
  end
99
99
 
100
- if outdated_gems.empty?
100
+ relevant_outdated_gems = if options_include_groups
101
+ outdated_gems.group_by {|g| g[:groups] }.sort.flat_map do |groups, gems|
102
+ contains_group = groups.split(", ").include?(options[:group])
103
+ next unless options[:groups] || contains_group
104
+
105
+ gems
106
+ end.compact
107
+ else
108
+ outdated_gems
109
+ end
110
+
111
+ if relevant_outdated_gems.empty?
101
112
  unless options[:parseable]
102
113
  Bundler.ui.info(nothing_outdated_message)
103
114
  end
104
115
  else
105
- if options_include_groups
106
- relevant_outdated_gems = outdated_gems.group_by {|g| g[:groups] }.sort.flat_map do |groups, gems|
107
- contains_group = groups.split(", ").include?(options[:group])
108
- next unless options[:groups] || contains_group
109
-
110
- gems
111
- end.compact
112
-
113
- if options[:parseable]
114
- print_gems(relevant_outdated_gems)
115
- else
116
- print_gems_table(relevant_outdated_gems)
117
- end
118
- elsif options[:parseable]
119
- print_gems(outdated_gems)
116
+ if options[:parseable]
117
+ print_gems(relevant_outdated_gems)
120
118
  else
121
- print_gems_table(outdated_gems)
119
+ print_gems_table(relevant_outdated_gems)
122
120
  end
123
121
 
124
122
  exit 1
@@ -317,7 +317,7 @@ module Bundler
317
317
 
318
318
  def lock(file_or_preserve_unknown_sections = false, preserve_unknown_sections_or_unused = false)
319
319
  if [true, false, nil].include?(file_or_preserve_unknown_sections)
320
- target_lockfile = lockfile || Bundler.default_lockfile
320
+ target_lockfile = lockfile
321
321
  preserve_unknown_sections = file_or_preserve_unknown_sections
322
322
  else
323
323
  target_lockfile = file_or_preserve_unknown_sections
@@ -39,7 +39,11 @@ def gemfile(install = false, options = {}, &gemfile)
39
39
  Bundler.ui = ui
40
40
  raise ArgumentError, "Unknown options: #{opts.keys.join(", ")}" unless opts.empty?
41
41
 
42
- Bundler.with_unbundled_env do
42
+ old_gemfile = ENV["BUNDLE_GEMFILE"]
43
+
44
+ Bundler.unbundle_env!
45
+
46
+ begin
43
47
  Bundler.instance_variable_set(:@bundle_path, Pathname.new(Gem.dir))
44
48
  Bundler::SharedHelpers.set_env "BUNDLE_GEMFILE", "Gemfile"
45
49
 
@@ -80,9 +84,11 @@ def gemfile(install = false, options = {}, &gemfile)
80
84
 
81
85
  runtime.require
82
86
  end
83
- end
84
-
85
- if ENV["BUNDLE_GEMFILE"].nil?
86
- ENV["BUNDLE_GEMFILE"] = ""
87
+ ensure
88
+ if old_gemfile
89
+ ENV["BUNDLE_GEMFILE"] = old_gemfile
90
+ else
91
+ ENV["BUNDLE_GEMFILE"] = ""
92
+ end
87
93
  end
88
94
  end
@@ -98,10 +98,10 @@ module Bundler
98
98
 
99
99
  def needs_switching?
100
100
  autoswitching_applies? &&
101
- released?(lockfile_version) &&
102
- !running?(lockfile_version) &&
103
- !updating? &&
104
- Bundler.settings[:version] != "system"
101
+ Bundler.settings[:version] != "system" &&
102
+ released?(restart_version) &&
103
+ !running?(restart_version) &&
104
+ !updating?
105
105
  end
106
106
 
107
107
  def autoswitching_applies?
@@ -84,8 +84,10 @@ module Bundler
84
84
  end
85
85
  end
86
86
 
87
- def not_a_bare_repository?
88
- git_local("rev-parse", "--is-bare-repository", dir: path).strip == "false"
87
+ def not_a_repository?
88
+ _, status = git_null("rev-parse", "--resolve-git-dir", path.to_s, dir: path)
89
+
90
+ !status.success?
89
91
  end
90
92
 
91
93
  def contains?(commit)
@@ -188,10 +188,10 @@ module Bundler
188
188
  end
189
189
 
190
190
  def specs(*)
191
- set_cache_path!(app_cache_path) if use_app_cache?
191
+ set_up_app_cache!(app_cache_path) if use_app_cache?
192
192
 
193
193
  if requires_checkout? && !@copied
194
- FileUtils.rm_rf(app_cache_path) if use_app_cache? && git_proxy.not_a_bare_repository?
194
+ FileUtils.rm_rf(app_cache_path) if use_app_cache? && git_proxy.not_a_repository?
195
195
 
196
196
  fetch
197
197
  checkout
@@ -320,6 +320,11 @@ module Bundler
320
320
  @install_path = path
321
321
  end
322
322
 
323
+ def set_up_app_cache!(path)
324
+ FileUtils.mkdir_p(path.join("refs"))
325
+ set_cache_path!(path)
326
+ end
327
+
323
328
  def has_app_cache?
324
329
  cached_revision && super
325
330
  end
@@ -53,6 +53,8 @@ module Bundler
53
53
  "source at `#{@path}`"
54
54
  end
55
55
 
56
+ alias_method :to_gemfile, :path
57
+
56
58
  def hash
57
59
  [self.class, expanded_path, version].hash
58
60
  end
@@ -45,8 +45,8 @@ module Bundler
45
45
  true
46
46
  end
47
47
 
48
- def activated
49
- stub.activated
48
+ def activated?
49
+ stub.activated?
50
50
  end
51
51
 
52
52
  def activated=(activated)
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: false
2
2
 
3
3
  module Bundler
4
- VERSION = "2.5.19".freeze
4
+ VERSION = "2.5.21".freeze
5
5
 
6
6
  def self.bundler_major_version
7
7
  @bundler_major_version ||= VERSION.split(".").first.to_i
data/lib/bundler.rb CHANGED
@@ -383,28 +383,12 @@ module Bundler
383
383
 
384
384
  # @return [Hash] Environment with all bundler-related variables removed
385
385
  def unbundled_env
386
- env = original_env
387
-
388
- if env.key?("BUNDLER_ORIG_MANPATH")
389
- env["MANPATH"] = env["BUNDLER_ORIG_MANPATH"]
390
- end
391
-
392
- env.delete_if {|k, _| k[0, 7] == "BUNDLE_" }
393
-
394
- if env.key?("RUBYOPT")
395
- rubyopt = env["RUBYOPT"].split(" ")
396
- rubyopt.delete("-r#{File.expand_path("bundler/setup", __dir__)}")
397
- rubyopt.delete("-rbundler/setup")
398
- env["RUBYOPT"] = rubyopt.join(" ")
399
- end
400
-
401
- if env.key?("RUBYLIB")
402
- rubylib = env["RUBYLIB"].split(File::PATH_SEPARATOR)
403
- rubylib.delete(__dir__)
404
- env["RUBYLIB"] = rubylib.join(File::PATH_SEPARATOR)
405
- end
386
+ unbundle_env(original_env)
387
+ end
406
388
 
407
- env
389
+ # Remove all bundler-related variables from ENV
390
+ def unbundle_env!
391
+ ENV.replace(unbundle_env(ENV))
408
392
  end
409
393
 
410
394
  # Run block with environment present before Bundler was activated
@@ -633,6 +617,30 @@ module Bundler
633
617
 
634
618
  private
635
619
 
620
+ def unbundle_env(env)
621
+ if env.key?("BUNDLER_ORIG_MANPATH")
622
+ env["MANPATH"] = env["BUNDLER_ORIG_MANPATH"]
623
+ end
624
+
625
+ env.delete_if {|k, _| k[0, 7] == "BUNDLE_" }
626
+ env.delete("BUNDLER_SETUP")
627
+
628
+ if env.key?("RUBYOPT")
629
+ rubyopt = env["RUBYOPT"].split(" ")
630
+ rubyopt.delete("-r#{File.expand_path("bundler/setup", __dir__)}")
631
+ rubyopt.delete("-rbundler/setup")
632
+ env["RUBYOPT"] = rubyopt.join(" ")
633
+ end
634
+
635
+ if env.key?("RUBYLIB")
636
+ rubylib = env["RUBYLIB"].split(File::PATH_SEPARATOR)
637
+ rubylib.delete(__dir__)
638
+ env["RUBYLIB"] = rubylib.join(File::PATH_SEPARATOR)
639
+ end
640
+
641
+ env
642
+ end
643
+
636
644
  def load_marshal(data, marshal_proc: nil)
637
645
  Marshal.load(data, marshal_proc)
638
646
  rescue TypeError => e
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bundler
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.19
4
+ version: 2.5.21
5
5
  platform: ruby
6
6
  authors:
7
7
  - André Arko
@@ -22,7 +22,7 @@ authors:
22
22
  autorequire:
23
23
  bindir: exe
24
24
  cert_chain: []
25
- date: 2024-09-18 00:00:00.000000000 Z
25
+ date: 2024-10-03 00:00:00.000000000 Z
26
26
  dependencies: []
27
27
  description: Bundler manages an application's dependencies through its entire life,
28
28
  across many machines, systematically and repeatably
@@ -405,7 +405,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
405
405
  - !ruby/object:Gem::Version
406
406
  version: 3.2.3
407
407
  requirements: []
408
- rubygems_version: 3.5.19
408
+ rubygems_version: 3.5.21
409
409
  signing_key:
410
410
  specification_version: 4
411
411
  summary: The best way to manage your application's dependencies