rubygems-update 3.0.3 → 3.0.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (100) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +1 -0
  3. data/.travis.yml +2 -0
  4. data/CODE_OF_CONDUCT.md +10 -8
  5. data/CONTRIBUTING.md +7 -0
  6. data/History.txt +152 -0
  7. data/Manifest.txt +5 -3
  8. data/README.md +6 -0
  9. data/Rakefile +27 -7
  10. data/bundler/lib/bundler/build_metadata.rb +2 -2
  11. data/lib/rubygems.rb +7 -12
  12. data/lib/rubygems/command_manager.rb +6 -0
  13. data/lib/rubygems/commands/build_command.rb +28 -13
  14. data/lib/rubygems/commands/owner_command.rb +2 -0
  15. data/lib/rubygems/commands/push_command.rb +2 -0
  16. data/lib/rubygems/commands/setup_command.rb +9 -11
  17. data/lib/rubygems/commands/uninstall_command.rb +16 -6
  18. data/lib/rubygems/commands/which_command.rb +1 -3
  19. data/lib/rubygems/defaults.rb +1 -8
  20. data/lib/rubygems/dependency.rb +1 -1
  21. data/lib/rubygems/dependency_installer.rb +1 -2
  22. data/lib/rubygems/dependency_list.rb +1 -1
  23. data/lib/rubygems/exceptions.rb +0 -4
  24. data/lib/rubygems/gemcutter_utilities.rb +9 -5
  25. data/lib/rubygems/installer.rb +8 -5
  26. data/lib/rubygems/installer_test_case.rb +2 -2
  27. data/lib/rubygems/package/tar_header.rb +11 -2
  28. data/lib/rubygems/rdoc.rb +2 -2
  29. data/lib/rubygems/remote_fetcher.rb +15 -54
  30. data/lib/rubygems/request.rb +1 -1
  31. data/lib/rubygems/request_set/gem_dependency_api.rb +11 -10
  32. data/lib/rubygems/requirement.rb +0 -4
  33. data/lib/rubygems/resolver.rb +4 -1
  34. data/lib/rubygems/s3_uri_signer.rb +183 -0
  35. data/lib/rubygems/security_option.rb +0 -1
  36. data/lib/rubygems/specification.rb +21 -23
  37. data/lib/rubygems/ssl_certs/{index.rubygems.org → rubygems.org}/GlobalSignRootCA.pem +0 -0
  38. data/lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA_R3.pem +21 -0
  39. data/lib/rubygems/stub_specification.rb +1 -2
  40. data/lib/rubygems/test_case.rb +22 -12
  41. data/lib/rubygems/uninstaller.rb +1 -1
  42. data/lib/rubygems/util.rb +12 -0
  43. data/rubygems-update.gemspec +1 -1
  44. data/test/rubygems/ca_cert.pem +74 -65
  45. data/test/rubygems/client.pem +103 -45
  46. data/test/rubygems/ssl_cert.pem +78 -17
  47. data/test/rubygems/ssl_key.pem +25 -13
  48. data/test/rubygems/test_bundled_ca.rb +8 -5
  49. data/test/rubygems/test_gem.rb +45 -11
  50. data/test/rubygems/test_gem_bundler_version_finder.rb +4 -0
  51. data/test/rubygems/test_gem_command_manager.rb +10 -0
  52. data/test/rubygems/test_gem_commands_build_command.rb +1 -0
  53. data/test/rubygems/test_gem_commands_push_command.rb +15 -0
  54. data/test/rubygems/test_gem_commands_setup_command.rb +11 -7
  55. data/test/rubygems/test_gem_commands_uninstall_command.rb +80 -1
  56. data/test/rubygems/test_gem_ext_cmake_builder.rb +1 -1
  57. data/test/rubygems/test_gem_indexer.rb +15 -8
  58. data/test/rubygems/test_gem_installer.rb +85 -22
  59. data/test/rubygems/test_gem_package_tar_header.rb +41 -0
  60. data/test/rubygems/test_gem_rdoc.rb +1 -135
  61. data/test/rubygems/test_gem_remote_fetcher.rb +133 -14
  62. data/test/rubygems/test_gem_request.rb +4 -4
  63. data/test/rubygems/test_gem_request_set_gem_dependency_api.rb +80 -57
  64. data/test/rubygems/test_gem_security_policy.rb +1 -1
  65. data/test/rubygems/test_gem_specification.rb +29 -0
  66. data/test/rubygems/test_gem_stream_ui.rb +2 -2
  67. data/test/rubygems/test_gem_uninstaller.rb +21 -2
  68. data/test/rubygems/test_gem_util.rb +8 -0
  69. data/util/ci +6 -1
  70. data/util/cops/deprecations.rb +52 -0
  71. data/util/create_certs.sh +27 -0
  72. data/util/create_encrypted_key.rb +4 -4
  73. data/util/update_bundled_ca_certificates.rb +1 -3
  74. metadata +12 -57
  75. data/bundler/man/bundle-add.1 +0 -58
  76. data/bundler/man/bundle-binstubs.1 +0 -40
  77. data/bundler/man/bundle-check.1 +0 -31
  78. data/bundler/man/bundle-clean.1 +0 -24
  79. data/bundler/man/bundle-config.1 +0 -497
  80. data/bundler/man/bundle-doctor.1 +0 -44
  81. data/bundler/man/bundle-exec.1 +0 -165
  82. data/bundler/man/bundle-gem.1 +0 -80
  83. data/bundler/man/bundle-info.1 +0 -20
  84. data/bundler/man/bundle-init.1 +0 -25
  85. data/bundler/man/bundle-inject.1 +0 -33
  86. data/bundler/man/bundle-install.1 +0 -308
  87. data/bundler/man/bundle-list.1 +0 -50
  88. data/bundler/man/bundle-lock.1 +0 -84
  89. data/bundler/man/bundle-open.1 +0 -32
  90. data/bundler/man/bundle-outdated.1 +0 -155
  91. data/bundler/man/bundle-package.1 +0 -55
  92. data/bundler/man/bundle-platform.1 +0 -61
  93. data/bundler/man/bundle-pristine.1 +0 -34
  94. data/bundler/man/bundle-remove.1 +0 -31
  95. data/bundler/man/bundle-show.1 +0 -23
  96. data/bundler/man/bundle-update.1 +0 -394
  97. data/bundler/man/bundle-viz.1 +0 -39
  98. data/bundler/man/bundle.1 +0 -136
  99. data/lib/rubygems/ssl_certs/rubygems.global.ssl.fastly.net/DigiCertHighAssuranceEVRootCA.pem +0 -23
  100. data/lib/rubygems/ssl_certs/rubygems.org/AddTrustExternalCARoot.pem +0 -25
@@ -293,7 +293,7 @@ class TestGemSecurityPolicy < Gem::TestCase
293
293
 
294
294
  def test_subject
295
295
  assert_equal 'email:nobody@example', @no.subject(PUBLIC_CERT)
296
- assert_equal '/C=JP/O=JIN.GR.JP/OU=RRR/CN=CA', @no.subject(CA_CERT)
296
+ assert_equal '/C=JP/ST=Tokyo/O=RubyGemsTest/CN=CA', @no.subject(CA_CERT)
297
297
  end
298
298
 
299
299
  def test_verify
@@ -2419,6 +2419,35 @@ end
2419
2419
  assert_equal @a2, same_spec
2420
2420
  end
2421
2421
 
2422
+ def test_to_ruby_with_rsa_key
2423
+ rsa_key = OpenSSL::PKey::RSA.new(2048)
2424
+ @a2.signing_key = rsa_key
2425
+ ruby_code = @a2.to_ruby
2426
+
2427
+ expected = <<-SPEC
2428
+ # -*- encoding: utf-8 -*-
2429
+ # stub: a 2 ruby lib
2430
+
2431
+ Gem::Specification.new do |s|
2432
+ s.name = "a".freeze
2433
+ s.version = "2"
2434
+
2435
+ s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
2436
+ s.require_paths = ["lib".freeze]
2437
+ s.authors = ["A User".freeze]
2438
+ s.date = "#{Gem::Specification::TODAY.strftime "%Y-%m-%d"}"
2439
+ s.description = "This is a test description".freeze
2440
+ s.email = "example@example.com".freeze
2441
+ s.files = ["lib/code.rb".freeze]
2442
+ s.homepage = "http://example.com".freeze
2443
+ s.rubygems_version = "#{Gem::VERSION}".freeze
2444
+ s.summary = "this is a summary".freeze
2445
+ end
2446
+ SPEC
2447
+
2448
+ assert_equal expected, ruby_code
2449
+ end
2450
+
2422
2451
  def test_to_ruby_for_cache
2423
2452
  @a2.add_runtime_dependency 'b', '1'
2424
2453
  @a2.dependencies.first.instance_variable_set :@type, nil
@@ -37,7 +37,7 @@ class TestGemStreamUI < Gem::TestCase
37
37
  end
38
38
 
39
39
  def test_ask
40
- Timeout.timeout(1) do
40
+ Timeout.timeout(5) do
41
41
  expected_answer = "Arthur, King of the Britons"
42
42
  @in.string = "#{expected_answer}\n"
43
43
  actual_answer = @sui.ask("What is your name?")
@@ -55,7 +55,7 @@ class TestGemStreamUI < Gem::TestCase
55
55
  end
56
56
 
57
57
  def test_ask_for_password
58
- Timeout.timeout(1) do
58
+ Timeout.timeout(5) do
59
59
  expected_answer = "Arthur, King of the Britons"
60
60
  @in.string = "#{expected_answer}\n"
61
61
  actual_answer = @sui.ask_for_password("What is your name?")
@@ -22,9 +22,10 @@ class TestGemUninstaller < Gem::InstallerTestCase
22
22
  end
23
23
 
24
24
  def test_initialize_expand_path
25
- uninstaller = Gem::Uninstaller.new nil, :install_dir => '/foo//bar'
25
+ FileUtils.mkdir_p 'foo/bar'
26
+ uninstaller = Gem::Uninstaller.new nil, :install_dir => 'foo//bar'
26
27
 
27
- assert_match %r|/foo/bar$|, uninstaller.instance_variable_get(:@gem_home)
28
+ assert_match %r|foo/bar$|, uninstaller.instance_variable_get(:@gem_home)
28
29
  end
29
30
 
30
31
  def test_ask_if_ok
@@ -133,6 +134,7 @@ class TestGemUninstaller < Gem::InstallerTestCase
133
134
  end
134
135
 
135
136
  def test_remove_not_in_home
137
+ Dir.mkdir "#{@gemhome}2"
136
138
  uninstaller = Gem::Uninstaller.new nil, :install_dir => "#{@gemhome}2"
137
139
 
138
140
  e = assert_raises Gem::GemNotInHomeException do
@@ -149,6 +151,22 @@ class TestGemUninstaller < Gem::InstallerTestCase
149
151
  assert_path_exists @spec.gem_dir
150
152
  end
151
153
 
154
+ def test_remove_symlinked_gem_home
155
+ Dir.mktmpdir("gem_home") do |dir|
156
+ symlinked_gem_home = "#{dir}/#{File.basename(@gemhome)}"
157
+
158
+ FileUtils.ln_s(@gemhome, dir)
159
+
160
+ uninstaller = Gem::Uninstaller.new nil, :install_dir => symlinked_gem_home
161
+
162
+ use_ui ui do
163
+ uninstaller.remove @spec
164
+ end
165
+
166
+ refute_path_exists @spec.gem_dir
167
+ end
168
+ end
169
+
152
170
  def test_path_ok_eh
153
171
  uninstaller = Gem::Uninstaller.new nil
154
172
 
@@ -313,6 +331,7 @@ create_makefile '#{@spec.name}'
313
331
  end
314
332
 
315
333
  def test_uninstall_wrong_repo
334
+ Dir.mkdir "#{@gemhome}2"
316
335
  Gem.use_paths "#{@gemhome}2", [@gemhome]
317
336
 
318
337
  uninstaller = Gem::Uninstaller.new @spec.name, :executables => true
@@ -75,4 +75,12 @@ class TestGemUtil < Gem::TestCase
75
75
  assert_equal expected_paths.to_set, files_with_relative_base.to_set
76
76
  end
77
77
 
78
+ def test_correct_for_windows_path
79
+ path = "/C:/WINDOWS/Temp/gems"
80
+ assert_equal "C:/WINDOWS/Temp/gems", Gem::Util.correct_for_windows_path(path)
81
+
82
+ path = "/home/skillet"
83
+ assert_equal "/home/skillet", Gem::Util.correct_for_windows_path(path)
84
+ end
85
+
78
86
  end
data/util/ci CHANGED
@@ -47,7 +47,7 @@ end
47
47
  case ARGV
48
48
  when %w(before_script)
49
49
  if TOOL.rubygems?
50
- run('gem', %W(uninstall executable-hooks gem-wrappers bundler-unload -x --force -i #{`gem env home`.strip}@global))
50
+ run('ruby', %W(-I lib bin/gem uninstall executable-hooks gem-wrappers bundler-unload -x --force -i #{`gem env home`.strip}@global))
51
51
 
52
52
  if RUBY_VERSION >= "2.6.0"
53
53
  run('gem', %w(install minitest -v 5.4.3))
@@ -61,6 +61,11 @@ when %w(before_script)
61
61
  run('gem', %w(list --details))
62
62
  run('gem', %w(env))
63
63
  else
64
+ # Fix incorrect default gem specifications on ruby 2.6.1. Can be removed
65
+ # when 2.6.2 is released and we start testing against it. See
66
+ # https://bugs.ruby-lang.org/issues/15582 for more information
67
+ run('gem', %w(install etc:1.0.1 --default)) if RUBY_VERSION == "2.6.1"
68
+
64
69
  with_retries { run('rake', %w(spec:travis:deps)) }
65
70
  end
66
71
  when %w(rubocop)
@@ -0,0 +1,52 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RuboCop
4
+ module Cop
5
+ module Rubygems
6
+ # This cop enforces that no outdated deprecations are present on RubyGems
7
+ # code base.
8
+ #
9
+ # @example
10
+ #
11
+ # As of March, 2019
12
+ #
13
+ # # bad
14
+ # deprecate :safdfa, nil, 2018, 12
15
+ # deprecate :safdfa, nil, 2019, 03
16
+ #
17
+ # # good
18
+ # deprecate :safdfa, nil, 2019, 04
19
+ #
20
+ class Deprecations < Cop
21
+
22
+ MSG = "Remove `deprecate` calls with dates in the past, along with " \
23
+ "the methods they deprecate, or expand the deprecation horizons to " \
24
+ "a future date"
25
+
26
+ def on_send(node)
27
+ _receiver, method_name, *args = *node
28
+ return unless method_name == :deprecate
29
+
30
+ scheduled_year = args[2].children.last
31
+ scheduled_month = args[3].children.last
32
+
33
+ current_time = Time.now
34
+
35
+ current_year = current_time.year
36
+ current_month = current_time.month
37
+
38
+ if current_year >= scheduled_year || (current_year == scheduled_year && current_month >= scheduled_month)
39
+ add_offense(node)
40
+ end
41
+ end
42
+
43
+ private
44
+
45
+ def message(node)
46
+ format(MSG, method: node.method_name)
47
+ end
48
+
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,27 @@
1
+ #!/bin/sh
2
+
3
+ # cp /etc/ssl/openssl.cnf . # copied from OpenSSL 1.1.1b source
4
+
5
+ rm -rf demoCA/ server/ client/
6
+
7
+ mkdir demoCA demoCA/private demoCA/newcerts
8
+ touch demoCA/index.txt
9
+ echo 00 > demoCA/serial
10
+ openssl genrsa -out demoCA/private/cakey.pem 2048
11
+ openssl req -new -key demoCA/private/cakey.pem -out demoCA/careq.pem -subj "/C=JP/ST=Tokyo/O=RubyGemsTest/CN=CA"
12
+ openssl ca -batch -config openssl.cnf -extensions v3_ca -out demoCA/cacert.pem -startdate 090101000000Z -enddate 491231235959Z -batch -keyfile demoCA/private/cakey.pem -selfsign -infiles demoCA/careq.pem
13
+
14
+ mkdir server
15
+ openssl genrsa -out server/server.key 2048
16
+ openssl req -new -key server/server.key -out server/csr.pem -subj "/C=JP/ST=Tokyo/O=RubyGemsTest/CN=localhost"
17
+ openssl ca -batch -config openssl.cnf -startdate 090101000000Z -enddate 491231235959Z -in server/csr.pem -keyfile demoCA/private/cakey.pem -cert demoCA/cacert.pem -out server/cert.pem
18
+
19
+ mkdir client
20
+ openssl genrsa -out client/client.key 2048
21
+ openssl req -config openssl.cnf -new -key client/client.key -out client/csr.pem -subj "/C=JP/ST=Tokyo/O=RubyGemsTest/CN=client"
22
+ openssl ca -batch -config openssl.cnf -startdate 090101000000Z -enddate 491231235959Z -in client/csr.pem -keyfile demoCA/private/cakey.pem -cert demoCA/cacert.pem -out client/cert.pem
23
+
24
+ cp demoCA/cacert.pem $(git rev-parse --show-toplevel)/test/rubygems/ca_cert.pem
25
+ cp server/cert.pem $(git rev-parse --show-toplevel)/test/rubygems/ssl_cert.pem
26
+ cp server/server.key $(git rev-parse --show-toplevel)/test/rubygems/ssl_key.pem
27
+ cat client/cert.pem client/client.key > $(git rev-parse --show-toplevel)/test/rubygems/client.pem
@@ -1,15 +1,15 @@
1
1
  # frozen_string_literal: true
2
2
  require 'openssl'
3
3
 
4
- private_key_path = '../../test/rubygems/private_key.pem'
5
- private_key_path = File.expand_path private_key_path, __FILE__
4
+ test_path = File.expand_path('../../test/rubygems', __FILE__)
5
+
6
+ private_key_path = "#{test_path}/private_key.pem"
6
7
 
7
8
  key = OpenSSL::PKey::RSA.new File.read private_key_path
8
9
 
9
10
  cipher = OpenSSL::Cipher.new 'DES-CBC'
10
11
 
11
- encrypted_key_path = '../../test/rubygems/encrypted_private_key.pem'
12
- encrypted_key_path = File.expand_path encrypted_key_path, __FILE__
12
+ encrypted_key_path = "#{test_path}/encrypted_private_key.pem"
13
13
 
14
14
  open encrypted_key_path, 'w' do |io|
15
15
  io.write key.to_pem cipher, 'Foo bar'
@@ -5,14 +5,12 @@ require 'fileutils'
5
5
 
6
6
  URIS = [
7
7
  URI('https://rubygems.org'),
8
+ URI('https://www.rubygems.org'),
8
9
  URI('https://index.rubygems.org'),
9
10
  URI('https://staging.rubygems.org'),
10
- URI('https://fastly.rubygems.org'),
11
- URI('https://rubygems.global.ssl.fastly.net'),
12
11
  ].freeze
13
12
 
14
13
  HOSTNAMES_TO_MAP = [
15
- 'rubygems.global.ssl.fastly.net',
16
14
  'rubygems.org',
17
15
  'index.rubygems.org'
18
16
  ].freeze
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.0.3
4
+ version: 3.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jim Weirich
@@ -13,10 +13,10 @@ authors:
13
13
  - André Arko
14
14
  - Evan Phoenix
15
15
  - Hiroshi SHIBATA
16
- autorequire:
16
+ autorequire:
17
17
  bindir: bin
18
18
  cert_chain: []
19
- date: 2019-03-04 00:00:00.000000000 Z
19
+ date: 2020-12-09 00:00:00.000000000 Z
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
22
  name: builder
@@ -139,30 +139,6 @@ extra_rdoc_files:
139
139
  - bundler/LICENSE.md
140
140
  - bundler/README.md
141
141
  - hide_lib_for_update/note.txt
142
- - bundler/man/bundle-platform.1
143
- - bundler/man/bundle-update.1
144
- - bundler/man/bundle-info.1
145
- - bundler/man/bundle-init.1
146
- - bundler/man/bundle.1
147
- - bundler/man/bundle-exec.1
148
- - bundler/man/bundle-install.1
149
- - bundler/man/bundle-list.1
150
- - bundler/man/bundle-outdated.1
151
- - bundler/man/bundle-check.1
152
- - bundler/man/bundle-show.1
153
- - bundler/man/bundle-gem.1
154
- - bundler/man/bundle-open.1
155
- - bundler/man/bundle-lock.1
156
- - bundler/man/bundle-pristine.1
157
- - bundler/man/bundle-remove.1
158
- - bundler/man/bundle-doctor.1
159
- - bundler/man/bundle-binstubs.1
160
- - bundler/man/bundle-viz.1
161
- - bundler/man/bundle-package.1
162
- - bundler/man/bundle-add.1
163
- - bundler/man/bundle-config.1
164
- - bundler/man/bundle-clean.1
165
- - bundler/man/bundle-inject.1
166
142
  files:
167
143
  - ".rubocop.yml"
168
144
  - ".travis.yml"
@@ -406,53 +382,29 @@ files:
406
382
  - bundler/lib/bundler/vlad.rb
407
383
  - bundler/lib/bundler/worker.rb
408
384
  - bundler/lib/bundler/yaml_serializer.rb
409
- - bundler/man/bundle-add.1
410
385
  - bundler/man/bundle-add.ronn
411
- - bundler/man/bundle-binstubs.1
412
386
  - bundler/man/bundle-binstubs.ronn
413
- - bundler/man/bundle-check.1
414
387
  - bundler/man/bundle-check.ronn
415
- - bundler/man/bundle-clean.1
416
388
  - bundler/man/bundle-clean.ronn
417
- - bundler/man/bundle-config.1
418
389
  - bundler/man/bundle-config.ronn
419
- - bundler/man/bundle-doctor.1
420
390
  - bundler/man/bundle-doctor.ronn
421
- - bundler/man/bundle-exec.1
422
391
  - bundler/man/bundle-exec.ronn
423
- - bundler/man/bundle-gem.1
424
392
  - bundler/man/bundle-gem.ronn
425
- - bundler/man/bundle-info.1
426
393
  - bundler/man/bundle-info.ronn
427
- - bundler/man/bundle-init.1
428
394
  - bundler/man/bundle-init.ronn
429
- - bundler/man/bundle-inject.1
430
395
  - bundler/man/bundle-inject.ronn
431
- - bundler/man/bundle-install.1
432
396
  - bundler/man/bundle-install.ronn
433
- - bundler/man/bundle-list.1
434
397
  - bundler/man/bundle-list.ronn
435
- - bundler/man/bundle-lock.1
436
398
  - bundler/man/bundle-lock.ronn
437
- - bundler/man/bundle-open.1
438
399
  - bundler/man/bundle-open.ronn
439
- - bundler/man/bundle-outdated.1
440
400
  - bundler/man/bundle-outdated.ronn
441
- - bundler/man/bundle-package.1
442
401
  - bundler/man/bundle-package.ronn
443
- - bundler/man/bundle-platform.1
444
402
  - bundler/man/bundle-platform.ronn
445
- - bundler/man/bundle-pristine.1
446
403
  - bundler/man/bundle-pristine.ronn
447
- - bundler/man/bundle-remove.1
448
404
  - bundler/man/bundle-remove.ronn
449
- - bundler/man/bundle-show.1
450
405
  - bundler/man/bundle-show.ronn
451
- - bundler/man/bundle-update.1
452
406
  - bundler/man/bundle-update.ronn
453
- - bundler/man/bundle-viz.1
454
407
  - bundler/man/bundle-viz.ronn
455
- - bundler/man/bundle.1
456
408
  - bundler/man/bundle.ronn
457
409
  - bundler/man/gemfile.5.ronn
458
410
  - hide_lib_for_update/note.txt
@@ -603,6 +555,7 @@ files:
603
555
  - lib/rubygems/resolver/stats.rb
604
556
  - lib/rubygems/resolver/vendor_set.rb
605
557
  - lib/rubygems/resolver/vendor_specification.rb
558
+ - lib/rubygems/s3_uri_signer.rb
606
559
  - lib/rubygems/safe_yaml.rb
607
560
  - lib/rubygems/security.rb
608
561
  - lib/rubygems/security/policies.rb
@@ -625,9 +578,8 @@ files:
625
578
  - lib/rubygems/specification.rb
626
579
  - lib/rubygems/specification_policy.rb
627
580
  - lib/rubygems/ssl_certs/.document
628
- - lib/rubygems/ssl_certs/index.rubygems.org/GlobalSignRootCA.pem
629
- - lib/rubygems/ssl_certs/rubygems.global.ssl.fastly.net/DigiCertHighAssuranceEVRootCA.pem
630
- - lib/rubygems/ssl_certs/rubygems.org/AddTrustExternalCARoot.pem
581
+ - lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA.pem
582
+ - lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA_R3.pem
631
583
  - lib/rubygems/stub_specification.rb
632
584
  - lib/rubygems/syck_hack.rb
633
585
  - lib/rubygems/test_case.rb
@@ -829,7 +781,9 @@ files:
829
781
  - test/rubygems/wrong_key_cert_32.pem
830
782
  - util/CL2notes
831
783
  - util/ci
784
+ - util/cops/deprecations.rb
832
785
  - util/create_certs.rb
786
+ - util/create_certs.sh
833
787
  - util/create_encrypted_key.rb
834
788
  - util/generate_spdx_license_list.rb
835
789
  - util/patch_with_prs.rb
@@ -841,7 +795,7 @@ licenses:
841
795
  - Ruby
842
796
  - MIT
843
797
  metadata: {}
844
- post_install_message:
798
+ post_install_message:
845
799
  rdoc_options:
846
800
  - "--main"
847
801
  - README.md
@@ -859,8 +813,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
859
813
  - !ruby/object:Gem::Version
860
814
  version: '0'
861
815
  requirements: []
862
- rubygems_version: 3.1.0.pre1
863
- signing_key:
816
+ rubyforge_project:
817
+ rubygems_version: 2.7.6.2
818
+ signing_key:
864
819
  specification_version: 4
865
820
  summary: RubyGems is a package management framework for Ruby.
866
821
  test_files: []
@@ -1,58 +0,0 @@
1
- .\" generated with Ronn/v0.7.3
2
- .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
- .
4
- .TH "BUNDLE\-ADD" "1" "November 2018" "" ""
5
- .
6
- .SH "NAME"
7
- \fBbundle\-add\fR \- Add gem to the Gemfile and run bundle install
8
- .
9
- .SH "SYNOPSIS"
10
- \fBbundle add\fR \fIGEM_NAME\fR [\-\-group=GROUP] [\-\-version=VERSION] [\-\-source=SOURCE] [\-\-skip\-install] [\-\-strict] [\-\-optimistic]
11
- .
12
- .SH "DESCRIPTION"
13
- Adds the named gem to the Gemfile and run \fBbundle install\fR\. \fBbundle install\fR can be avoided by using the flag \fB\-\-skip\-install\fR\.
14
- .
15
- .P
16
- Example:
17
- .
18
- .P
19
- bundle add rails
20
- .
21
- .P
22
- bundle add rails \-\-version "< 3\.0, > 1\.1"
23
- .
24
- .P
25
- bundle add rails \-\-version "~> 5\.0\.0" \-\-source "https://gems\.example\.com" \-\-group "development"
26
- .
27
- .P
28
- bundle add rails \-\-skip\-install
29
- .
30
- .P
31
- bundle add rails \-\-group "development, test"
32
- .
33
- .SH "OPTIONS"
34
- .
35
- .TP
36
- \fB\-\-version\fR, \fB\-v\fR
37
- Specify version requirements(s) for the added gem\.
38
- .
39
- .TP
40
- \fB\-\-group\fR, \fB\-g\fR
41
- Specify the group(s) for the added gem\. Multiple groups should be separated by commas\.
42
- .
43
- .TP
44
- \fB\-\-source\fR, , \fB\-s\fR
45
- Specify the source for the added gem\.
46
- .
47
- .TP
48
- \fB\-\-skip\-install\fR
49
- Adds the gem to the Gemfile but does not install it\.
50
- .
51
- .TP
52
- \fB\-\-optimistic\fR
53
- Adds optimistic declaration of version
54
- .
55
- .TP
56
- \fB\-\-strict\fR
57
- Adds strict declaration of version
58
-