rspec-core 3.12.2 → 3.13.2

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: e105bb79ced0094703c116de121aced72afd16f580c3faba5aa9da6c7d84316d
4
- data.tar.gz: 7f5df2dec8edeb01d39c2296331d5a24aa2b8c2f4122763045edf4d27531df56
3
+ metadata.gz: 1a0cd38f51cf638690afe2b845336ad8539421323e3e9efcdbd83cdfd6ec5070
4
+ data.tar.gz: 405327927cf750d0a4394f9bc49dc326ac9896aa0ed3ee23cf0145e9a2dbd802
5
5
  SHA512:
6
- metadata.gz: 64d5b3ad7ccd921c553ef73c7870d4118d5ad6de826a5ed26190983d802455c1caf80f62a9982aad70492ba40b568d2e84fb19f8ffde6940ecf37100953a20d7
7
- data.tar.gz: 04ac5e2f690218999a7a936319d7e4f2a995cc796364d9c3af5a0db6065d271be0e2445c5f7038b85ccfe4bf03ae7d263600e4de36cca4c8e6e241e51fcb4bbb
6
+ metadata.gz: 253ed53ab962eba6aa83f6ae2687d49b0b1ef12d6cdc25659016f08c298c2ac6680c9b4b590d8589804ba167c67b6299336e786c6a94f954b79d3ed0b0c0f4e7
7
+ data.tar.gz: 70246622e97de4556919c9eac2d307a5a79e3552b8b4d5eb457827873c306e47bea6896b4c07b0a95f1e9b1ccf0de01ec9a2c59528e15392e19f82dfaed32b4d
checksums.yaml.gz.sig CHANGED
Binary file
data/Changelog.md CHANGED
@@ -1,5 +1,45 @@
1
1
  ### Development
2
- [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.12.2...3-12-maintenance)
2
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.13.2...3-13-maintenance)
3
+
4
+ ### 3.13.2 / 2024-10-18
5
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.13.1...v3.13.2)
6
+
7
+ Bug fixes:
8
+
9
+ * `RSpec::Configuration#requires` will reflect files already required, whilst requiring
10
+ them. (Jon Rowe, #3117)
11
+
12
+ ### 3.13.1 / 2024-09-02
13
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.13.0...v3.13.1)
14
+
15
+ Bug fixes:
16
+
17
+ * Sort ids to run as the original order to fix `--bisect`. (Maki Kawahara, #3093)
18
+
19
+ ### 3.13.0 / 2024-02-04
20
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.12.3...v3.13.0)
21
+
22
+ Enhancements:
23
+
24
+ * Support the `--backtrace` flag when using the JSON formatter. (Matt Larraz, #2980)
25
+ * Ignore commented out lines in CLI config files (e.g. `.rspec`). (Junichi Ito, #2984)
26
+ * Add `pending_failure_output` config option to allow skipping backtraces or
27
+ muting pending specs output. (Phil Pirozhkov, #2957)
28
+ * Process `--dry-run` before configuration flags that read files so that introspecting
29
+ it returns the correct value. (Xenor Chang, #3008)
30
+ * Allow specifying custom ordering strategies via `--order`. (Jon Rowe, #3025)
31
+ * Use the improved `syntax_suggest` output for `SyntaxError` when available.
32
+ (Richard Schneeman, #3015, #3026)
33
+ * Add config option (`RSpec::Core::Configuration#full_cause_backtrace`) to print the
34
+ entire backtrace of an exception cause. (David Taylor, #3046)
35
+
36
+ ### 3.12.3 / 2024-02-04
37
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.12.2...v3.12.3)
38
+
39
+ Bug fixes:
40
+
41
+ * Use `__send__` in output wrapper to avoid issues with IO objects that implement `send`
42
+ like `Socket`. (Richard Platel, #3045)
3
43
 
4
44
  ### 3.12.2 / 2023-04-18
5
45
  [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.12.1...v3.12.2)
data/README.md CHANGED
@@ -116,6 +116,11 @@ pretty much the same as `shared_examples` and `include_examples`, providing
116
116
  more accurate naming when you share hooks, `let` declarations, helper methods,
117
117
  etc, but no examples.
118
118
 
119
+ If you want to reuse shared examples or contexts across your RSpec suite you can
120
+ define them in a stand alone _*.rb_ files (_spec/support/shared_examples/definition.rb_
121
+ for example). But you will have to manually `require` them (there is no autoloading of
122
+ _spec/support/_ directory unless you set it up yourself).
123
+
119
124
  ## Metadata
120
125
 
121
126
  rspec-core stores a metadata hash with every example and group, which
@@ -136,7 +136,7 @@ module RSpec
136
136
  end
137
137
 
138
138
  def get_expected_failures_for?(ids)
139
- ids_to_run = ids + failed_example_ids
139
+ ids_to_run = all_example_ids & (ids + failed_example_ids)
140
140
  notify(
141
141
  :bisect_individual_run_start,
142
142
  :command => shell_command.repro_command_from(ids_to_run),
@@ -102,6 +102,7 @@ module RSpec
102
102
  private
103
103
 
104
104
  def run_specs(run_descriptor)
105
+ # :nocov: - Executed in a forked process, by integration/bisect_spec
105
106
  $stdout = $stderr = @spec_output
106
107
  formatter = CaptureFormatter.new(run_descriptor.failed_example_ids)
107
108
 
@@ -125,6 +126,7 @@ module RSpec
125
126
  else
126
127
  @channel.send(latest_run_results)
127
128
  end
129
+ # :nocov:
128
130
  end
129
131
  end
130
132
 
@@ -453,11 +453,30 @@ module RSpec
453
453
  add_setting :threadsafe
454
454
 
455
455
  # @macro add_setting
456
- # Maximum count of failed source lines to display in the failure reports.
457
- # (default `10`).
456
+ # Maximum count of failed source lines to display in the failure reports
457
+ # (defaults to `10`).
458
458
  # return [Integer]
459
459
  add_setting :max_displayed_failure_line_count
460
460
 
461
+ # @macro full_cause_backtrace
462
+ # Display the full backtrace of an exceptions cause (defaults to `false`).
463
+ # return [Boolean]
464
+ add_setting :full_cause_backtrace
465
+
466
+ # @macro add_setting
467
+ # Format the output for pending examples. Can be set to:
468
+ # - :full (default) - pending examples appear similarly to failures
469
+ # - :no_backtrace - same as above, but with no backtrace
470
+ # - :skip - do not show the section at all
471
+ # return [Symbol]
472
+ add_read_only_setting :pending_failure_output
473
+ def pending_failure_output=(mode)
474
+ raise ArgumentError,
475
+ "`pending_failure_output` can be set to :full, :no_backtrace, " \
476
+ "or :skip" unless [:full, :no_backtrace, :skip].include?(mode)
477
+ @pending_failure_output = mode
478
+ end
479
+
461
480
  # Determines which bisect runner implementation gets used to run subsets
462
481
  # of the suite during a bisection. Your choices are:
463
482
  #
@@ -557,8 +576,10 @@ module RSpec
557
576
  @derived_metadata_blocks = FilterableItemRepository::QueryOptimized.new(:any?)
558
577
  @threadsafe = true
559
578
  @max_displayed_failure_line_count = 10
579
+ @full_cause_backtrace = false
560
580
  @world = World::Null
561
581
  @shared_context_metadata_behavior = :trigger_inclusion
582
+ @pending_failure_output = :full
562
583
 
563
584
  define_built_in_hooks
564
585
  end
@@ -1381,6 +1402,9 @@ module RSpec
1381
1402
  #
1382
1403
  # # included in examples with `:type => :request` metadata
1383
1404
  # config.include(AuthenticationHelpers, :type => :request)
1405
+ #
1406
+ # # included in examples where the `:type` metadata matches a proc condition
1407
+ # config.include(AuthenticationHelpers, :type => proc { |type, _metadata| [:request, :controller].include?(type) })
1384
1408
  # end
1385
1409
  #
1386
1410
  # describe "edit profile", :preferences, :type => :request do
@@ -1573,8 +1597,10 @@ module RSpec
1573
1597
  def requires=(paths)
1574
1598
  directories = ['lib', default_path].select { |p| File.directory? p }
1575
1599
  RSpec::Core::RubyProject.add_to_load_path(*directories)
1576
- paths.each { |path| load_file_handling_errors(:require, path) }
1577
- @requires += paths
1600
+ paths.each { |path|
1601
+ load_file_handling_errors(:require, path)
1602
+ @requires << path
1603
+ }
1578
1604
  end
1579
1605
 
1580
1606
  # @private
@@ -1743,8 +1769,9 @@ module RSpec
1743
1769
  # @private
1744
1770
  RAISE_ERROR_WARNING_NOTIFIER = lambda { |message| raise message }
1745
1771
 
1746
- # Turns warnings into errors. This can be useful when
1772
+ # Turns RSpec warnings into errors. This can be useful when
1747
1773
  # you want RSpec to run in a 'strict' no warning situation.
1774
+ # (Note this does not capture or raise on Ruby warnings).
1748
1775
  #
1749
1776
  # @example
1750
1777
  #
@@ -2120,6 +2147,13 @@ module RSpec
2120
2147
  suggestions = DidYouMean.new(relative_file).call
2121
2148
  reporter.notify_non_example_exception(ex, "An error occurred while loading #{relative_file}.#{suggestions}")
2122
2149
  RSpec.world.wants_to_quit = true
2150
+ rescue SyntaxError => ex
2151
+ relative_file = Metadata.relative_path(file)
2152
+ reporter.notify_non_example_exception(
2153
+ ex,
2154
+ "While loading #{relative_file} a `raise SyntaxError` occurred, RSpec will now quit."
2155
+ )
2156
+ RSpec.world.rspec_is_quitting = true
2123
2157
  rescue Support::AllExceptionsExceptOnesWeMustNotRescue => ex
2124
2158
  relative_file = Metadata.relative_path(file)
2125
2159
  reporter.notify_non_example_exception(ex, "An error occurred while loading #{relative_file}.")
@@ -79,6 +79,10 @@ module RSpec
79
79
  # deprecation (or otherwise access the reporter).
80
80
  :deprecation_stream,
81
81
 
82
+ # In order for `RSpec.configuration.dry_run?` to return `true` during
83
+ # processing the `requires` option, it must be parsed before it.
84
+ :dry_run,
85
+
82
86
  # load paths depend on nothing, but must be set before `requires`
83
87
  # to support load-path-relative requires.
84
88
  :libs,
@@ -169,9 +173,11 @@ module RSpec
169
173
  def args_from_options_file(path)
170
174
  return [] unless path && File.exist?(path)
171
175
  config_string = options_file_as_erb_string(path)
172
- FlatMap.flat_map(config_string.split(/\n+/), &:shellsplit)
176
+ config_lines = config_string.split(/\n+/).reject { |s| s =~ /\A\s*#/ }
177
+ FlatMap.flat_map(config_lines, &:shellsplit)
173
178
  end
174
179
 
180
+ # :nocov:
175
181
  def options_file_as_erb_string(path)
176
182
  if RUBY_VERSION >= '2.6'
177
183
  ERB.new(File.read(path), :trim_mode => '-').result(binding)
@@ -179,6 +185,7 @@ module RSpec
179
185
  ERB.new(File.read(path), nil, '-').result(binding)
180
186
  end
181
187
  end
188
+ # :nocov:
182
189
 
183
190
  def custom_options_file
184
191
  command_line_options[:custom_options_file]
@@ -11,6 +11,7 @@ module RSpec
11
11
 
12
12
  if defined?(::DidYouMean::SpellChecker)
13
13
  # provide probable suggestions
14
+ # :nocov: - not installed on CI
14
15
  def call
15
16
  checker = ::DidYouMean::SpellChecker.new(:dictionary => Dir["spec/**/*.rb"])
16
17
  probables = checker.correct(relative_file_name.sub('./', ''))[0..2]
@@ -18,15 +19,19 @@ module RSpec
18
19
 
19
20
  formats probables
20
21
  end
22
+ # :nocov:
21
23
  else
22
24
  # return a hint if API for ::DidYouMean::SpellChecker not supported
25
+ # :nocov:
23
26
  def call
24
27
  "\nHint: Install the `did_you_mean` gem in order to provide suggestions for similarly named files."
25
28
  end
29
+ # :nocov:
26
30
  end
27
31
 
28
32
  private
29
33
 
34
+ # :nocov:
30
35
  def formats(probables)
31
36
  rspec_format = probables.map { |s, _| "rspec ./#{s}" }
32
37
  red_font(top_and_tail rspec_format)
@@ -41,6 +46,7 @@ module RSpec
41
46
  colorizer = ::RSpec::Core::Formatters::ConsoleCodes
42
47
  colorizer.wrap mytext, :failure
43
48
  end
49
+ # :nocov:
44
50
  end
45
51
  end
46
52
  end
@@ -56,7 +56,12 @@ module RSpec
56
56
  end
57
57
 
58
58
  unless last_cause.backtrace.nil? || last_cause.backtrace.empty?
59
- cause << (" #{backtrace_formatter.format_backtrace(last_cause.backtrace, example.metadata).first}")
59
+ lines = backtrace_formatter.format_backtrace(last_cause.backtrace, example.metadata)
60
+ lines = [lines[0]] unless RSpec.configuration.full_cause_backtrace # rubocop:disable Metrics/BlockNesting
61
+
62
+ lines.each do |line|
63
+ cause << (" #{line}")
64
+ end
60
65
  end
61
66
  end
62
67
 
@@ -175,11 +180,25 @@ module RSpec
175
180
  end
176
181
 
177
182
  # rubocop:disable Lint/RescueException
178
- def exception_message_string(exception)
179
- exception.message.to_s
180
- rescue Exception => other
181
- "A #{exception.class} for which `exception.message.to_s` raises #{other.class}."
183
+ # :nocov:
184
+ if SyntaxError.instance_methods.include?(:detailed_message)
185
+ def exception_message_string(exception)
186
+ case exception
187
+ when SyntaxError then exception.detailed_message.to_s
188
+ else
189
+ exception.message.to_s
190
+ end
191
+ rescue Exception => other
192
+ "A #{exception.class} for which `exception.message.to_s` raises #{other.class}."
193
+ end
194
+ else
195
+ def exception_message_string(exception)
196
+ exception.message.to_s
197
+ rescue Exception => other
198
+ "A #{exception.class} for which `exception.message.to_s` raises #{other.class}."
199
+ end
182
200
  end
201
+ # :nocov:
183
202
  # rubocop:enable Lint/RescueException
184
203
 
185
204
  def exception_lines
@@ -235,7 +254,9 @@ module RSpec
235
254
  rescue SnippetExtractor::NoSuchLineError
236
255
  ["Unable to find matching line in #{file_path}"]
237
256
  rescue SecurityError
257
+ # :nocov: - SecurityError is no longer produced starting in ruby 2.7
238
258
  ["Unable to read failed line"]
259
+ # :nocov:
239
260
  end
240
261
 
241
262
  def find_failed_line
@@ -267,9 +288,11 @@ module RSpec
267
288
  encoded_string(description)
268
289
  end
269
290
  else # for 1.8.7
291
+ # :nocov:
270
292
  def encoded_description(description)
271
293
  description
272
294
  end
295
+ # :nocov:
273
296
  end
274
297
 
275
298
  def exception_backtrace
@@ -312,10 +335,14 @@ module RSpec
312
335
  ]
313
336
  }
314
337
  elsif @execution_result.status == :pending
315
- {
338
+ options = {
316
339
  :message_color => RSpec.configuration.pending_color,
317
340
  :detail_formatter => PENDING_DETAIL_FORMATTER
318
341
  }
342
+ if RSpec.configuration.pending_failure_output == :no_backtrace
343
+ options[:backtrace_formatter] = EmptyBacktraceFormatter
344
+ end
345
+ options
319
346
  end
320
347
  end
321
348
 
@@ -93,7 +93,9 @@ module RSpec
93
93
  "# Couldn't get snippet for #{file}"
94
94
  end
95
95
  rescue SecurityError
96
+ # :nocov: - SecurityError is no longer produced starting in ruby 2.7
96
97
  "# Couldn't get snippet for #{file}"
98
+ # :nocov:
97
99
  end
98
100
 
99
101
  # @api private
@@ -32,15 +32,16 @@ module RSpec
32
32
  @output_hash[:summary_line] = summary.totals_line
33
33
  end
34
34
 
35
- def stop(notification)
36
- @output_hash[:examples] = notification.examples.map do |example|
37
- format_example(example).tap do |hash|
38
- e = example.exception
35
+ def stop(group_notification)
36
+ @output_hash[:examples] = group_notification.notifications.map do |notification|
37
+ format_example(notification.example).tap do |hash|
38
+ e = notification.example.exception
39
+
39
40
  if e
40
- hash[:exception] = {
41
+ hash[:exception] = {
41
42
  :class => e.class.name,
42
43
  :message => e.message,
43
- :backtrace => e.backtrace,
44
+ :backtrace => notification.formatted_backtrace,
44
45
  }
45
46
  end
46
47
  end
@@ -461,7 +461,7 @@ module RSpec
461
461
  # TODO: consider making this an error in RSpec 4. For SemVer reasons,
462
462
  # we are only warning in RSpec 3.
463
463
  RSpec.warn_with "WARNING: `around(:context)` hooks are not supported and " \
464
- "behave like `around(:example)."
464
+ "behave like `around(:example)`."
465
465
  end
466
466
 
467
467
  hook = HOOK_TYPES[position][scope].new(block, options)
@@ -47,7 +47,7 @@ module RSpec
47
47
  return nil if line == '-e:1'.freeze
48
48
  line
49
49
  rescue SecurityError
50
- # :nocov:
50
+ # :nocov: - SecurityError is no longer produced starting in ruby 2.7
51
51
  nil
52
52
  # :nocov:
53
53
  end
@@ -120,6 +120,8 @@ module RSpec::Core
120
120
  # @return [String] The list of pending examples, fully formatted in the
121
121
  # way that RSpec's built-in formatters emit.
122
122
  def fully_formatted_pending_examples(colorizer=::RSpec::Core::Formatters::ConsoleCodes)
123
+ return if RSpec.configuration.pending_failure_output == :skip
124
+
123
125
  formatted = "\nPending: (Failures listed here are expected and do not affect your suite's status)\n".dup
124
126
 
125
127
  pending_notifications.each_with_index do |notification, index|
@@ -185,7 +185,9 @@ module RSpec::Core
185
185
 
186
186
  parser.on('-w', '--warnings', 'Enable ruby warnings') do
187
187
  if Object.const_defined?(:Warning) && Warning.respond_to?(:[]=)
188
+ # :nocov: on older Ruby without Warning
188
189
  Warning[:deprecated] = true
190
+ # :nocov:
189
191
  end
190
192
  $VERBOSE = true
191
193
  end
@@ -78,6 +78,30 @@ module RSpec
78
78
  end
79
79
  end
80
80
 
81
+ # @private
82
+ # A strategy which delays looking up the ordering until needed
83
+ class Delayed
84
+ def initialize(registry, name)
85
+ @registry = registry
86
+ @name = name
87
+ end
88
+
89
+ def order(list)
90
+ strategy.order(list)
91
+ end
92
+
93
+ private
94
+
95
+ def strategy
96
+ @strategy ||= lookup_strategy
97
+ end
98
+
99
+ def lookup_strategy
100
+ raise "Undefined ordering strategy #{@name.inspect}" unless @registry.has_strategy?(@name)
101
+ @registry.fetch(@name)
102
+ end
103
+ end
104
+
81
105
  # @private
82
106
  # Stores the different ordering strategies.
83
107
  class Registry
@@ -99,6 +123,10 @@ module RSpec
99
123
  @strategies.fetch(name, &fallback)
100
124
  end
101
125
 
126
+ def has_strategy?(name)
127
+ @strategies.key?(name)
128
+ end
129
+
102
130
  def register(sym, strategy)
103
131
  @strategies[sym] = strategy
104
132
  end
@@ -143,9 +171,20 @@ module RSpec
143
171
  :defined
144
172
  elsif order == 'recently-modified'
145
173
  :recently_modified
174
+ else
175
+ order.to_sym
146
176
  end
147
177
 
148
- register_ordering(:global, ordering_registry.fetch(ordering_name)) if ordering_name
178
+ if ordering_name
179
+ strategy =
180
+ if ordering_registry.has_strategy?(ordering_name)
181
+ ordering_registry.fetch(ordering_name)
182
+ else
183
+ Delayed.new(ordering_registry, ordering_name)
184
+ end
185
+
186
+ register_ordering(:global, strategy)
187
+ end
149
188
  end
150
189
 
151
190
  def force(hash)
@@ -15,13 +15,13 @@ module RSpec
15
15
  end
16
16
 
17
17
  def method_missing(name, *args, &block)
18
- output.send(name, *args, &block)
18
+ output.__send__(name, *args, &block)
19
19
  end
20
20
 
21
21
  # Redirect calls for IO interface methods
22
22
  IO.instance_methods(false).each do |method|
23
23
  define_method(method) do |*args, &block|
24
- output.send(method, *args, &block)
24
+ output.__send__(method, *args, &block)
25
25
  end
26
26
  end
27
27
  end
@@ -59,7 +59,7 @@ module RSpec
59
59
  # executed. If you need to consider hooks as pending as well you can use
60
60
  # the pending metadata as an alternative, e.g.
61
61
  # `it "does something", pending: "message"`.
62
- def pending(message=nil)
62
+ def pending(message=nil, &_block)
63
63
  current_example = RSpec.current_example
64
64
 
65
65
  if block_given?
@@ -47,6 +47,7 @@ module RSpec
47
47
 
48
48
  if RUBY_VERSION < "1.9.0" || Support::Ruby.jruby?
49
49
  # Run RSpec with a clean (empty) environment is not supported
50
+ # :nocov:
50
51
  def with_clean_environment=(_value)
51
52
  raise ArgumentError, "Running in a clean environment is not supported on Ruby versions before 1.9.0"
52
53
  end
@@ -55,6 +56,7 @@ module RSpec
55
56
  def with_clean_environment
56
57
  false
57
58
  end
59
+ # :nocov:
58
60
  else
59
61
  # Run RSpec with a clean (empty) environment.
60
62
  attr_accessor :with_clean_environment
@@ -182,7 +182,11 @@ module RSpec
182
182
  exit!(1)
183
183
  else
184
184
  RSpec.world.wants_to_quit = true
185
- $stderr.puts "\nRSpec is shutting down and will print the summary report... Interrupt again to force quit."
185
+
186
+ $stderr.puts(
187
+ "\nRSpec is shutting down and will print the summary report... Interrupt again to force quit " \
188
+ "(warning: at_exit hooks will be skipped if you force quit)."
189
+ )
186
190
  end
187
191
  end
188
192
 
@@ -3,7 +3,7 @@ module RSpec
3
3
  # Version information for RSpec Core.
4
4
  module Version
5
5
  # Current version of RSpec Core, in semantic versioning format.
6
- STRING = '3.12.2'
6
+ STRING = '3.13.2'
7
7
  end
8
8
  end
9
9
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rspec-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.12.2
4
+ version: 3.13.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Steven Baker
8
8
  - David Chelimsky
9
9
  - Chad Humphries
10
10
  - Myron Marston
11
- autorequire:
12
11
  bindir: exe
13
12
  cert_chain:
14
13
  - |
@@ -46,7 +45,7 @@ cert_chain:
46
45
  ZsVDj6a7lH3cNqtWXZxrb2wO38qV5AkYj8SQK7Hj3/Yui9myUX3crr+PdetazSqQ
47
46
  F3MdtaDehhjC
48
47
  -----END CERTIFICATE-----
49
- date: 2023-04-18 00:00:00.000000000 Z
48
+ date: 2024-10-18 00:00:00.000000000 Z
50
49
  dependencies:
51
50
  - !ruby/object:Gem::Dependency
52
51
  name: rspec-support
@@ -54,14 +53,14 @@ dependencies:
54
53
  requirements:
55
54
  - - "~>"
56
55
  - !ruby/object:Gem::Version
57
- version: 3.12.0
56
+ version: 3.13.0
58
57
  type: :runtime
59
58
  prerelease: false
60
59
  version_requirements: !ruby/object:Gem::Requirement
61
60
  requirements:
62
61
  - - "~>"
63
62
  - !ruby/object:Gem::Version
64
- version: 3.12.0
63
+ version: 3.13.0
65
64
  - !ruby/object:Gem::Dependency
66
65
  name: cucumber
67
66
  requirement: !ruby/object:Gem::Requirement
@@ -267,11 +266,10 @@ licenses:
267
266
  - MIT
268
267
  metadata:
269
268
  bug_tracker_uri: https://github.com/rspec/rspec-core/issues
270
- changelog_uri: https://github.com/rspec/rspec-core/blob/v3.12.2/Changelog.md
269
+ changelog_uri: https://github.com/rspec/rspec-core/blob/v3.13.2/Changelog.md
271
270
  documentation_uri: https://rspec.info/documentation/
272
271
  mailing_list_uri: https://groups.google.com/forum/#!forum/rspec
273
272
  source_code_uri: https://github.com/rspec/rspec-core
274
- post_install_message:
275
273
  rdoc_options:
276
274
  - "--charset=UTF-8"
277
275
  require_paths:
@@ -287,8 +285,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
287
285
  - !ruby/object:Gem::Version
288
286
  version: '0'
289
287
  requirements: []
290
- rubygems_version: 3.4.10
291
- signing_key:
288
+ rubygems_version: 3.6.0.dev
292
289
  specification_version: 4
293
- summary: rspec-core-3.12.2
290
+ summary: rspec-core-3.13.2
294
291
  test_files: []
metadata.gz.sig CHANGED
Binary file