rubygems-update 3.2.28 → 3.2.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ef3b3d5da1e7cb11b95714c00fa4e0b0026112870503550c694d5c502dab5339
4
- data.tar.gz: 7ec21881232ed07b1061a4570f5af5e80246f74cd20e8a27592f45c609c70f8d
3
+ metadata.gz: bcf64ee050b262bd965f82ba52dfdb8970e6115e75541566bbdace930cac6879
4
+ data.tar.gz: 7b3f9ab8071ebde24146ad94176a30d97ef82b64ad12dd6c29e9626a05df4aba
5
5
  SHA512:
6
- metadata.gz: 4806038e2893fd4957e02b09f6ed6289ec5759142c8ba3329500b5423aa4d1e6dddeb3f2f218667bfd17791b886f0a7d436b465795368217d9ee7e94d0e4479f
7
- data.tar.gz: 680548baf911d819513df953d56005d4bf59f903d5a37dc0fb24eb057f5e0cf7bcf77cad9821efb9962f95c13353f0858538ddc1ebc5844f31f8237d83e48c4b
6
+ metadata.gz: 56cdf955ae0347133c9c36a7936bdd615690714c791a48cefc2aa3be8d87e3bae1a553cc9ddc5c6160fefa05f65436b8bf572ffc02ee7e19a6cccb0bc11eb468
7
+ data.tar.gz: 461a8f477585578e7f7c94f59ae8bafdf4c6d4a4a7b826f41cfc25fe49349e5d895b97b8c028d652342dc447176547ea169a5779db0b166471e0a9e7147d491b
data/CHANGELOG.md CHANGED
@@ -1,3 +1,20 @@
1
+ # 3.2.29 / 2021-10-08
2
+
3
+ ## Enhancements:
4
+
5
+ * Only disallow FIXME/TODO for first word of gemspec description. Pull
6
+ request #4937 by duckinator
7
+
8
+ ## Bug fixes:
9
+
10
+ * Fix `wordy` method in `SourceFetchProblem` changing the password of
11
+ source. Pull request #4910 by Huangxiaodui
12
+
13
+ ## Performance:
14
+
15
+ * Improve `require` performance, particularly on systems with a lot of
16
+ gems installed. Pull request #4951 by pocke
17
+
1
18
  # 3.2.28 / 2021-09-23
2
19
 
3
20
  ## Enhancements:
data/bundler/CHANGELOG.md CHANGED
@@ -1,3 +1,11 @@
1
+ # 2.2.29 (October 8, 2021)
2
+
3
+ ## Enhancements:
4
+
5
+ - Require at least Ruby 2.6.0 for gems created with recent rubies [#4920](https://github.com/rubygems/rubygems/pull/4920)
6
+ - Include glob information in string representation of git sources to make generated lockfiles deterministic [#4947](https://github.com/rubygems/rubygems/pull/4947)
7
+ - Add missing `rubygem_push` prerequisite [#4930](https://github.com/rubygems/rubygems/pull/4930)
8
+
1
9
  # 2.2.28 (September 23, 2021)
2
10
 
3
11
  ## 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 = "2021-09-23".freeze
8
- @git_commit_sha = "99b72cbd55".freeze
7
+ @built_at = "2021-10-08".freeze
8
+ @git_commit_sha = "4440b035ef".freeze
9
9
  @release = true
10
10
  # end ivars
11
11
 
@@ -68,7 +68,7 @@ module Bundler
68
68
  :bundler_version => bundler_dependency_version,
69
69
  :git => use_git,
70
70
  :github_username => github_username.empty? ? "[USERNAME]" : github_username,
71
- :required_ruby_version => Gem.ruby_version < Gem::Version.new("2.4.a") ? "2.3.0" : "2.4.0",
71
+ :required_ruby_version => required_ruby_version,
72
72
  }
73
73
  ensure_safe_gem_name(name, constant_array)
74
74
 
@@ -169,7 +169,7 @@ module Bundler
169
169
  "For more information, see the RuboCop docs (https://docs.rubocop.org/en/stable/) " \
170
170
  "and the Ruby Style Guides (https://github.com/rubocop-hq/ruby-style-guide).")
171
171
  config[:rubocop] = true
172
- config[:rubocop_version] = Gem.ruby_version < Gem::Version.new("2.4.a") ? "0.81.0" : "1.7"
172
+ config[:rubocop_version] = rubocop_version
173
173
  Bundler.ui.info "RuboCop enabled in config"
174
174
  templates.merge!("rubocop.yml.tt" => ".rubocop.yml")
175
175
  end
@@ -350,5 +350,22 @@ module Bundler
350
350
  def open_editor(editor, file)
351
351
  thor.run(%(#{editor} "#{file}"))
352
352
  end
353
+
354
+ def required_ruby_version
355
+ if Gem.ruby_version < Gem::Version.new("2.4.a") then "2.3.0"
356
+ elsif Gem.ruby_version < Gem::Version.new("2.5.a") then "2.4.0"
357
+ elsif Gem.ruby_version < Gem::Version.new("2.6.a") then "2.5.0"
358
+ else
359
+ "2.6.0"
360
+ end
361
+ end
362
+
363
+ def rubocop_version
364
+ if Gem.ruby_version < Gem::Version.new("2.4.a") then "0.81.0"
365
+ elsif Gem.ruby_version < Gem::Version.new("2.5.a") then "1.12"
366
+ else
367
+ "1.21"
368
+ end
369
+ end
353
370
  end
354
371
  end
@@ -76,7 +76,7 @@ module Bundler
76
76
  tag_version { git_push(args[:remote]) } unless already_tagged?
77
77
  end
78
78
 
79
- task "release:rubygem_push" do
79
+ task "release:rubygem_push" => "build" do
80
80
  rubygem_push(built_gem_path) if gem_push?
81
81
  end
82
82
 
@@ -42,7 +42,7 @@ module Bundler
42
42
  %w[ref branch tag submodules].each do |opt|
43
43
  out << " #{opt}: #{options[opt]}\n" if options[opt]
44
44
  end
45
- out << " glob: #{@glob}\n" unless @glob == DEFAULT_GLOB
45
+ out << " glob: #{@glob}\n" unless default_glob?
46
46
  out << " specs:\n"
47
47
  end
48
48
 
@@ -75,12 +75,20 @@ module Bundler
75
75
  git_proxy.branch
76
76
  end
77
77
 
78
- rev = " (at #{at}@#{shortref_for_display(revision)})"
78
+ rev = "at #{at}@#{shortref_for_display(revision)}"
79
79
  rescue GitError
80
80
  ""
81
81
  end
82
82
 
83
- "#{@safe_uri}#{rev}"
83
+ specifiers = [rev, glob_for_display].compact
84
+ suffix =
85
+ if specifiers.any?
86
+ " (#{specifiers.join(", ")})"
87
+ else
88
+ ""
89
+ end
90
+
91
+ "#{@safe_uri}#{suffix}"
84
92
  end
85
93
 
86
94
  def name
@@ -282,6 +290,14 @@ module Bundler
282
290
  ref[0..11]
283
291
  end
284
292
 
293
+ def glob_for_display
294
+ default_glob? ? nil : "glob: #{@glob}"
295
+ end
296
+
297
+ def default_glob?
298
+ @glob == DEFAULT_GLOB
299
+ end
300
+
285
301
  def uri_hash
286
302
  if uri =~ %r{^\w+://(\w+@)?}
287
303
  # Downcase the domain component of the URI
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: false
2
2
 
3
3
  module Bundler
4
- VERSION = "2.2.28".freeze
4
+ VERSION = "2.2.29".freeze
5
5
 
6
6
  def self.bundler_major_version
7
7
  @bundler_major_version ||= VERSION.split(".").first.to_i
@@ -73,7 +73,7 @@ module Gem
73
73
  # Path to specification files of default gems.
74
74
 
75
75
  def self.default_specifications_dir
76
- File.join(Gem.default_dir, "specifications", "default")
76
+ @default_specifications_dir ||= File.join(Gem.default_dir, "specifications", "default")
77
77
  end
78
78
 
79
79
  ##
@@ -171,8 +171,7 @@ module Gem
171
171
  # An English description of the error.
172
172
 
173
173
  def wordy
174
- @source.uri.password = 'REDACTED' unless @source.uri.password.nil?
175
- "Unable to download data from #{@source.uri} - #{@error.message}"
174
+ "Unable to download data from #{Gem::Uri.new(@source.uri).redacted} - #{@error.message}"
176
175
  end
177
176
 
178
177
  ##
@@ -1556,8 +1556,8 @@ class Gem::Specification < Gem::BasicSpecification
1556
1556
  # the gem.build_complete file is missing.
1557
1557
 
1558
1558
  def build_extensions # :nodoc:
1559
- return if default_gem?
1560
1559
  return if extensions.empty?
1560
+ return if default_gem?
1561
1561
  return if File.exist? gem_build_complete_path
1562
1562
  return if !File.writable?(base_dir)
1563
1563
  return if !File.exist?(File.join(base_dir, 'extensions'))
@@ -2120,8 +2120,8 @@ class Gem::Specification < Gem::BasicSpecification
2120
2120
  # probably want to build_extensions
2121
2121
 
2122
2122
  def missing_extensions?
2123
- return false if default_gem?
2124
2123
  return false if extensions.empty?
2124
+ return false if default_gem?
2125
2125
  return false if File.exist? gem_build_complete_path
2126
2126
 
2127
2127
  true
@@ -381,7 +381,7 @@ http://spdx.org/licenses or '#{Gem::Licenses::NONSTANDARD}' for a nonstandard li
381
381
  end
382
382
 
383
383
  LAZY = '"FIxxxXME" or "TOxxxDO"'.gsub(/xxx/, '')
384
- LAZY_PATTERN = /^FI XME|^TO DO/x.freeze
384
+ LAZY_PATTERN = /\AFI XME|\ATO DO/x.freeze
385
385
  HOMEPAGE_URI_PATTERN = /\A[a-z][a-z\d+.-]*:/i.freeze
386
386
 
387
387
  def validate_lazy_metadata
data/lib/rubygems.rb CHANGED
@@ -8,7 +8,7 @@
8
8
  require 'rbconfig'
9
9
 
10
10
  module Gem
11
- VERSION = "3.2.28".freeze
11
+ VERSION = "3.2.29".freeze
12
12
  end
13
13
 
14
14
  # Must be first since it unloads the prelude from 1.9.2
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = "rubygems-update"
5
- s.version = "3.2.28"
5
+ s.version = "3.2.29"
6
6
  s.authors = ["Jim Weirich", "Chad Fowler", "Eric Hodel", "Luis Lavena", "Aaron Patterson", "Samuel Giddins", "André Arko", "Evan Phoenix", "Hiroshi SHIBATA"]
7
7
  s.email = ["", "", "drbrain@segment7.net", "luislavena@gmail.com", "aaron@tenderlovemaking.com", "segiddins@segiddins.me", "andre@arko.net", "evan@phx.io", "hsbt@ruby-lang.org"]
8
8
 
@@ -398,6 +398,7 @@ class Gem::TestCase < Test::Unit::TestCase
398
398
 
399
399
  ENV['GEM_PRIVATE_KEY_PASSPHRASE'] = PRIVATE_KEY_PASSPHRASE
400
400
 
401
+ Gem.instance_variable_set(:@default_specifications_dir, nil)
401
402
  if Gem.java_platform?
402
403
  @orig_default_gem_home = RbConfig::CONFIG['default_gem_home']
403
404
  RbConfig::CONFIG['default_gem_home'] = @gemhome
@@ -481,6 +482,7 @@ class Gem::TestCase < Test::Unit::TestCase
481
482
 
482
483
  RbConfig::CONFIG['bindir'] = @orig_bindir
483
484
 
485
+ Gem.instance_variable_set :@default_specifications_dir, nil
484
486
  if Gem.java_platform?
485
487
  RbConfig::CONFIG['default_gem_home'] = @orig_default_gem_home
486
488
  else
@@ -23,4 +23,14 @@ class TestGemSourceFetchProblem < Gem::TestCase
23
23
 
24
24
  refute_match sf.wordy, 'secret'
25
25
  end
26
+
27
+ def test_source_password_no_redacted
28
+ source = Gem::Source.new 'https://username:secret@gemsource.com'
29
+ error = RuntimeError.new 'test'
30
+
31
+ sf = Gem::SourceFetchProblem.new source, error
32
+ sf.wordy
33
+
34
+ assert_match 'secret', source.uri.to_s
35
+ end
26
36
  end
@@ -2795,6 +2795,20 @@ duplicate dependency on c (>= 1.2.3, development), (~> 1.2) use:
2795
2795
  assert_nothing_raised do
2796
2796
  @a1.validate
2797
2797
  end
2798
+
2799
+ # Adding #{f} at the start of the second or later line should be fine.
2800
+ @a1.description = "(some description)\n#{f}"
2801
+
2802
+ assert_nothing_raised do
2803
+ @a1.validate
2804
+ end
2805
+
2806
+ # Adding #{t} at the start of the second or later line should be fine.
2807
+ @a1.description = "(some description)\n#{t}"
2808
+
2809
+ assert_nothing_raised do
2810
+ @a1.validate
2811
+ end
2798
2812
  end
2799
2813
  end
2800
2814
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubygems-update
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.2.28
4
+ version: 3.2.29
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jim Weirich
@@ -16,7 +16,7 @@ authors:
16
16
  autorequire:
17
17
  bindir: bin
18
18
  cert_chain: []
19
- date: 2021-09-23 00:00:00.000000000 Z
19
+ date: 2021-10-08 00:00:00.000000000 Z
20
20
  dependencies: []
21
21
  description: |-
22
22
  A package (also known as a library) contains a set of functionality
@@ -771,7 +771,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
771
771
  - !ruby/object:Gem::Version
772
772
  version: '0'
773
773
  requirements: []
774
- rubygems_version: 3.2.28
774
+ rubygems_version: 3.2.29
775
775
  signing_key:
776
776
  specification_version: 4
777
777
  summary: RubyGems is a package management framework for Ruby.