rubygems-update 3.0.1 → 3.0.2

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of rubygems-update might be problematic. Click here for more details.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 84e34e5df3fc661d6048666373208d92e141846b82c282103b9c09147332e2f9
4
- data.tar.gz: c68a1b3e27513d44638259dea753da7fb525cca99d7cd0c83baedd243b387917
3
+ metadata.gz: 6f4a014472fcee69bfe954776af762cbf8d02b8f74f80ec2ce2c86c3217f14fd
4
+ data.tar.gz: 1d73a7974284b6ad09a779760e1bd02e5699ae8cf5802b93a1e3ab8a38006a08
5
5
  SHA512:
6
- metadata.gz: ea053dd68d4d6913eb29c98f352a612140d81ae9577970ae9b34ecfc374d303a095f323cf02bb0ee15c5dfeb47ea7a216325597cc36db002521f67334718b5e4
7
- data.tar.gz: 3173221c5efc7ce6d1fdcc54aa70a47e3edd37ce5c86225b6d654f25dcc849ba20c90a23ff3fb15e9e7e5d5bfb2950eff241eb1822572e9658f41086aa352f75
6
+ metadata.gz: 81dad15ada9abd44d05c626d6cebdc861d40795d4435b61e0d8449158a37f7461474832279a69320a57b3f4ca155475e695b3c318a26eb21071e5cf158b236a2
7
+ data.tar.gz: 5daa3e68c8b644c7d621b80a15f2c3045c12737a544ec761e7c28cf0244df413a1294f093fc56e162180cf341c5ac7687a2650a6060097d14bc0267d60742f9f
@@ -1,5 +1,22 @@
1
1
  # coding: UTF-8
2
2
 
3
+ === 3.0.2 / 2019-01-01
4
+
5
+ Minor enhancements:
6
+
7
+ * Use Bundler-1.17.3. Pull request #2556 by SHIBATA Hiroshi.
8
+ * Fix document flag description. Pull request #2555 by Luis Sagastume.
9
+
10
+ Bug fixes:
11
+
12
+ * Fix tests when ruby --program-suffix is used without rubygems
13
+ --format-executable. Pull request #2549 by Jeremy Evans.
14
+ * Fix Gem::Requirement equality comparison when ~> operator is used. Pull
15
+ request #2554 by Grey Baker.
16
+ * Unset SOURCE_DATE_EPOCH in the test cases. Pull request #2558 by Sorah
17
+ Fukumori.
18
+ * Restore SOURCE_DATE_EPOCH. Pull request #2560 by SHIBATA Hiroshi.
19
+
3
20
  === 3.0.1 / 2018-12-23
4
21
 
5
22
  Bug fixes:
@@ -1,3 +1,14 @@
1
+ ## 1.17.3 (2018-12-27)
2
+
3
+ Bugfixes:
4
+
5
+ - Fix a Bundler error when installing gems on old versions of RubyGems ([#6839](https://github.com/bundler/bundler/issues/6839), @colby-swandale)
6
+ - Fix a rare issue where Bundler was removing itself after a `bundle clean` ([#6829](https://github.com/bundler/bundler/issues/6829), @colby-swandale)
7
+
8
+ Documentation:
9
+
10
+ - Add entry for the `bundle remove` command to the main Bundler manual page
11
+
1
12
  ## 1.17.2 (2018-12-11)
2
13
 
3
14
  - Add compatibility for bundler merge with Ruby 2.6
@@ -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 = "2018-12-22".freeze
8
- @git_commit_sha = "3fc4de72b".freeze
7
+ @built_at = "2019-01-01".freeze
8
+ @git_commit_sha = "d7089abb6".freeze
9
9
  @release = false
10
10
  # end ivars
11
11
 
@@ -10,6 +10,13 @@ module Bundler
10
10
  end
11
11
  end
12
12
 
13
+ attr_reader :options
14
+
15
+ def initialize(gem, options = {})
16
+ @options = {}
17
+ super
18
+ end
19
+
13
20
  def check_executable_overwrite(filename)
14
21
  # Bundler needs to install gems regardless of binstub overwriting
15
22
  end
@@ -19,9 +19,8 @@ module Bundler
19
19
  # can't point to the actual gemspec or else the require paths will be wrong
20
20
  s.loaded_from = File.expand_path("..", __FILE__)
21
21
  end
22
- if loaded_spec = Bundler.rubygems.loaded_specs("bundler")
23
- idx << loaded_spec # this has to come after the fake gemspec, to override it
24
- elsif local_spec = Bundler.rubygems.find_name("bundler").find {|s| s.version.to_s == VERSION }
22
+
23
+ if local_spec = Bundler.rubygems.find_name("bundler").find {|s| s.version.to_s == VERSION }
25
24
  idx << local_spec
26
25
  end
27
26
 
@@ -7,7 +7,7 @@ module Bundler
7
7
  # We're doing this because we might write tests that deal
8
8
  # with other versions of bundler and we are unsure how to
9
9
  # handle this better.
10
- VERSION = "1.17.2" unless defined?(::Bundler::VERSION)
10
+ VERSION = "1.17.3" unless defined?(::Bundler::VERSION)
11
11
 
12
12
  def self.overwrite_loaded_gem_version
13
13
  begin
@@ -94,6 +94,9 @@ We divide `bundle` subcommands into primary commands and utilities:
94
94
  * [`bundle doctor(1)`](bundle-doctor.1.html):
95
95
  Display warnings about common problems
96
96
 
97
+ * [`bundle remove(1)`](bundle-remove.1.html):
98
+ Removes gems from the Gemfile
99
+
97
100
  ## PLUGINS
98
101
 
99
102
  When running a command that isn't listed in PRIMARY COMMANDS or UTILITIES,
@@ -9,7 +9,7 @@
9
9
  require 'rbconfig'
10
10
 
11
11
  module Gem
12
- VERSION = "3.0.1".freeze
12
+ VERSION = "3.0.2".freeze
13
13
  end
14
14
 
15
15
  # Must be first since it unloads the prelude from 1.9.2
@@ -30,7 +30,7 @@ module Gem::InstallUpdateOptions
30
30
  options[:bin_dir] = File.expand_path(value)
31
31
  end
32
32
 
33
- add_option(:"Install/Update", '--[no-]document [TYPES]', Array,
33
+ add_option(:"Install/Update", '--document [TYPES]', Array,
34
34
  'Generate documentation for installed gems',
35
35
  'List the documentation types you wish to',
36
36
  'generate. For example: rdoc,ri') do |value, options|
@@ -267,7 +267,22 @@ class Gem::Requirement
267
267
 
268
268
  def ==(other) # :nodoc:
269
269
  return unless Gem::Requirement === other
270
- requirements == other.requirements
270
+
271
+ # An == check is always necessary
272
+ return false unless requirements == other.requirements
273
+
274
+ # An == check is sufficient unless any requirements use ~>
275
+ return true unless _tilde_requirements.any?
276
+
277
+ # If any requirements use ~> we use the stricter `#eql?` that also checks
278
+ # that version precision is the same
279
+ _tilde_requirements.eql?(other._tilde_requirements)
280
+ end
281
+
282
+ protected
283
+
284
+ def _tilde_requirements
285
+ requirements.select { |r| r.first == "~>" }
271
286
  end
272
287
 
273
288
  private
@@ -254,6 +254,7 @@ class Gem::TestCase < (defined?(Minitest::Test) ? Minitest::Test : MiniTest::Uni
254
254
  @orig_gem_env_requirements = ENV.to_hash
255
255
 
256
256
  ENV['GEM_VENDOR'] = nil
257
+ ENV['SOURCE_DATE_EPOCH'] = nil
257
258
 
258
259
  @current_dir = Dir.pwd
259
260
  @fetcher = nil
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = "rubygems-update"
5
- s.version = "3.0.1"
5
+ s.version = "3.0.2"
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
 
@@ -150,6 +150,11 @@ class TestGem < Gem::TestCase
150
150
  File.umask(umask)
151
151
  end
152
152
 
153
+ def test_self_install_permissions_with_format_executable
154
+ @format_executable = true
155
+ assert_self_install_permissions
156
+ end
157
+
153
158
  def assert_self_install_permissions
154
159
  mask = /mingw|mswin/ =~ RUBY_PLATFORM ? 0700 : 0777
155
160
  options = {
@@ -157,6 +162,7 @@ class TestGem < Gem::TestCase
157
162
  :prog_mode => 0510,
158
163
  :data_mode => 0640,
159
164
  :wrappers => true,
165
+ :format_executable => !!(@format_executable if defined?(@format_executable))
160
166
  }
161
167
  Dir.chdir @tempdir do
162
168
  Dir.mkdir 'bin'
@@ -182,8 +188,10 @@ class TestGem < Gem::TestCase
182
188
  prog_mode = (options[:prog_mode] & mask).to_s(8)
183
189
  dir_mode = (options[:dir_mode] & mask).to_s(8)
184
190
  data_mode = (options[:data_mode] & mask).to_s(8)
191
+ prog_name = 'foo.cmd'
192
+ prog_name = RUBY_INSTALL_NAME.sub('ruby', 'foo.cmd') if options[:format_executable]
185
193
  expected = {
186
- "bin/#{RUBY_INSTALL_NAME.sub('ruby', 'foo.cmd')}" => prog_mode,
194
+ "bin/#{prog_name}" => prog_mode,
187
195
  'gems/foo-1' => dir_mode,
188
196
  'gems/foo-1/bin' => dir_mode,
189
197
  'gems/foo-1/data' => dir_mode,
@@ -105,6 +105,7 @@ class TestGemPackage < Gem::Package::TarTestCase
105
105
  end
106
106
 
107
107
  def test_build_time_source_date_epoch
108
+ epoch = ENV["SOURCE_DATE_EPOCH"]
108
109
  ENV["SOURCE_DATE_EPOCH"] = "123456789"
109
110
 
110
111
  spec = Gem::Specification.new 'build', '1'
@@ -118,6 +119,8 @@ class TestGemPackage < Gem::Package::TarTestCase
118
119
  package = Gem::Package.new spec.file_name
119
120
 
120
121
  assert_equal Time.at(ENV["SOURCE_DATE_EPOCH"].to_i).utc, package.build_time
122
+ ensure
123
+ ENV["SOURCE_DATE_EPOCH"] = epoch
121
124
  end
122
125
 
123
126
  def test_add_files
@@ -11,9 +11,12 @@ class TestGemPackageTarWriter < Gem::Package::TarTestCase
11
11
  @data = 'abcde12345'
12
12
  @io = TempIO.new
13
13
  @tar_writer = Gem::Package::TarWriter.new @io
14
+ @epoch = ENV["SOURCE_DATE_EPOCH"]
15
+ ENV["SOURCE_DATE_EPOCH"] = nil
14
16
  end
15
17
 
16
18
  def teardown
19
+ ENV["SOURCE_DATE_EPOCH"] = @epoch
17
20
  @tar_writer.close unless @tar_writer.closed?
18
21
  @io.close!
19
22
 
@@ -20,6 +20,12 @@ class TestGemRequirement < Gem::TestCase
20
20
  refute_requirement_equal "= 1.2", "= 1.3"
21
21
  refute_requirement_equal "= 1.3", "= 1.2"
22
22
 
23
+ refute_requirement_equal "~> 1.3", "~> 1.3.0"
24
+ refute_requirement_equal "~> 1.3.0", "~> 1.3"
25
+
26
+ assert_requirement_equal ["> 2", "~> 1.3"], ["> 2.0", "~> 1.3"]
27
+ assert_requirement_equal ["> 2.0", "~> 1.3"], ["> 2", "~> 1.3"]
28
+
23
29
  refute_equal Object.new, req("= 1.2")
24
30
  refute_equal req("= 1.2"), Object.new
25
31
  end
@@ -1719,8 +1719,11 @@ dependencies: []
1719
1719
  end
1720
1720
 
1721
1721
  def test_date_use_env_source_date_epoch
1722
+ epoch = ENV["SOURCE_DATE_EPOCH"]
1722
1723
  ENV["SOURCE_DATE_EPOCH"] = "123456789"
1723
1724
  assert_equal Time.utc(1973,11,29,0,0,0), @a1.date
1725
+ ensure
1726
+ ENV["SOURCE_DATE_EPOCH"] = epoch
1724
1727
  end
1725
1728
 
1726
1729
  def test_dependencies
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.1
4
+ version: 3.0.2
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: 2018-12-22 00:00:00.000000000 Z
19
+ date: 2019-01-01 00:00:00.000000000 Z
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
22
  name: builder
@@ -811,8 +811,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
811
811
  - !ruby/object:Gem::Version
812
812
  version: '0'
813
813
  requirements: []
814
- rubyforge_project:
815
- rubygems_version: 2.7.6
814
+ rubygems_version: 3.0.1
816
815
  signing_key:
817
816
  specification_version: 4
818
817
  summary: RubyGems is a package management framework for Ruby.