swagalicious 1.1.2 → 2.0.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/Gemfile.lock +77 -54
- data/lib/swagalicious/configuration.rb +7 -0
- data/lib/swagalicious/request_factory.rb +44 -15
- data/lib/swagalicious/response_validator.rb +1 -1
- data/lib/swagalicious/swagger_formatter.rb +7 -6
- data/lib/swagalicious/version.rb +1 -1
- data/lib/swagalicious.rb +1 -0
- data/swagalicious.gemspec +4 -4
- metadata +13 -13
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: db96b90cafb99e7b2a59562be7588b11c0901522b796eee416820c26649125b0
|
|
4
|
+
data.tar.gz: d79fe5dbfab29895efc34f3efd216100e6da011679221bf7cd31790e2f9a08e2
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 75c6e5395e8fdb026a6e6067bac80b04b904851f9fd5635c7a9137326ab0354ea0117ae0c28bdb0e5cc52b23773bf4264f82d9dc3f132cce11997784c4cb14b2
|
|
7
|
+
data.tar.gz: e9dbd71dd735faa4779bb95f8862e841d698966307c7dbfc04156bd38c6857bfc94fae355d01452cfdad096ee913e18f45b670406c0fc4bfe150920e1dc09209
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
swagalicious (
|
|
4
|
+
swagalicious (2.0.0)
|
|
5
5
|
faraday (~> 2.0)
|
|
6
6
|
faraday-rack
|
|
7
7
|
json-schema
|
|
@@ -13,100 +13,123 @@ PATH
|
|
|
13
13
|
GEM
|
|
14
14
|
remote: https://rubygems.org/
|
|
15
15
|
specs:
|
|
16
|
-
activesupport (
|
|
16
|
+
activesupport (7.1.3.4)
|
|
17
|
+
base64
|
|
18
|
+
bigdecimal
|
|
17
19
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
|
20
|
+
connection_pool (>= 2.2.5)
|
|
21
|
+
drb
|
|
18
22
|
i18n (>= 1.6, < 2)
|
|
19
23
|
minitest (>= 5.1)
|
|
24
|
+
mutex_m
|
|
20
25
|
tzinfo (~> 2.0)
|
|
21
|
-
|
|
22
|
-
addressable (2.8.5)
|
|
26
|
+
addressable (2.8.6)
|
|
23
27
|
public_suffix (>= 2.0.2, < 6.0)
|
|
24
28
|
ast (2.4.2)
|
|
29
|
+
base64 (0.2.0)
|
|
30
|
+
bigdecimal (3.1.8)
|
|
25
31
|
byebug (11.1.3)
|
|
26
32
|
coderay (1.1.3)
|
|
27
|
-
concurrent-ruby (1.
|
|
28
|
-
|
|
29
|
-
|
|
33
|
+
concurrent-ruby (1.3.3)
|
|
34
|
+
connection_pool (2.4.1)
|
|
35
|
+
diff-lcs (1.5.1)
|
|
36
|
+
drb (2.2.1)
|
|
37
|
+
factory_bot (6.4.6)
|
|
30
38
|
activesupport (>= 5.0.0)
|
|
31
|
-
faraday (2.
|
|
32
|
-
faraday-net_http (>= 2.0, < 3.
|
|
33
|
-
|
|
34
|
-
|
|
39
|
+
faraday (2.9.1)
|
|
40
|
+
faraday-net_http (>= 2.0, < 3.2)
|
|
41
|
+
faraday-net_http (3.1.0)
|
|
42
|
+
net-http
|
|
35
43
|
faraday-rack (2.0.0)
|
|
36
44
|
faraday (~> 2.0)
|
|
37
|
-
i18n (1.
|
|
45
|
+
i18n (1.14.5)
|
|
38
46
|
concurrent-ruby (~> 1.0)
|
|
39
|
-
json (2.
|
|
40
|
-
json-schema (4.
|
|
47
|
+
json (2.7.2)
|
|
48
|
+
json-schema (4.3.0)
|
|
41
49
|
addressable (>= 2.8)
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
50
|
+
language_server-protocol (3.17.0.3)
|
|
51
|
+
method_source (1.1.0)
|
|
52
|
+
minitest (5.23.1)
|
|
53
|
+
mutex_m (0.2.0)
|
|
54
|
+
net-http (0.4.1)
|
|
55
|
+
uri
|
|
56
|
+
oj (3.16.4)
|
|
57
|
+
bigdecimal (>= 3.0)
|
|
58
|
+
ox (2.14.18)
|
|
59
|
+
parallel (1.25.1)
|
|
60
|
+
parser (3.3.3.0)
|
|
48
61
|
ast (~> 2.4.1)
|
|
49
|
-
|
|
62
|
+
racc
|
|
63
|
+
pry (0.14.2)
|
|
50
64
|
coderay (~> 1.1)
|
|
51
65
|
method_source (~> 1.0)
|
|
52
|
-
pry-byebug (3.
|
|
66
|
+
pry-byebug (3.10.1)
|
|
53
67
|
byebug (~> 11.0)
|
|
54
|
-
pry (
|
|
55
|
-
public_suffix (5.
|
|
56
|
-
|
|
68
|
+
pry (>= 0.13, < 0.15)
|
|
69
|
+
public_suffix (5.1.1)
|
|
70
|
+
racc (1.8.0)
|
|
71
|
+
rack (3.1.3)
|
|
57
72
|
rack-test (2.1.0)
|
|
58
73
|
rack (>= 1.3)
|
|
59
74
|
rainbow (3.1.1)
|
|
60
75
|
rake (12.3.3)
|
|
61
|
-
regexp_parser (2.
|
|
62
|
-
rexml (3.
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
rspec-
|
|
66
|
-
rspec-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
76
|
+
regexp_parser (2.9.2)
|
|
77
|
+
rexml (3.3.0)
|
|
78
|
+
strscan
|
|
79
|
+
rspec (3.13.0)
|
|
80
|
+
rspec-core (~> 3.13.0)
|
|
81
|
+
rspec-expectations (~> 3.13.0)
|
|
82
|
+
rspec-mocks (~> 3.13.0)
|
|
83
|
+
rspec-core (3.13.0)
|
|
84
|
+
rspec-support (~> 3.13.0)
|
|
85
|
+
rspec-expectations (3.13.1)
|
|
70
86
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
71
|
-
rspec-support (~> 3.
|
|
72
|
-
rspec-mocks (3.
|
|
87
|
+
rspec-support (~> 3.13.0)
|
|
88
|
+
rspec-mocks (3.13.1)
|
|
73
89
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
74
|
-
rspec-support (~> 3.
|
|
75
|
-
rspec-support (3.
|
|
76
|
-
rubocop (1.
|
|
90
|
+
rspec-support (~> 3.13.0)
|
|
91
|
+
rspec-support (3.13.1)
|
|
92
|
+
rubocop (1.64.1)
|
|
77
93
|
json (~> 2.3)
|
|
94
|
+
language_server-protocol (>= 3.17.0)
|
|
78
95
|
parallel (~> 1.10)
|
|
79
|
-
parser (>= 3.
|
|
96
|
+
parser (>= 3.3.0.2)
|
|
80
97
|
rainbow (>= 2.2.2, < 4.0)
|
|
81
98
|
regexp_parser (>= 1.8, < 3.0)
|
|
82
99
|
rexml (>= 3.2.5, < 4.0)
|
|
83
|
-
rubocop-ast (>= 1.
|
|
100
|
+
rubocop-ast (>= 1.31.1, < 2.0)
|
|
84
101
|
ruby-progressbar (~> 1.7)
|
|
85
102
|
unicode-display_width (>= 2.4.0, < 3.0)
|
|
86
|
-
rubocop-ast (1.
|
|
87
|
-
parser (>= 3.
|
|
88
|
-
rubocop-capybara (2.
|
|
103
|
+
rubocop-ast (1.31.3)
|
|
104
|
+
parser (>= 3.3.1.0)
|
|
105
|
+
rubocop-capybara (2.21.0)
|
|
89
106
|
rubocop (~> 1.41)
|
|
90
|
-
rubocop-
|
|
91
|
-
rubocop (~> 1.
|
|
107
|
+
rubocop-factory_bot (2.26.1)
|
|
108
|
+
rubocop (~> 1.61)
|
|
109
|
+
rubocop-rspec (2.31.0)
|
|
110
|
+
rubocop (~> 1.40)
|
|
92
111
|
rubocop-capybara (~> 2.17)
|
|
112
|
+
rubocop-factory_bot (~> 2.22)
|
|
113
|
+
rubocop-rspec_rails (~> 2.28)
|
|
114
|
+
rubocop-rspec_rails (2.29.1)
|
|
115
|
+
rubocop (~> 1.61)
|
|
93
116
|
ruby-progressbar (1.13.0)
|
|
94
|
-
|
|
95
|
-
tzinfo (2.0.
|
|
117
|
+
strscan (3.1.0)
|
|
118
|
+
tzinfo (2.0.6)
|
|
96
119
|
concurrent-ruby (~> 1.0)
|
|
97
|
-
unicode-display_width (2.
|
|
98
|
-
|
|
120
|
+
unicode-display_width (2.5.0)
|
|
121
|
+
uri (0.13.0)
|
|
99
122
|
|
|
100
123
|
PLATFORMS
|
|
101
124
|
ruby
|
|
102
125
|
|
|
103
126
|
DEPENDENCIES
|
|
104
|
-
factory_bot (~> 6.1
|
|
105
|
-
pry-byebug
|
|
127
|
+
factory_bot (~> 6.1)
|
|
128
|
+
pry-byebug
|
|
106
129
|
rake (~> 12.0)
|
|
107
130
|
rspec (~> 3.0)
|
|
108
|
-
rubocop (~> 1.48
|
|
109
|
-
rubocop-rspec (~> 2.19
|
|
131
|
+
rubocop (~> 1.48)
|
|
132
|
+
rubocop-rspec (~> 2.19)
|
|
110
133
|
swagalicious!
|
|
111
134
|
|
|
112
135
|
BUNDLED WITH
|
|
@@ -38,6 +38,13 @@ class Swagalicious
|
|
|
38
38
|
end
|
|
39
39
|
end
|
|
40
40
|
|
|
41
|
+
def logger
|
|
42
|
+
@swagger_format ||= begin
|
|
43
|
+
@rspec_config.swagalicious_logger = ::Logger.new($stdout) if @rspec_config.swagalicious_logger.nil?
|
|
44
|
+
@rspec_config.swagalicious_logger
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
|
|
41
48
|
def get_swagger_doc(name)
|
|
42
49
|
return swagger_docs.values.first if name.nil?
|
|
43
50
|
raise ConfigurationError, "Unknown swagger_doc '#{name}'" unless swagger_docs[name]
|
|
@@ -47,7 +47,7 @@ class Swagalicious
|
|
|
47
47
|
|
|
48
48
|
def security_version(scheme_names, swagger_doc)
|
|
49
49
|
if swagger_doc.key?(:securityDefinitions)
|
|
50
|
-
|
|
50
|
+
@config.logger.warn "Swagalicious: WARNING: securityDefinitions is replaced in OpenAPI3! Rename to components/securitySchemes (in swagger_helper.rb)"
|
|
51
51
|
swagger_doc[:components] ||= { securitySchemes: swagger_doc[:securityDefinitions] }
|
|
52
52
|
swagger_doc.delete(:securityDefinitions)
|
|
53
53
|
end
|
|
@@ -65,7 +65,7 @@ class Swagalicious
|
|
|
65
65
|
|
|
66
66
|
def key_version(ref, swagger_doc)
|
|
67
67
|
if ref.start_with?("#/parameters/")
|
|
68
|
-
|
|
68
|
+
@config.logger.warn "Swagalicious: WARNING: #/parameters/ refs are replaced in OpenAPI3! Rename to #/components/parameters/"
|
|
69
69
|
ref.sub("#/parameters/", "").to_sym
|
|
70
70
|
else
|
|
71
71
|
ref.sub("#/components/parameters/", "").to_sym
|
|
@@ -74,7 +74,7 @@ class Swagalicious
|
|
|
74
74
|
|
|
75
75
|
def definition_version(swagger_doc)
|
|
76
76
|
if swagger_doc.key?(:parameters)
|
|
77
|
-
|
|
77
|
+
@config.logger.warn "Swagalicious: WARNING: parameters is replaced in OpenAPI3! Rename to components/parameters (in swagger_helper.rb)"
|
|
78
78
|
swagger_doc[:parameters]
|
|
79
79
|
else
|
|
80
80
|
components = swagger_doc[:components] || {}
|
|
@@ -105,19 +105,48 @@ class Swagalicious
|
|
|
105
105
|
|
|
106
106
|
def build_query_string_part(param, value)
|
|
107
107
|
name = param[:name]
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
"#{name}
|
|
117
|
-
|
|
118
|
-
|
|
108
|
+
if param[:type]
|
|
109
|
+
@config.logger.warn "Swagalicious: WARNING: type is replaced in OpenAPI3! Rename to schema[type] in query param definition for #{name}"
|
|
110
|
+
param[:schema] ||= {}
|
|
111
|
+
param[:schema][:type] = param.delete(:type)
|
|
112
|
+
end
|
|
113
|
+
return "#{name}=#{value}" unless (param.dig(:schema, :type) || "").to_sym == :array
|
|
114
|
+
|
|
115
|
+
unless param[:schema]
|
|
116
|
+
@config.logger.warn "Schema was not specified for #{name}"
|
|
117
|
+
end
|
|
118
|
+
|
|
119
|
+
if param[:collection_format] || param[:collectionFormat]
|
|
120
|
+
@config.logger.warn "Swagalicious: WARNING: collection_format is replaced in OpenAPI3! Rename to style/explode in query param definition for #{name}"
|
|
121
|
+
format = params[:collection_format] || param[:collectionFormat]
|
|
122
|
+
case format
|
|
123
|
+
when :multi
|
|
124
|
+
param[:style] = :form
|
|
125
|
+
param[:explode] = true
|
|
126
|
+
when :ssv
|
|
127
|
+
param[:style] = :spaceDelimited
|
|
128
|
+
param[:explode] = false
|
|
129
|
+
when :pipes
|
|
130
|
+
param[:style] = :pipeDelimited
|
|
131
|
+
param[:explode] = false
|
|
132
|
+
else
|
|
133
|
+
param[:style] = :form
|
|
134
|
+
param[:explode] = false
|
|
135
|
+
end
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
style = param[:style] || :form
|
|
139
|
+
explode = param[:explode] || false
|
|
140
|
+
|
|
141
|
+
case style
|
|
142
|
+
when :spaceDelimited
|
|
143
|
+
explode ? value.map { |v| "#{name}=#{v}" }.join("&") : "#{name}=#{value.join(" ")}"
|
|
144
|
+
when :pipeDelimited
|
|
145
|
+
explode ? value.map { |v| "#{name}=#{v}" }.join("&") : "#{name}=#{value.join("|")}"
|
|
146
|
+
when :form
|
|
147
|
+
explode ? value.map { |v| "#{name}=#{v}" }.join("&") : "#{name}=#{value.join(",")}"
|
|
119
148
|
else
|
|
120
|
-
"
|
|
149
|
+
raise "Invalid combination"
|
|
121
150
|
end
|
|
122
151
|
end
|
|
123
152
|
|
|
@@ -52,7 +52,7 @@ class Swagalicious
|
|
|
52
52
|
swagger_doc.slice(:definitions)
|
|
53
53
|
else # Openapi3
|
|
54
54
|
if swagger_doc.key?(:definitions)
|
|
55
|
-
|
|
55
|
+
@config.logger.warn "Swagger::Specs: WARNING: definitions is replaced in OpenAPI3! Rename to components/schemas (in swagger_helper.rb)"
|
|
56
56
|
swagger_doc.slice(:definitions)
|
|
57
57
|
else
|
|
58
58
|
components = swagger_doc[:components] || {}
|
|
@@ -45,7 +45,7 @@ class Swagalicious
|
|
|
45
45
|
FileUtils.mkdir_p dirname unless File.exist?(dirname)
|
|
46
46
|
|
|
47
47
|
File.open(file_path, "w") do |file|
|
|
48
|
-
file.write(pretty_generate(merged_doc))
|
|
48
|
+
file.write(pretty_generate(merged_doc.except(:metadata)))
|
|
49
49
|
end
|
|
50
50
|
|
|
51
51
|
@output.puts "Swagger doc generated at #{file_path}"
|
|
@@ -104,6 +104,7 @@ class Swagalicious
|
|
|
104
104
|
|
|
105
105
|
operation[:parameters].reject! { |p| p[:in] == :body || p[:in] == :formData }
|
|
106
106
|
end
|
|
107
|
+
remove_invalid_operation_keys!(operation)
|
|
107
108
|
|
|
108
109
|
path_template = metadata[:path_item][:template]
|
|
109
110
|
path_item = metadata[:path_item]
|
|
@@ -119,7 +120,7 @@ class Swagalicious
|
|
|
119
120
|
|
|
120
121
|
def upgrade_response_produces!(swagger_doc, metadata)
|
|
121
122
|
# Accept header
|
|
122
|
-
mime_list = Array(metadata[:operation].delete(:produces) || swagger_doc
|
|
123
|
+
mime_list = Array(metadata[:operation].delete(:produces) || swagger_doc.dig(:metadata, :produces))
|
|
123
124
|
target_node = metadata[:response]
|
|
124
125
|
upgrade_content!(mime_list, target_node)
|
|
125
126
|
metadata[:response].delete(:schema)
|
|
@@ -157,7 +158,7 @@ class Swagalicious
|
|
|
157
158
|
def upgrade_servers!(swagger_doc)
|
|
158
159
|
return unless swagger_doc[:servers].nil? && swagger_doc.key?(:schemes)
|
|
159
160
|
|
|
160
|
-
|
|
161
|
+
@config.logger.warn "Swagalicious: WARNING: schemes, host, and basePath are replaced in OpenAPI3! Rename to array of servers[{url}] (in swagger_helper.rb)"
|
|
161
162
|
|
|
162
163
|
swagger_doc[:servers] = { urls: [] }
|
|
163
164
|
swagger_doc[:schemes].each do |scheme|
|
|
@@ -177,17 +178,17 @@ class Swagalicious
|
|
|
177
178
|
schemes.each do |name, v|
|
|
178
179
|
next unless v.key?(:flow)
|
|
179
180
|
|
|
180
|
-
|
|
181
|
+
@config.logger.warn "Swagalicious: WARNING: securityDefinitions flow is replaced in OpenAPI3! Rename to components/securitySchemes/#{name}/flows[] (in swagger_helper.rb)"
|
|
181
182
|
|
|
182
183
|
flow = swagger_doc[:components][:securitySchemes][name].delete(:flow).to_s
|
|
183
184
|
|
|
184
185
|
if flow == "accessCode"
|
|
185
|
-
|
|
186
|
+
@config.logger.warn "Swagalicious: WARNING: securityDefinitions accessCode is replaced in OpenAPI3! Rename to clientCredentials (in swagger_helper.rb)"
|
|
186
187
|
flow = "authorizationCode"
|
|
187
188
|
end
|
|
188
189
|
|
|
189
190
|
if flow == "application"
|
|
190
|
-
|
|
191
|
+
@config.logger.warn "Swagalicious: WARNING: securityDefinitions application is replaced in OpenAPI3! Rename to authorizationCode (in swagger_helper.rb)"
|
|
191
192
|
flow = "clientCredentials"
|
|
192
193
|
end
|
|
193
194
|
|
data/lib/swagalicious/version.rb
CHANGED
data/lib/swagalicious.rb
CHANGED
|
@@ -30,6 +30,7 @@ class Swagalicious
|
|
|
30
30
|
c.add_setting :swagger_root
|
|
31
31
|
c.add_setting :swagger_docs
|
|
32
32
|
c.add_setting :swagger_dry_run
|
|
33
|
+
c.add_setting :swagalicious_logger
|
|
33
34
|
|
|
34
35
|
if defined?(Rails) && defined?(RSpec::Rails)
|
|
35
36
|
c.include RSpec::Rails::RequestExampleGroup, type: :doc
|
data/swagalicious.gemspec
CHANGED
|
@@ -32,8 +32,8 @@ Gem::Specification.new do |spec|
|
|
|
32
32
|
spec.add_dependency "rack-test"
|
|
33
33
|
spec.add_dependency "rspec", "~> 3"
|
|
34
34
|
|
|
35
|
-
spec.add_development_dependency "rubocop", "~> 1.48
|
|
36
|
-
spec.add_development_dependency "rubocop-rspec", "~> 2.19
|
|
37
|
-
spec.add_development_dependency "factory_bot", "~> 6.1
|
|
38
|
-
spec.add_development_dependency "pry-byebug"
|
|
35
|
+
spec.add_development_dependency "rubocop", "~> 1.48"
|
|
36
|
+
spec.add_development_dependency "rubocop-rspec", "~> 2.19"
|
|
37
|
+
spec.add_development_dependency "factory_bot", "~> 6.1"
|
|
38
|
+
spec.add_development_dependency "pry-byebug"
|
|
39
39
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: swagalicious
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 2.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Eugene Howe
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2024-08-21 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: faraday
|
|
@@ -114,56 +114,56 @@ dependencies:
|
|
|
114
114
|
requirements:
|
|
115
115
|
- - "~>"
|
|
116
116
|
- !ruby/object:Gem::Version
|
|
117
|
-
version: 1.48
|
|
117
|
+
version: '1.48'
|
|
118
118
|
type: :development
|
|
119
119
|
prerelease: false
|
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
|
121
121
|
requirements:
|
|
122
122
|
- - "~>"
|
|
123
123
|
- !ruby/object:Gem::Version
|
|
124
|
-
version: 1.48
|
|
124
|
+
version: '1.48'
|
|
125
125
|
- !ruby/object:Gem::Dependency
|
|
126
126
|
name: rubocop-rspec
|
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
|
128
128
|
requirements:
|
|
129
129
|
- - "~>"
|
|
130
130
|
- !ruby/object:Gem::Version
|
|
131
|
-
version: 2.19
|
|
131
|
+
version: '2.19'
|
|
132
132
|
type: :development
|
|
133
133
|
prerelease: false
|
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
|
135
135
|
requirements:
|
|
136
136
|
- - "~>"
|
|
137
137
|
- !ruby/object:Gem::Version
|
|
138
|
-
version: 2.19
|
|
138
|
+
version: '2.19'
|
|
139
139
|
- !ruby/object:Gem::Dependency
|
|
140
140
|
name: factory_bot
|
|
141
141
|
requirement: !ruby/object:Gem::Requirement
|
|
142
142
|
requirements:
|
|
143
143
|
- - "~>"
|
|
144
144
|
- !ruby/object:Gem::Version
|
|
145
|
-
version: 6.1
|
|
145
|
+
version: '6.1'
|
|
146
146
|
type: :development
|
|
147
147
|
prerelease: false
|
|
148
148
|
version_requirements: !ruby/object:Gem::Requirement
|
|
149
149
|
requirements:
|
|
150
150
|
- - "~>"
|
|
151
151
|
- !ruby/object:Gem::Version
|
|
152
|
-
version: 6.1
|
|
152
|
+
version: '6.1'
|
|
153
153
|
- !ruby/object:Gem::Dependency
|
|
154
154
|
name: pry-byebug
|
|
155
155
|
requirement: !ruby/object:Gem::Requirement
|
|
156
156
|
requirements:
|
|
157
|
-
- - "
|
|
157
|
+
- - ">="
|
|
158
158
|
- !ruby/object:Gem::Version
|
|
159
|
-
version:
|
|
159
|
+
version: '0'
|
|
160
160
|
type: :development
|
|
161
161
|
prerelease: false
|
|
162
162
|
version_requirements: !ruby/object:Gem::Requirement
|
|
163
163
|
requirements:
|
|
164
|
-
- - "
|
|
164
|
+
- - ">="
|
|
165
165
|
- !ruby/object:Gem::Version
|
|
166
|
-
version:
|
|
166
|
+
version: '0'
|
|
167
167
|
description: This gem is almost a straight copy and paste of https://github.com/rswag/rswag/tree/master/rswag-specs
|
|
168
168
|
with the Rails specific code stripped out so it can be used in Rack applications
|
|
169
169
|
that don't use Rails.
|
|
@@ -217,7 +217,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
217
217
|
- !ruby/object:Gem::Version
|
|
218
218
|
version: '0'
|
|
219
219
|
requirements: []
|
|
220
|
-
rubygems_version: 3.
|
|
220
|
+
rubygems_version: 3.5.9
|
|
221
221
|
signing_key:
|
|
222
222
|
specification_version: 4
|
|
223
223
|
summary: RSwag without Rails
|