rubygems-update 3.2.28 → 3.2.29

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: 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.