grape-swagger-rails 0.4.0 → 0.5.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/.github/workflows/head.yml +32 -0
- data/.github/workflows/rubocop.yml +14 -0
- data/.github/workflows/test.yml +11 -19
- data/.rubocop.yml +7 -2
- data/.rubocop_todo.yml +78 -125
- data/CHANGELOG.md +9 -0
- data/Dangerfile +2 -0
- data/Gemfile +8 -7
- data/README.md +2 -1
- data/Rakefile +5 -9
- data/app/assets/config/grape_swagger_rails_manifest.js +2 -0
- data/app/controllers/grape_swagger_rails/application_controller.rb +4 -2
- data/app/views/grape_swagger_rails/application/index.html.erb +1 -1
- data/config/routes.rb +2 -0
- data/grape-swagger-rails.gemspec +10 -4
- data/lib/grape-swagger-rails/engine.rb +2 -0
- data/lib/grape-swagger-rails/version.rb +3 -1
- data/lib/grape-swagger-rails.rb +17 -14
- data/lib/script/rails +4 -2
- data/lib/tasks/swagger_ui.rake +6 -3
- data/spec/dummy/Rakefile +6 -3
- data/spec/dummy/app/api/api.rb +2 -0
- data/spec/dummy/app/assets/config/manifest.js +3 -4
- data/spec/dummy/app/assets/javascripts/application.js +0 -2
- data/spec/dummy/app/controllers/application_controller.rb +2 -0
- data/spec/dummy/app/controllers/welcome_controller.rb +3 -2
- data/spec/dummy/app/views/layouts/application.html.erb +1 -0
- data/spec/dummy/bin/rails +3 -5
- data/spec/dummy/bin/rake +2 -4
- data/spec/dummy/bin/setup +27 -0
- data/spec/dummy/config/application.rb +11 -10
- data/spec/dummy/config/boot.rb +4 -7
- data/spec/dummy/config/environment.rb +6 -2
- data/spec/dummy/config/environments/development.rb +40 -19
- data/spec/dummy/config/environments/production.rb +31 -31
- data/spec/dummy/config/environments/test.rb +30 -20
- data/spec/dummy/config/initializers/assets.rb +13 -0
- data/spec/dummy/config/initializers/filter_parameter_logging.rb +10 -0
- data/spec/dummy/config/initializers/inflections.rb +15 -0
- data/spec/dummy/config/initializers/swagger.rb +2 -0
- data/spec/dummy/config/routes.rb +2 -0
- data/spec/dummy/config.ru +6 -2
- data/spec/dummy/public/404.html +6 -6
- data/spec/dummy/public/422.html +6 -6
- data/spec/dummy/public/500.html +6 -6
- data/spec/features/grape-swagger-rails_spec.rb +5 -1
- data/spec/features/swagger_spec.rb +97 -35
- data/spec/features/welcome_spec.rb +3 -0
- data/spec/spec_helper.rb +4 -2
- data/spec/support/capybara.rb +2 -0
- data/spec/support/rails.rb +2 -0
- metadata +16 -56
- data/spec/dummy/bin/bundle +0 -3
- data/spec/dummy/bin/spring +0 -18
- data/spec/dummy/config/initializers/cookies_serializer.rb +0 -1
- data/spec/dummy/config/initializers/session_store.rb +0 -1
- data/spec/dummy/vendor/assets/javascripts/.keep +0 -0
- data/spec/dummy/vendor/assets/stylesheets/.keep +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d4c9588b4ccf8e66253f11a742506fc512c9a70d4d0f32c8ec72db06bdc47af5
|
4
|
+
data.tar.gz: 3148cee4aad16dced2e22f6f8639e6daa1c3190fcb46c9bc1627cdc385861d9c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 91b7f33ff1190d15f16937087ca698a94e2daf43aed206b80821bbc879d1cdeac98e7fe151d1a5414fa50ae649adaa293d87ac0fd06135540903159ff8ed0e98
|
7
|
+
data.tar.gz: 69968abc92dc53117812b3901cb98baa72036496005fc5ba65fc7b759eb9a0e40536af7bbcd0f4cced9567a7e7687b53144bb18599731554569fd0f2f4938f50
|
@@ -0,0 +1,32 @@
|
|
1
|
+
name: Tests (HEAD)
|
2
|
+
on: [pull_request]
|
3
|
+
jobs:
|
4
|
+
test:
|
5
|
+
runs-on: ubuntu-latest
|
6
|
+
continue-on-error: true
|
7
|
+
strategy:
|
8
|
+
fail-fast: false
|
9
|
+
matrix:
|
10
|
+
entry:
|
11
|
+
- { ruby: "3.2", grape-swagger: "HEAD" }
|
12
|
+
- { ruby: "ruby-head", grape-swagger: "HEAD" }
|
13
|
+
- { ruby: "jruby-head", grape-swagger: "HEAD" }
|
14
|
+
env:
|
15
|
+
GRAPE_SWAGGER_VERSION: ${{ matrix.entry.grape-swagger }}
|
16
|
+
steps:
|
17
|
+
- uses: actions/checkout@v3
|
18
|
+
- name: Set up Ruby
|
19
|
+
uses: ruby/setup-ruby@v1
|
20
|
+
with:
|
21
|
+
ruby-version: ${{ matrix.entry.ruby }}
|
22
|
+
bundler-cache: true
|
23
|
+
- name: Setup Firefox
|
24
|
+
uses: browser-actions/setup-firefox@v1
|
25
|
+
with:
|
26
|
+
firefox-version: "111.0.1"
|
27
|
+
- uses: browser-actions/setup-geckodriver@latest
|
28
|
+
with:
|
29
|
+
geckodriver-version: "0.32.2"
|
30
|
+
- uses: coactions/setup-xvfb@v1
|
31
|
+
with:
|
32
|
+
run: bundle exec rake spec
|
@@ -0,0 +1,14 @@
|
|
1
|
+
name: Rubocop
|
2
|
+
on: [pull_request]
|
3
|
+
jobs:
|
4
|
+
rubocop:
|
5
|
+
runs-on: ubuntu-latest
|
6
|
+
steps:
|
7
|
+
- uses: actions/checkout@v3
|
8
|
+
- name: Set up Ruby
|
9
|
+
uses: ruby/setup-ruby@v1
|
10
|
+
with:
|
11
|
+
ruby-version: "3.2"
|
12
|
+
bundler-cache: true
|
13
|
+
- name: Run Rubocop
|
14
|
+
run: bundle exec rubocop
|
data/.github/workflows/test.yml
CHANGED
@@ -1,35 +1,27 @@
|
|
1
1
|
name: Tests
|
2
|
-
on:
|
3
|
-
push:
|
4
|
-
branches:
|
5
|
-
- master
|
6
|
-
pull_request:
|
2
|
+
on: [push, pull_request]
|
7
3
|
jobs:
|
8
4
|
test:
|
9
5
|
runs-on: ubuntu-latest
|
10
|
-
continue-on-error: ${{ (matrix.grape-swagger.experimental) || (matrix.ruby.experimental) }}
|
11
6
|
strategy:
|
12
7
|
fail-fast: false
|
13
8
|
matrix:
|
14
|
-
|
15
|
-
- {
|
16
|
-
- {
|
17
|
-
|
18
|
-
- {
|
19
|
-
- {
|
20
|
-
- {
|
21
|
-
- {
|
22
|
-
- { version: "ruby-head", experimental: true }
|
23
|
-
- { version: "jruby-9.4.2", experimental: false }
|
24
|
-
- { version: "jruby-head", experimental: true }
|
9
|
+
entry:
|
10
|
+
- { ruby: "2.7", grape-swagger: "1.6.1" }
|
11
|
+
- { ruby: "3.0", grape-swagger: "1.6.1" }
|
12
|
+
- { ruby: "3.1", grape-swagger: "1.6.1" }
|
13
|
+
- { ruby: "3.2", grape-swagger: "1.6.1" }
|
14
|
+
- { ruby: "3.2", grape-swagger: "2.0.2" }
|
15
|
+
- { ruby: "jruby-9.4.6", grape-swagger: "1.6.1" }
|
16
|
+
- { ruby: "jruby-9.4.6", grape-swagger: "2.0.2" }
|
25
17
|
env:
|
26
|
-
GRAPE_SWAGGER_VERSION: ${{ matrix.grape-swagger
|
18
|
+
GRAPE_SWAGGER_VERSION: ${{ matrix.entry.grape-swagger }}
|
27
19
|
steps:
|
28
20
|
- uses: actions/checkout@v3
|
29
21
|
- name: Set up Ruby
|
30
22
|
uses: ruby/setup-ruby@v1
|
31
23
|
with:
|
32
|
-
ruby-version: ${{ matrix.ruby
|
24
|
+
ruby-version: ${{ matrix.entry.ruby }}
|
33
25
|
bundler-cache: true
|
34
26
|
- name: Setup Firefox
|
35
27
|
uses: browser-actions/setup-firefox@v1
|
data/.rubocop.yml
CHANGED
data/.rubocop_todo.yml
CHANGED
@@ -1,105 +1,116 @@
|
|
1
1
|
# This configuration was generated by
|
2
2
|
# `rubocop --auto-gen-config`
|
3
|
-
# on
|
3
|
+
# on 2024-04-06 14:14:58 UTC using RuboCop version 1.62.1.
|
4
4
|
# The point is for the user to remove these configuration records
|
5
5
|
# one by one as the offenses are removed from the code base.
|
6
6
|
# Note that changes in the inspected code, or installation of new
|
7
7
|
# versions of RuboCop, may require this file to be generated again.
|
8
8
|
|
9
|
-
# Offense count:
|
10
|
-
# Configuration parameters:
|
11
|
-
#
|
12
|
-
|
13
|
-
Exclude:
|
14
|
-
- 'Gemfile'
|
15
|
-
|
16
|
-
# Offense count: 8
|
17
|
-
# Cop supports --auto-correct.
|
18
|
-
# Configuration parameters: TreatCommentsAsGroupSeparators, Include.
|
19
|
-
# Include: **/*.gemfile, **/Gemfile, **/gems.rb
|
20
|
-
Bundler/OrderedGems:
|
9
|
+
# Offense count: 6
|
10
|
+
# Configuration parameters: EnforcedStyle.
|
11
|
+
# SupportedStyles: link_or_button, strict
|
12
|
+
Capybara/ClickLinkOrButtonStyle:
|
21
13
|
Exclude:
|
22
|
-
- '
|
14
|
+
- 'spec/features/swagger_spec.rb'
|
23
15
|
|
24
16
|
# Offense count: 1
|
25
|
-
|
26
|
-
Layout/EmptyLineAfterGuardClause:
|
17
|
+
Capybara/SpecificMatcher:
|
27
18
|
Exclude:
|
28
|
-
- '
|
19
|
+
- 'spec/features/welcome_spec.rb'
|
29
20
|
|
30
21
|
# Offense count: 1
|
31
|
-
#
|
32
|
-
|
22
|
+
# Configuration parameters: Severity, Include.
|
23
|
+
# Include: **/*.gemspec
|
24
|
+
Gemspec/RequiredRubyVersion:
|
33
25
|
Exclude:
|
34
26
|
- 'grape-swagger-rails.gemspec'
|
35
27
|
|
28
|
+
# Offense count: 2
|
29
|
+
# Configuration parameters: AllowedMethods.
|
30
|
+
# AllowedMethods: enums
|
31
|
+
Lint/ConstantDefinitionInBlock:
|
32
|
+
Exclude:
|
33
|
+
- 'lib/tasks/swagger_ui.rake'
|
34
|
+
|
36
35
|
# Offense count: 1
|
37
|
-
|
38
|
-
Layout/EmptyLinesAroundArguments:
|
36
|
+
Lint/MixedRegexpCaptureTypes:
|
39
37
|
Exclude:
|
40
|
-
- 'lib/
|
38
|
+
- 'lib/tasks/swagger_ui.rake'
|
41
39
|
|
42
|
-
# Offense count:
|
43
|
-
#
|
44
|
-
#
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
40
|
+
# Offense count: 4
|
41
|
+
# Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns, inherit_mode.
|
42
|
+
# AllowedMethods: refine
|
43
|
+
Metrics/BlockLength:
|
44
|
+
Max: 89
|
45
|
+
|
46
|
+
# Offense count: 2
|
47
|
+
# Configuration parameters: ExpectMatchingDefinition, CheckDefinitionPathHierarchy, CheckDefinitionPathHierarchyRoots, Regex, IgnoreExecutableScripts, AllowedAcronyms.
|
48
|
+
# CheckDefinitionPathHierarchyRoots: lib, spec, test, src
|
49
|
+
# AllowedAcronyms: CLI, DSL, ACL, API, ASCII, CPU, CSS, DNS, EOF, GUID, HTML, HTTP, HTTPS, ID, IP, JSON, LHS, QPS, RAM, RHS, RPC, SLA, SMTP, SQL, SSH, TCP, TLS, TTL, UDP, UI, UID, UUID, URI, URL, UTF8, VM, XML, XMPP, XSRF, XSS
|
50
|
+
Naming/FileName:
|
49
51
|
Exclude:
|
50
52
|
- 'lib/grape-swagger-rails.rb'
|
53
|
+
- 'spec/features/grape-swagger-rails_spec.rb'
|
51
54
|
|
52
|
-
# Offense count:
|
53
|
-
|
55
|
+
# Offense count: 13
|
56
|
+
# Configuration parameters: Prefixes, AllowedPatterns.
|
57
|
+
# Prefixes: when, with, without
|
58
|
+
RSpec/ContextWording:
|
54
59
|
Exclude:
|
55
|
-
- '
|
60
|
+
- 'spec/features/swagger_spec.rb'
|
56
61
|
|
57
62
|
# Offense count: 1
|
58
|
-
#
|
59
|
-
|
63
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
64
|
+
# Configuration parameters: SkipBlocks, EnforcedStyle.
|
65
|
+
# SupportedStyles: described_class, explicit
|
66
|
+
RSpec/DescribedClass:
|
60
67
|
Exclude:
|
61
|
-
- 'spec/
|
68
|
+
- 'spec/features/grape-swagger-rails_spec.rb'
|
62
69
|
|
63
|
-
# Offense count:
|
64
|
-
#
|
65
|
-
|
70
|
+
# Offense count: 6
|
71
|
+
# Configuration parameters: CountAsOne.
|
72
|
+
RSpec/ExampleLength:
|
73
|
+
Max: 8
|
74
|
+
|
75
|
+
# Offense count: 1
|
76
|
+
# Configuration parameters: Include, CustomTransform, IgnoreMethods, SpecSuffixOnly.
|
77
|
+
# Include: **/*_spec*rb*, **/spec/**/*
|
78
|
+
RSpec/FilePath:
|
66
79
|
Exclude:
|
67
|
-
- '
|
68
|
-
- 'spec/dummy/Rakefile'
|
80
|
+
- 'spec/features/grape-swagger-rails_spec.rb'
|
69
81
|
|
70
82
|
# Offense count: 2
|
71
|
-
# Configuration parameters:
|
72
|
-
|
83
|
+
# Configuration parameters: AssignmentOnly.
|
84
|
+
RSpec/InstanceVariable:
|
73
85
|
Exclude:
|
74
|
-
- 'spec/
|
75
|
-
- 'spec/dummy/bin/rake'
|
86
|
+
- 'spec/features/swagger_spec.rb'
|
76
87
|
|
77
|
-
# Offense count:
|
78
|
-
|
79
|
-
|
80
|
-
Metrics/BlockLength:
|
81
|
-
Max: 282
|
88
|
+
# Offense count: 12
|
89
|
+
RSpec/MultipleExpectations:
|
90
|
+
Max: 4
|
82
91
|
|
83
92
|
# Offense count: 2
|
84
|
-
# Configuration parameters:
|
85
|
-
#
|
86
|
-
|
93
|
+
# Configuration parameters: EnforcedStyle, IgnoreSharedExamples.
|
94
|
+
# SupportedStyles: always, named_only
|
95
|
+
RSpec/NamedSubject:
|
87
96
|
Exclude:
|
88
|
-
- 'lib/grape-swagger-rails.rb'
|
89
97
|
- 'spec/features/grape-swagger-rails_spec.rb'
|
90
98
|
|
91
|
-
# Offense count:
|
92
|
-
#
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
#
|
97
|
-
#
|
98
|
-
|
99
|
+
# Offense count: 12
|
100
|
+
# Configuration parameters: AllowedGroups.
|
101
|
+
RSpec/NestedGroups:
|
102
|
+
Max: 4
|
103
|
+
|
104
|
+
# Offense count: 1
|
105
|
+
# Configuration parameters: Include, CustomTransform, IgnoreMethods, IgnoreMetadata.
|
106
|
+
# Include: **/*_spec.rb
|
107
|
+
RSpec/SpecFilePathFormat:
|
99
108
|
Exclude:
|
100
|
-
- '
|
109
|
+
- '**/spec/routing/**/*'
|
110
|
+
- 'spec/features/grape-swagger-rails_spec.rb'
|
101
111
|
|
102
112
|
# Offense count: 4
|
113
|
+
# Configuration parameters: AllowedConstants.
|
103
114
|
Style/Documentation:
|
104
115
|
Exclude:
|
105
116
|
- 'spec/**/*'
|
@@ -108,72 +119,14 @@ Style/Documentation:
|
|
108
119
|
- 'lib/grape-swagger-rails.rb'
|
109
120
|
- 'lib/grape-swagger-rails/engine.rb'
|
110
121
|
|
111
|
-
# Offense count: 2
|
112
|
-
# Cop supports --auto-correct.
|
113
|
-
# Configuration parameters: EnforcedStyle.
|
114
|
-
# SupportedStyles: compact, expanded
|
115
|
-
Style/EmptyMethod:
|
116
|
-
Exclude:
|
117
|
-
- 'app/controllers/grape_swagger_rails/application_controller.rb'
|
118
|
-
- 'spec/dummy/app/controllers/welcome_controller.rb'
|
119
|
-
|
120
122
|
# Offense count: 1
|
121
|
-
|
122
|
-
Style/Encoding:
|
123
|
-
Exclude:
|
124
|
-
- 'grape-swagger-rails.gemspec'
|
125
|
-
|
126
|
-
# Offense count: 14
|
127
|
-
# Cop supports --auto-correct.
|
128
|
-
Style/ExpandPathArguments:
|
129
|
-
Exclude:
|
130
|
-
- 'Rakefile'
|
131
|
-
- 'grape-swagger-rails.gemspec'
|
132
|
-
- 'lib/script/rails'
|
133
|
-
- 'lib/tasks/swagger_ui.rake'
|
134
|
-
- 'spec/dummy/Rakefile'
|
135
|
-
- 'spec/dummy/bin/bundle'
|
136
|
-
- 'spec/dummy/bin/rails'
|
137
|
-
- 'spec/dummy/bin/rake'
|
138
|
-
- 'spec/dummy/config/application.rb'
|
139
|
-
- 'spec/dummy/config/boot.rb'
|
140
|
-
- 'spec/dummy/config/environment.rb'
|
141
|
-
- 'spec/spec_helper.rb'
|
142
|
-
|
143
|
-
# Offense count: 37
|
144
|
-
# Cop supports --auto-correct.
|
145
|
-
# Configuration parameters: EnforcedStyle.
|
146
|
-
# SupportedStyles: always, never
|
147
|
-
Style/FrozenStringLiteralComment:
|
148
|
-
Enabled: false
|
149
|
-
|
150
|
-
# Offense count: 3
|
151
|
-
# Cop supports --auto-correct.
|
152
|
-
# Configuration parameters: PreferredDelimiters.
|
153
|
-
Style/PercentLiteralDelimiters:
|
123
|
+
Style/OpenStructUse:
|
154
124
|
Exclude:
|
155
|
-
- 'grape-swagger-rails.gemspec'
|
156
125
|
- 'lib/grape-swagger-rails.rb'
|
157
|
-
- 'spec/features/swagger_spec.rb'
|
158
|
-
|
159
|
-
# Offense count: 1
|
160
|
-
# Cop supports --auto-correct.
|
161
|
-
# Configuration parameters: EnforcedStyle, AllowInnerSlashes.
|
162
|
-
# SupportedStyles: slashes, percent_r, mixed
|
163
|
-
Style/RegexpLiteral:
|
164
|
-
Exclude:
|
165
|
-
- 'lib/tasks/swagger_ui.rake'
|
166
126
|
|
167
127
|
# Offense count: 2
|
168
|
-
#
|
169
|
-
# Configuration parameters:
|
170
|
-
# SupportedStyles: percent, brackets
|
171
|
-
Style/SymbolArray:
|
172
|
-
EnforcedStyle: brackets
|
173
|
-
|
174
|
-
# Offense count: 48
|
175
|
-
# Cop supports --auto-correct.
|
176
|
-
# Configuration parameters: AutoCorrect, AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
|
128
|
+
# This cop supports safe autocorrection (--autocorrect).
|
129
|
+
# Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns.
|
177
130
|
# URISchemes: http, https
|
178
|
-
|
179
|
-
Max:
|
131
|
+
Layout/LineLength:
|
132
|
+
Max: 143
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,12 @@
|
|
1
|
+
### 0.5.0 (2024/04/06)
|
2
|
+
|
3
|
+
* [#110](https://github.com/ruby-grape/grape-swagger-rails/pull/110): Update dummy app to current rails conventions - [@duffn](https://github.com/duffn).
|
4
|
+
* [#112](https://github.com/ruby-grape/grape-swagger-rails/pull/112): Add RuboCop GHA & autocorrect violations - [@duffn](https://github.com/duffn).
|
5
|
+
* [#114](https://github.com/ruby-grape/grape-swagger-rails/pull/114): Add `api_key_placeholder` option - [@SofiaSousa](https://github.com/SofiaSousa).
|
6
|
+
* [#116](https://github.com/ruby-grape/grape-swagger-rails/pull/116): Ensure that `ostruct` is loaded - [@jrmhaig](https://github.com/jrmhaig).
|
7
|
+
* [#117](https://github.com/ruby-grape/grape-swagger-rails/pull/117): Fix rubygems source code location metadata - [@dblock](https://github.com/dblock).
|
8
|
+
* [#118](https://github.com/ruby-grape/grape-swagger-rails/pull/118): Split the test matrix, fix JRuby tests - [@dblock](https://github.com/dblock).
|
9
|
+
|
1
10
|
### 0.4.0 (2023/03/28)
|
2
11
|
|
3
12
|
* [#107](https://github.com/ruby-grape/grape-swagger-rails/pull/107): Add test matrix for multiple ruby versions - [@duffn](https://github.com/duffn).
|
data/Dangerfile
CHANGED
data/Gemfile
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
source 'https://rubygems.org'
|
2
4
|
|
3
5
|
gemspec
|
@@ -6,28 +8,27 @@ case version = ENV['GRAPE_SWAGGER_VERSION'] || '~> 1.6.0'
|
|
6
8
|
when 'HEAD'
|
7
9
|
gem 'grape-swagger', github: 'ruby-grape/grape-swagger'
|
8
10
|
else
|
9
|
-
gem 'grape-swagger', version
|
10
11
|
gem 'grape', '>= 1.3.0'
|
12
|
+
gem 'grape-swagger', version
|
11
13
|
end
|
12
14
|
|
13
15
|
group :development, :test do
|
14
16
|
gem 'capybara'
|
15
|
-
gem 'coffee-rails'
|
16
17
|
gem 'grape-swagger-ui'
|
17
18
|
gem 'jquery-rails'
|
18
19
|
gem 'mime-types'
|
19
20
|
gem 'nokogiri'
|
20
21
|
gem 'rack', '< 3.0'
|
21
22
|
gem 'rack-cors'
|
22
|
-
gem 'rack-no_animations'
|
23
23
|
gem 'rake'
|
24
24
|
gem 'rspec-rails'
|
25
|
-
gem 'rubocop'
|
25
|
+
gem 'rubocop'
|
26
|
+
gem 'rubocop-capybara'
|
27
|
+
gem 'rubocop-rake'
|
28
|
+
gem 'rubocop-rspec'
|
26
29
|
gem 'ruby-grape-danger', '~> 0.2.0', require: false
|
27
|
-
gem 'sass'
|
28
|
-
gem 'sass-rails'
|
29
30
|
gem 'selenium-webdriver'
|
30
|
-
gem 'sprockets'
|
31
|
+
gem 'sprockets-rails', require: 'sprockets/railtie'
|
31
32
|
gem 'uglifier'
|
32
33
|
gem 'webrick'
|
33
34
|
end
|
data/README.md
CHANGED
@@ -158,9 +158,10 @@ by specify:
|
|
158
158
|
GrapeSwaggerRails.options.api_auth = 'token'
|
159
159
|
GrapeSwaggerRails.options.api_key_name = 'Authorization'
|
160
160
|
GrapeSwaggerRails.options.api_key_type = 'header'
|
161
|
+
GrapeSwaggerRails.options.api_key_placeholder = 'authorization_token'
|
161
162
|
```
|
162
163
|
|
163
|
-
You can use the ```
|
164
|
+
You can use the ```authorization_token``` input box to fill in your API token.
|
164
165
|
### Swagger UI Authorization
|
165
166
|
|
166
167
|
You may want to authenticate users before displaying the Swagger UI, particularly when the API is protected by Basic Authentication.
|
data/Rakefile
CHANGED
@@ -1,14 +1,10 @@
|
|
1
|
-
|
2
|
-
begin
|
3
|
-
require 'bundler/setup'
|
4
|
-
rescue LoadError
|
5
|
-
puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
|
6
|
-
end
|
1
|
+
# frozen_string_literal: true
|
7
2
|
|
8
|
-
|
3
|
+
require 'bundler/setup'
|
4
|
+
require 'bundler/gem_tasks'
|
9
5
|
|
6
|
+
APP_RAKEFILE = File.expand_path('spec/dummy/Rakefile', __dir__)
|
10
7
|
load 'rails/tasks/engine.rake'
|
11
|
-
Bundler::GemHelper.install_tasks
|
12
8
|
|
13
9
|
Dir[File.join(File.dirname(__FILE__), 'lib/tasks/**/*.rake')].each do |f|
|
14
10
|
load f
|
@@ -23,4 +19,4 @@ RSpec::Core::RakeTask.new(:spec)
|
|
23
19
|
require 'rubocop/rake_task'
|
24
20
|
RuboCop::RakeTask.new(:rubocop)
|
25
21
|
|
26
|
-
task default: [
|
22
|
+
task default: %i[rubocop spec]
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module GrapeSwaggerRails
|
2
4
|
class ApplicationController < ActionController::Base
|
3
5
|
if Rails::VERSION::MAJOR >= 4
|
@@ -6,13 +8,13 @@ module GrapeSwaggerRails
|
|
6
8
|
before_filter { run_before_action }
|
7
9
|
end
|
8
10
|
|
9
|
-
def index
|
10
|
-
end
|
11
|
+
def index; end
|
11
12
|
|
12
13
|
private
|
13
14
|
|
14
15
|
def run_before_action
|
15
16
|
return unless GrapeSwaggerRails.options.before_action
|
17
|
+
|
16
18
|
instance_exec(request, &GrapeSwaggerRails.options.before_action)
|
17
19
|
end
|
18
20
|
end
|
@@ -96,7 +96,7 @@
|
|
96
96
|
|
97
97
|
<form id='api_selector'>
|
98
98
|
<div class='input'><input placeholder="http://example.com/api" id="input_baseUrl" name="baseUrl" type="text"/></div>
|
99
|
-
<div class='input'><input placeholder="
|
99
|
+
<div class='input'><input placeholder="<%= GrapeSwaggerRails.options.api_key_placeholder %>" id="input_apiKey" name="apiKey" type="text" value="<%= GrapeSwaggerRails.options.api_key_default_value %>"/></div>
|
100
100
|
<div class='input'><a id="explore" class="exploreBtn" href="#">Explore</a></div>
|
101
101
|
</form>
|
102
102
|
</div>
|
data/config/routes.rb
CHANGED
data/grape-swagger-rails.gemspec
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
lib = File.expand_path('lib', __dir__)
|
2
4
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
3
5
|
require 'grape-swagger-rails/version'
|
@@ -7,13 +9,17 @@ Gem::Specification.new do |spec|
|
|
7
9
|
spec.version = GrapeSwaggerRails::VERSION
|
8
10
|
spec.authors = ['Alexander Logunov']
|
9
11
|
spec.email = ['unlovedru@gmail.com']
|
10
|
-
spec.description = 'Swagger UI as Rails Engine for grape-swagger gem'
|
11
|
-
spec.summary = 'Swagger UI as Rails Engine for grape-swagger gem'
|
12
|
+
spec.description = 'Swagger UI as Rails Engine for grape-swagger gem.'
|
13
|
+
spec.summary = 'Swagger UI as Rails Engine for grape-swagger gem.'
|
12
14
|
spec.homepage = 'https://github.com/ruby-grape/grape-swagger-rails'
|
13
15
|
spec.license = 'MIT'
|
14
16
|
spec.files = `git ls-files`.split($INPUT_RECORD_SEPARATOR)
|
15
|
-
spec.test_files = `git ls-files spec`.split($INPUT_RECORD_SEPARATOR)
|
16
17
|
spec.require_paths = %w[lib]
|
17
|
-
|
18
18
|
spec.add_dependency 'railties', '>= 6.0.6.1'
|
19
|
+
spec.metadata = {
|
20
|
+
'bug_tracker_uri' => 'https://github.com/ruby-grape/grape-swagger-rails/issues',
|
21
|
+
'changelog_uri' => 'https://github.com/ruby-grape/grape-swagger-rails/blob/master/CHANGELOG.md',
|
22
|
+
'source_code_uri' => "https://github.com/ruby-grape/grape-swagger-rails/tree/v#{GrapeSwaggerRails::VERSION}",
|
23
|
+
'rubygems_mfa_required' => 'true'
|
24
|
+
}
|
19
25
|
end
|
data/lib/grape-swagger-rails.rb
CHANGED
@@ -1,4 +1,7 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'grape-swagger-rails/engine'
|
4
|
+
require 'ostruct'
|
2
5
|
|
3
6
|
module GrapeSwaggerRails
|
4
7
|
class Options < OpenStruct
|
@@ -20,24 +23,24 @@ module GrapeSwaggerRails
|
|
20
23
|
mattr_accessor :options
|
21
24
|
|
22
25
|
self.options = Options.new(
|
26
|
+
url: '/swagger_doc',
|
27
|
+
app_name: 'Swagger',
|
28
|
+
app_url: 'http://swagger.wordnik.com',
|
23
29
|
|
24
|
-
|
25
|
-
app_name: 'Swagger',
|
26
|
-
app_url: 'http://swagger.wordnik.com',
|
27
|
-
|
28
|
-
headers: {},
|
30
|
+
headers: {},
|
29
31
|
|
30
|
-
api_auth:
|
31
|
-
api_key_name:
|
32
|
-
api_key_type:
|
33
|
-
api_key_default_value:
|
32
|
+
api_auth: '', # 'basic' or 'bearer'
|
33
|
+
api_key_name: 'api_key', # 'Authorization'
|
34
|
+
api_key_type: 'query', # 'header'
|
35
|
+
api_key_default_value: '', # Auto populates api_key
|
36
|
+
api_key_placeholder: 'api_key', # Placeholder for api_key input
|
34
37
|
|
35
|
-
doc_expansion:
|
36
|
-
supported_submit_methods: %w
|
38
|
+
doc_expansion: 'none',
|
39
|
+
supported_submit_methods: %w[get post put delete patch],
|
37
40
|
|
38
|
-
before_action_proc:
|
41
|
+
before_action_proc: nil, # Proc used as a controller before action
|
39
42
|
|
40
|
-
hide_url_input:
|
41
|
-
hide_api_key_input:
|
43
|
+
hide_url_input: false,
|
44
|
+
hide_api_key_input: false
|
42
45
|
)
|
43
46
|
end
|
data/lib/script/rails
CHANGED
@@ -1,8 +1,10 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
2
4
|
# This command will automatically be run when you run "rails" with Rails 3 gems installed from the root of your application.
|
3
5
|
|
4
|
-
ENGINE_ROOT = File.expand_path('
|
5
|
-
ENGINE_PATH = File.expand_path('
|
6
|
+
ENGINE_ROOT = File.expand_path('..', __dir__)
|
7
|
+
ENGINE_PATH = File.expand_path('../lib/grape-swagger-rails/engine', __dir__)
|
6
8
|
|
7
9
|
require 'rails/all'
|
8
10
|
require 'rails/engine/commands'
|