cucumber 5.0.0 → 5.2.0
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 +4 -4
- data/CHANGELOG.md +46 -1
- data/CONTRIBUTING.md +6 -4
- data/lib/cucumber/cli/options.rb +3 -3
- data/lib/cucumber/deprecate.rb +1 -1
- data/lib/cucumber/errors.rb +1 -1
- data/lib/cucumber/formatter/ast_lookup.rb +0 -2
- data/lib/cucumber/formatter/html.rb +1 -1
- data/lib/cucumber/formatter/http_io.rb +35 -39
- data/lib/cucumber/formatter/interceptor.rb +2 -2
- data/lib/cucumber/formatter/io.rb +3 -3
- data/lib/cucumber/formatter/json.rb +2 -2
- data/lib/cucumber/formatter/junit.rb +1 -1
- data/lib/cucumber/formatter/message.rb +1 -1
- data/lib/cucumber/formatter/pretty.rb +1 -1
- data/lib/cucumber/formatter/progress.rb +1 -1
- data/lib/cucumber/formatter/publish_banner_printer.rb +3 -1
- data/lib/cucumber/formatter/rerun.rb +2 -2
- data/lib/cucumber/formatter/steps.rb +1 -1
- data/lib/cucumber/formatter/summary.rb +1 -1
- data/lib/cucumber/formatter/url_reporter.rb +3 -16
- data/lib/cucumber/glue/dsl.rb +1 -1
- data/lib/cucumber/glue/proto_world.rb +3 -3
- data/lib/cucumber/rake/task.rb +0 -2
- data/lib/cucumber/term/banner.rb +1 -1
- data/lib/cucumber/version +1 -1
- metadata +19 -19
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 36830fb7cfa9895488ea7f11bb33f6267c94328b8b3a08da75749d26f4047479
|
4
|
+
data.tar.gz: 725299585226f1af48d00c12af192844af884ec49d44e6966c22a8a607bd9fa8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 807a72bba0f0a30c266b68afd4866ead55178f2ee2f72bd5a86331445f6de62bf320ebd2a848c05dd6c906c52aa6d082c1b5f241a65cc00e5ff6df14ffe3d6b8
|
7
|
+
data.tar.gz: d11cfaaa57bf35ffbbf54273317825179beb5db3ab106feacb30c7d0860ca6aeacf90404774ee92eafba100db00b5a25428ca7f3447262b0f05687b57d03aeae
|
data/CHANGELOG.md
CHANGED
@@ -10,7 +10,7 @@ Please visit [cucumber/CONTRIBUTING.md](https://github.com/cucumber/cucumber/blo
|
|
10
10
|
|
11
11
|
----
|
12
12
|
|
13
|
-
## [In GIT](https://github.com/cucumber/cucumber-ruby/compare/v5.
|
13
|
+
## [In GIT](https://github.com/cucumber/cucumber-ruby/compare/v5.2.0...master)
|
14
14
|
|
15
15
|
### Added
|
16
16
|
|
@@ -22,6 +22,51 @@ Please visit [cucumber/CONTRIBUTING.md](https://github.com/cucumber/cucumber/blo
|
|
22
22
|
|
23
23
|
### Fixed
|
24
24
|
|
25
|
+
### Security fixes
|
26
|
+
|
27
|
+
## [5.2.0](https://github.com/cucumber/cucumber-ruby/compare/v5.1.3...v5.2.0)
|
28
|
+
|
29
|
+
### Changed
|
30
|
+
|
31
|
+
* `--publish` uses the response provided by the server as the banner [#1472](https://github.com/cucumber/cucumber-ruby/issues/1472)
|
32
|
+
|
33
|
+
## [5.1.3](https://github.com/cucumber/cucumber-ruby/compare/v5.1.2...v5.1.3)
|
34
|
+
|
35
|
+
### Fixed
|
36
|
+
|
37
|
+
* The `CUCUMBER_PUBLISH_TOKEN` now sets the correct HTTP header, following a fix in the curl option parser.
|
38
|
+
|
39
|
+
## [5.1.2](https://github.com/cucumber/cucumber-ruby/compare/v5.1.1...v5.1.2)
|
40
|
+
|
41
|
+
### Fixed
|
42
|
+
|
43
|
+
* Do not send headers after following redirection [#1475](https://github.com/cucumber/cucumber-ruby/pull/1475)
|
44
|
+
|
45
|
+
## [5.1.1](https://github.com/cucumber/cucumber-ruby/compare/v5.1.0...v5.1.1)
|
46
|
+
|
47
|
+
### Security fixes
|
48
|
+
|
49
|
+
* Update `cucumber-create-meta` to 2.0.2
|
50
|
+
|
51
|
+
## [5.1.0](https://github.com/cucumber/cucumber-ruby/compare/v5.0.0...5.1.0)
|
52
|
+
|
53
|
+
### Added
|
54
|
+
|
55
|
+
* `-X GET` in an `--out` URL will now issue a `GET` request *without* a body. If the response is `202 Accepted` *and*
|
56
|
+
the `Location` header is present, a new `PUT` request will be sent *with* the body.
|
57
|
+
|
58
|
+
The main reason for this added behaviour is to allow request bodies larger than 6Mb to be sent while using `--publish`.
|
59
|
+
This also improves performance since the request body is only sent once (previously it would be sent twice).
|
60
|
+
|
61
|
+
### Changed
|
62
|
+
|
63
|
+
* Set banner border color to green when publishing reports
|
64
|
+
* Postpone removal of `--format=json`, `embed` and `puts` to version 6.0.0 in deprecation messages
|
65
|
+
|
66
|
+
### Fixed
|
67
|
+
|
68
|
+
* Display banner on stderr when publishing reports [#1462](https://github.com/cucumber/cucumber-ruby/issues/1462)
|
69
|
+
|
25
70
|
## [5.0.0](https://github.com/cucumber/cucumber-ruby/compare/v4.1.0...5.0.0)
|
26
71
|
|
27
72
|
### Added
|
data/CONTRIBUTING.md
CHANGED
@@ -65,7 +65,9 @@ help us to correct style violations reported here:
|
|
65
65
|
* Remove empty sections from `CHANGELOG.md`
|
66
66
|
* Now release it:
|
67
67
|
|
68
|
-
```
|
69
|
-
git commit -am "Release X.Y.Z"
|
70
|
-
make release
|
71
|
-
```
|
68
|
+
```
|
69
|
+
git commit -am "Release X.Y.Z"
|
70
|
+
make release
|
71
|
+
```
|
72
|
+
|
73
|
+
* Finally, update the cucumber-ruby version in the [documentation project](https://cucumber.io/docs/installation/) in [versions.yaml](https://github.com/cucumber/docs.cucumber.io/blob/master/data/versions.yaml) file.
|
data/lib/cucumber/cli/options.rb
CHANGED
@@ -9,7 +9,7 @@ require 'cucumber/core/test/result'
|
|
9
9
|
module Cucumber
|
10
10
|
module Cli
|
11
11
|
class Options
|
12
|
-
CUCUMBER_PUBLISH_URL = ENV['CUCUMBER_PUBLISH_URL'] || 'https://messages.cucumber.io/api/reports'
|
12
|
+
CUCUMBER_PUBLISH_URL = ENV['CUCUMBER_PUBLISH_URL'] || 'https://messages.cucumber.io/api/reports -X GET'
|
13
13
|
INDENT = ' ' * 53
|
14
14
|
BUILTIN_FORMATS = {
|
15
15
|
'pretty' => ['Cucumber::Formatter::Pretty', 'Prints the feature as is - in colours.'],
|
@@ -335,7 +335,7 @@ Specify SEED to reproduce the shuffling from a previous run.
|
|
335
335
|
'option is specified; all loading becomes explicit.',
|
336
336
|
'Files in directories named "support" are still always',
|
337
337
|
'loaded first when their parent directories are',
|
338
|
-
'required or if the "support"
|
338
|
+
'required or if the "support" directories themselves are',
|
339
339
|
'explicitly required.',
|
340
340
|
'This option can be specified multiple times.'
|
341
341
|
]
|
@@ -367,7 +367,7 @@ Specify SEED to reproduce the shuffling from a previous run.
|
|
367
367
|
end
|
368
368
|
|
369
369
|
def require_jars(jars)
|
370
|
-
Dir["#{jars}/**/*.jar"].each { |jar| require jar }
|
370
|
+
Dir["#{jars}/**/*.jar"].sort.each { |jar| require jar }
|
371
371
|
end
|
372
372
|
|
373
373
|
def publisher
|
data/lib/cucumber/deprecate.rb
CHANGED
@@ -41,7 +41,7 @@ module Cucumber
|
|
41
41
|
|
42
42
|
module ForDevelopers
|
43
43
|
def self.call(_message, _method, remove_after_version)
|
44
|
-
raise "This method is due for removal after version #{remove_after_version}" if Cucumber::VERSION
|
44
|
+
raise "This method is due for removal after version #{remove_after_version}" if Cucumber::VERSION >= remove_after_version
|
45
45
|
end
|
46
46
|
end
|
47
47
|
|
data/lib/cucumber/errors.rb
CHANGED
@@ -136,7 +136,6 @@ module Cucumber
|
|
136
136
|
|
137
137
|
private
|
138
138
|
|
139
|
-
# rubocop:disable Metrics/PerceivedComplexity
|
140
139
|
def process_scenario_container(container, original_previous_node)
|
141
140
|
container.children.each do |child|
|
142
141
|
previous_node = original_previous_node
|
@@ -158,7 +157,6 @@ module Cucumber
|
|
158
157
|
end
|
159
158
|
end
|
160
159
|
end
|
161
|
-
# rubocop:enable Metrics/PerceivedComplexity
|
162
160
|
end
|
163
161
|
end
|
164
162
|
end
|
@@ -1,5 +1,6 @@
|
|
1
1
|
require 'net/http'
|
2
2
|
require 'tempfile'
|
3
|
+
require 'shellwords'
|
3
4
|
|
4
5
|
module Cucumber
|
5
6
|
module Formatter
|
@@ -18,48 +19,43 @@ module Cucumber
|
|
18
19
|
|
19
20
|
class CurlOptionParser
|
20
21
|
def self.parse(options)
|
21
|
-
|
22
|
-
http_method = 'PUT'
|
23
|
-
url = chunks[0]
|
24
|
-
headers = ''
|
25
|
-
|
26
|
-
last_flag = nil
|
27
|
-
chunks.each do |chunk|
|
28
|
-
if ['-X', '--request'].include?(chunk)
|
29
|
-
last_flag = '-X'
|
30
|
-
next
|
31
|
-
end
|
22
|
+
args = Shellwords.split(options)
|
32
23
|
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
24
|
+
url = nil
|
25
|
+
http_method = 'PUT'
|
26
|
+
headers = {}
|
27
|
+
|
28
|
+
until args.empty?
|
29
|
+
arg = args.shift
|
30
|
+
case arg
|
31
|
+
when '-X', '--request'
|
32
|
+
http_method = remove_arg_for(args, arg)
|
33
|
+
when '-H'
|
34
|
+
header_arg = remove_arg_for(args, arg)
|
35
|
+
headers = headers.merge(parse_header(header_arg))
|
36
|
+
else
|
37
|
+
raise StandardError, "#{options} was not a valid curl command. Can't set url to #{arg} it is already set to #{url}" if url
|
38
|
+
url = arg
|
41
39
|
end
|
42
|
-
|
43
|
-
headers += chunk if last_flag == '-H'
|
44
40
|
end
|
41
|
+
raise StandardError, "#{options} was not a valid curl command" unless url
|
45
42
|
|
46
43
|
[
|
47
44
|
url,
|
48
45
|
http_method,
|
49
|
-
|
46
|
+
headers
|
50
47
|
]
|
51
48
|
end
|
52
49
|
|
53
|
-
def self.
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
headers.scan(str_scanner) do |header|
|
58
|
-
header = header.compact!
|
59
|
-
hash_headers[header[0]] = header[1]&.strip
|
60
|
-
end
|
50
|
+
def self.remove_arg_for(args, arg)
|
51
|
+
return args.shift unless args.empty?
|
52
|
+
raise StandardError, "Missing argument for #{arg}"
|
53
|
+
end
|
61
54
|
|
62
|
-
|
55
|
+
def self.parse_header(header_arg)
|
56
|
+
parts = header_arg.split(':', 2)
|
57
|
+
raise StandardError, "#{header_arg} was not a valid header" unless parts.length == 2
|
58
|
+
{ parts[0].strip => parts[1].strip }
|
63
59
|
end
|
64
60
|
end
|
65
61
|
|
@@ -76,10 +72,11 @@ module Cucumber
|
|
76
72
|
end
|
77
73
|
|
78
74
|
def close
|
79
|
-
|
80
|
-
|
81
|
-
@reporter.report(resource_uri)
|
75
|
+
response = send_content(@uri, @method, @headers)
|
76
|
+
@reporter.report(response.body)
|
82
77
|
@write_io.close
|
78
|
+
return if response.is_a?(Net::HTTPSuccess) || response.is_a?(Net::HTTPRedirection)
|
79
|
+
raise StandardError, "request to #{uri} failed with status #{response.code}"
|
83
80
|
end
|
84
81
|
|
85
82
|
def write(data)
|
@@ -97,7 +94,7 @@ module Cucumber
|
|
97
94
|
private
|
98
95
|
|
99
96
|
def send_content(uri, method, headers, attempt = 10)
|
100
|
-
content = @write_io
|
97
|
+
content = (method == 'GET' ? StringIO.new : @write_io)
|
101
98
|
http = build_client(uri, @https_verify_mode)
|
102
99
|
|
103
100
|
raise StandardError, "request to #{uri} failed (too many redirections)" if attempt <= 0
|
@@ -120,13 +117,12 @@ module Cucumber
|
|
120
117
|
end
|
121
118
|
|
122
119
|
case response
|
123
|
-
when Net::
|
124
|
-
|
120
|
+
when Net::HTTPAccepted
|
121
|
+
send_content(URI(response['Location']), 'PUT', {}, attempt - 1) if response['Location']
|
125
122
|
when Net::HTTPRedirection
|
126
123
|
send_content(URI(response['Location']), method, headers, attempt - 1)
|
127
|
-
else
|
128
|
-
raise StandardError, "request to #{uri} failed with status #{response.code}"
|
129
124
|
end
|
125
|
+
response
|
130
126
|
end
|
131
127
|
|
132
128
|
def build_request(uri, method, headers)
|
@@ -9,13 +9,13 @@ module Cucumber
|
|
9
9
|
module Io
|
10
10
|
module_function
|
11
11
|
|
12
|
-
def ensure_io(path_or_url_or_io)
|
12
|
+
def ensure_io(path_or_url_or_io, error_stream)
|
13
13
|
return nil if path_or_url_or_io.nil?
|
14
14
|
return path_or_url_or_io if io?(path_or_url_or_io)
|
15
15
|
|
16
16
|
io = if url?(path_or_url_or_io)
|
17
17
|
url = path_or_url_or_io
|
18
|
-
reporter = url.start_with?(Cucumber::Cli::Options::CUCUMBER_PUBLISH_URL) ? URLReporter.new(
|
18
|
+
reporter = url.start_with?(Cucumber::Cli::Options::CUCUMBER_PUBLISH_URL) ? URLReporter.new(error_stream) : NoReporter.new
|
19
19
|
HTTPIO.open(url, nil, reporter)
|
20
20
|
else
|
21
21
|
File.open(path_or_url_or_io, Cucumber.file_mode('w'))
|
@@ -64,7 +64,7 @@ module Cucumber
|
|
64
64
|
raise "You *must* specify --out FILE for the #{name} formatter" unless String == path.class
|
65
65
|
raise "I can't write #{name} to a directory - it has to be a file" if File.directory?(path)
|
66
66
|
raise "I can't write #{name} to a file in the non-existing directory #{File.dirname(path)}" unless File.directory?(File.dirname(path))
|
67
|
-
ensure_io(path)
|
67
|
+
ensure_io(path, nil)
|
68
68
|
end
|
69
69
|
|
70
70
|
def ensure_dir(path, name)
|
@@ -19,10 +19,10 @@ module Cucumber
|
|
19
19
|
'--format=json',
|
20
20
|
"Please use --format=message and stand-alone json-formatter.\n" \
|
21
21
|
'json-formatter homepage: https://github.com/cucumber/cucumber/tree/master/json-formatter#cucumber-json-formatter',
|
22
|
-
'
|
22
|
+
'6.0.0'
|
23
23
|
)
|
24
24
|
|
25
|
-
@io = ensure_io(config.out_stream)
|
25
|
+
@io = ensure_io(config.out_stream, config.error_stream)
|
26
26
|
@ast_lookup = AstLookup.new(config)
|
27
27
|
@feature_hashes = []
|
28
28
|
@step_or_hook_hash = {}
|
@@ -106,7 +106,7 @@ module Cucumber
|
|
106
106
|
write_file(feature_result_filename(feature_data[:uri]), @testsuite.target!)
|
107
107
|
end
|
108
108
|
|
109
|
-
def create_output_string(test_case, scenario, result, row_name)
|
109
|
+
def create_output_string(test_case, scenario, result, row_name)
|
110
110
|
scenario_source = @ast_lookup.scenario_source(test_case)
|
111
111
|
keyword = scenario_source.type == :Scenario ? scenario_source.scenario.keyword : scenario_source.scenario_outline.keyword
|
112
112
|
output = "#{keyword}: #{scenario}\n\n"
|
@@ -32,7 +32,7 @@ module Cucumber
|
|
32
32
|
private :in_scenario_outline, :print_background_steps
|
33
33
|
|
34
34
|
def initialize(config)
|
35
|
-
@io = ensure_io(config.out_stream)
|
35
|
+
@io = ensure_io(config.out_stream, config.error_stream)
|
36
36
|
@config = config
|
37
37
|
@options = config.to_hash
|
38
38
|
@snippets_input = []
|
@@ -7,8 +7,8 @@ module Cucumber
|
|
7
7
|
class Rerun
|
8
8
|
include Formatter::Io
|
9
9
|
|
10
|
-
def initialize(config)
|
11
|
-
@io = ensure_io(config.out_stream)
|
10
|
+
def initialize(config)
|
11
|
+
@io = ensure_io(config.out_stream, config.error_stream)
|
12
12
|
@config = config
|
13
13
|
@failures = {}
|
14
14
|
config.on_event :test_case_finished do |event|
|
@@ -5,7 +5,7 @@ module Cucumber
|
|
5
5
|
# The formatter used for <tt>--format steps</tt>
|
6
6
|
class Steps
|
7
7
|
def initialize(runtime, path_or_io, options)
|
8
|
-
@io = ensure_io(path_or_io)
|
8
|
+
@io = ensure_io(path_or_io, nil)
|
9
9
|
@options = options
|
10
10
|
@step_definition_files = collect_steps(runtime)
|
11
11
|
end
|
@@ -16,7 +16,7 @@ module Cucumber
|
|
16
16
|
|
17
17
|
def initialize(config)
|
18
18
|
@config = config
|
19
|
-
@io = ensure_io(config.out_stream)
|
19
|
+
@io = ensure_io(config.out_stream, config.error_stream)
|
20
20
|
@ast_lookup = AstLookup.new(config)
|
21
21
|
@counts = ConsoleCounts.new(@config)
|
22
22
|
@issues = ConsoleIssues.new(@config, @ast_lookup)
|
@@ -1,30 +1,17 @@
|
|
1
|
-
require 'cucumber/term/banner'
|
2
|
-
|
3
1
|
module Cucumber
|
4
2
|
module Formatter
|
5
3
|
class URLReporter
|
6
|
-
include Term::Banner
|
7
|
-
|
8
4
|
def initialize(io)
|
9
5
|
@io = io
|
10
6
|
end
|
11
7
|
|
12
|
-
def report(
|
13
|
-
|
14
|
-
display_banner(
|
15
|
-
[
|
16
|
-
'View your Cucumber Report at:',
|
17
|
-
[["https://reports.cucumber.io#{uri.path}", :cyan, :bold, :underline]],
|
18
|
-
'',
|
19
|
-
[['This report will self-destruct in 24h unless it is claimed or deleted.', :green, :bold]]
|
20
|
-
],
|
21
|
-
@io
|
22
|
-
)
|
8
|
+
def report(banner)
|
9
|
+
@io.puts(banner)
|
23
10
|
end
|
24
11
|
end
|
25
12
|
|
26
13
|
class NoReporter
|
27
|
-
def report(
|
14
|
+
def report(banner); end
|
28
15
|
end
|
29
16
|
end
|
30
17
|
end
|
data/lib/cucumber/glue/dsl.rb
CHANGED
@@ -87,7 +87,7 @@ module Cucumber
|
|
87
87
|
'If you simply want it in the console, '\
|
88
88
|
'keep using "puts" (or Kernel.puts to avoid this message)',
|
89
89
|
'puts(message)',
|
90
|
-
'
|
90
|
+
'6.0.0'
|
91
91
|
)
|
92
92
|
messages.each { |message| log(message.to_s) }
|
93
93
|
end
|
@@ -102,7 +102,7 @@ module Cucumber
|
|
102
102
|
Cucumber.deprecate(
|
103
103
|
'Please use attach(file, media_type) instead',
|
104
104
|
'embed(file, mime_type, label)',
|
105
|
-
'
|
105
|
+
'6.0.0'
|
106
106
|
)
|
107
107
|
attach(file, mime_type)
|
108
108
|
end
|
@@ -143,7 +143,7 @@ module Cucumber
|
|
143
143
|
end
|
144
144
|
|
145
145
|
# Dynamially generate the API module, closuring the dependencies
|
146
|
-
def self.for(runtime, language) # rubocop:disable Metrics/MethodLength
|
146
|
+
def self.for(runtime, language) # rubocop:disable Metrics/MethodLength,Metrics/AbcSize
|
147
147
|
Module.new do # rubocop:disable Metrics/BlockLength
|
148
148
|
def self.extended(object)
|
149
149
|
# wrap the dynamically generated module so that we can document the methods
|
data/lib/cucumber/rake/task.rb
CHANGED
data/lib/cucumber/term/banner.rb
CHANGED
@@ -4,7 +4,7 @@ module Cucumber
|
|
4
4
|
module Term
|
5
5
|
module Banner
|
6
6
|
def display_banner(lines, io, border_modifiers = nil)
|
7
|
-
BannerMaker.new.display_banner(lines, io, border_modifiers || [
|
7
|
+
BannerMaker.new.display_banner(lines, io, border_modifiers || %i[green bold])
|
8
8
|
end
|
9
9
|
|
10
10
|
class BannerMaker
|
data/lib/cucumber/version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
5.
|
1
|
+
5.2.0
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cucumber
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.
|
4
|
+
version: 5.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Aslak Hellesøy
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2020-
|
13
|
+
date: 2020-10-21 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: builder
|
@@ -61,7 +61,7 @@ dependencies:
|
|
61
61
|
version: '2.0'
|
62
62
|
- - ">="
|
63
63
|
- !ruby/object:Gem::Version
|
64
|
-
version: 2.0.
|
64
|
+
version: 2.0.2
|
65
65
|
type: :runtime
|
66
66
|
prerelease: false
|
67
67
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -71,7 +71,7 @@ dependencies:
|
|
71
71
|
version: '2.0'
|
72
72
|
- - ">="
|
73
73
|
- !ruby/object:Gem::Version
|
74
|
-
version: 2.0.
|
74
|
+
version: 2.0.2
|
75
75
|
- !ruby/object:Gem::Dependency
|
76
76
|
name: cucumber-cucumber-expressions
|
77
77
|
requirement: !ruby/object:Gem::Requirement
|
@@ -138,20 +138,20 @@ dependencies:
|
|
138
138
|
requirements:
|
139
139
|
- - "~>"
|
140
140
|
- !ruby/object:Gem::Version
|
141
|
-
version: '13.
|
141
|
+
version: '13.1'
|
142
142
|
- - ">="
|
143
143
|
- !ruby/object:Gem::Version
|
144
|
-
version: 13.0
|
144
|
+
version: 13.1.0
|
145
145
|
type: :runtime
|
146
146
|
prerelease: false
|
147
147
|
version_requirements: !ruby/object:Gem::Requirement
|
148
148
|
requirements:
|
149
149
|
- - "~>"
|
150
150
|
- !ruby/object:Gem::Version
|
151
|
-
version: '13.
|
151
|
+
version: '13.1'
|
152
152
|
- - ">="
|
153
153
|
- !ruby/object:Gem::Version
|
154
|
-
version: 13.0
|
154
|
+
version: 13.1.0
|
155
155
|
- !ruby/object:Gem::Dependency
|
156
156
|
name: cucumber-wire
|
157
157
|
requirement: !ruby/object:Gem::Requirement
|
@@ -381,7 +381,7 @@ dependencies:
|
|
381
381
|
version: '1.6'
|
382
382
|
- - ">="
|
383
383
|
- !ruby/object:Gem::Version
|
384
|
-
version: 1.6.
|
384
|
+
version: 1.6.1
|
385
385
|
type: :development
|
386
386
|
prerelease: false
|
387
387
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -391,27 +391,27 @@ dependencies:
|
|
391
391
|
version: '1.6'
|
392
392
|
- - ">="
|
393
393
|
- !ruby/object:Gem::Version
|
394
|
-
version: 1.6.
|
394
|
+
version: 1.6.1
|
395
395
|
- !ruby/object:Gem::Dependency
|
396
396
|
name: octokit
|
397
397
|
requirement: !ruby/object:Gem::Requirement
|
398
398
|
requirements:
|
399
399
|
- - "~>"
|
400
400
|
- !ruby/object:Gem::Version
|
401
|
-
version: '4.
|
401
|
+
version: '4.19'
|
402
402
|
- - ">="
|
403
403
|
- !ruby/object:Gem::Version
|
404
|
-
version: 4.
|
404
|
+
version: 4.19.0
|
405
405
|
type: :development
|
406
406
|
prerelease: false
|
407
407
|
version_requirements: !ruby/object:Gem::Requirement
|
408
408
|
requirements:
|
409
409
|
- - "~>"
|
410
410
|
- !ruby/object:Gem::Version
|
411
|
-
version: '4.
|
411
|
+
version: '4.19'
|
412
412
|
- - ">="
|
413
413
|
- !ruby/object:Gem::Version
|
414
|
-
version: 4.
|
414
|
+
version: 4.19.0
|
415
415
|
- !ruby/object:Gem::Dependency
|
416
416
|
name: rack-test
|
417
417
|
requirement: !ruby/object:Gem::Requirement
|
@@ -438,20 +438,20 @@ dependencies:
|
|
438
438
|
requirements:
|
439
439
|
- - "~>"
|
440
440
|
- !ruby/object:Gem::Version
|
441
|
-
version: '2.
|
441
|
+
version: '2.1'
|
442
442
|
- - ">="
|
443
443
|
- !ruby/object:Gem::Version
|
444
|
-
version: 2.0
|
444
|
+
version: 2.1.0
|
445
445
|
type: :development
|
446
446
|
prerelease: false
|
447
447
|
version_requirements: !ruby/object:Gem::Requirement
|
448
448
|
requirements:
|
449
449
|
- - "~>"
|
450
450
|
- !ruby/object:Gem::Version
|
451
|
-
version: '2.
|
451
|
+
version: '2.1'
|
452
452
|
- - ">="
|
453
453
|
- !ruby/object:Gem::Version
|
454
|
-
version: 2.0
|
454
|
+
version: 2.1.0
|
455
455
|
- !ruby/object:Gem::Dependency
|
456
456
|
name: capybara
|
457
457
|
requirement: !ruby/object:Gem::Requirement
|
@@ -642,5 +642,5 @@ requirements: []
|
|
642
642
|
rubygems_version: 3.1.2
|
643
643
|
signing_key:
|
644
644
|
specification_version: 4
|
645
|
-
summary: cucumber-5.
|
645
|
+
summary: cucumber-5.2.0
|
646
646
|
test_files: []
|