grape-swagger-rails 1.0.10 → 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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fa18f1210b859b7dbc97ad02d4148ae73129724a296507557746e04e93b65db3
4
- data.tar.gz: 4e9facc05ebf657074d97e2b03c55a6df2f5ccdefbec6adaedfc7fd84bee061e
3
+ metadata.gz: ce061b25fb97c60e7fb24ac904116dd39723899ae633b81b6213868c322cc304
4
+ data.tar.gz: 58775278995267631da4e3d93b0d058d540ac78b8fa1ed8f02c6a672ea233a57
5
5
  SHA512:
6
- metadata.gz: 2edcda1c5c3f637618490bdbf46a3bd3fa1659da7cafd6339beb6ade0e85063dcd4b0339181d950b088c5f50957946bd2fe707f87c4c76d6e4cac7410381aa3a
7
- data.tar.gz: 85d8cefcc1e486df62e03e45d65173d7c7f5452582d04db453ae9cca37b557c0eb0ddc829e2e2b7732fec960b4c7733c5651042b8e0ffaa7ae2fe8c0fd2e766d
6
+ metadata.gz: 9a7112bdaa28e3c148bf127ec3f0583463961c080ef06f4a19dc7458fba713282d9f2909f19eb93b6d4d749df7d460315f8274be1907ecef138bde4fb3561d4a
7
+ data.tar.gz: 8ef3f5fa56a1d166ec806e3ca51692ba407bc82af058979fdecc7b7c9e2911db6684e536eae115a5ab3e1ba48835adca2441e60a09b47a06f4f667de321bb9fe
@@ -10,39 +10,14 @@ jobs:
10
10
  strategy:
11
11
  fail-fast: false
12
12
  matrix:
13
- include:
14
- - ruby: '3.2'
15
- rails: '7.2.2.2'
16
- grape: '~> 1.8.0'
17
- grape-swagger: '1.6.1'
18
- - ruby: '3.2'
19
- rails: '7.2.2.2'
20
- grape: '~> 3.1.0'
21
- grape-swagger: '2.1.4'
22
- - ruby: '3.3'
23
- rails: '7.2.2.2'
24
- grape: '~> 3.1.0'
25
- grape-swagger: '2.1.4'
26
- - ruby: '3.4'
27
- rails: '7.2.2.2'
28
- grape: '~> 3.1.0'
29
- grape-swagger: '2.1.4'
30
- - ruby: '3.2'
31
- rails: '~> 8.1.3'
32
- grape: '~> 3.1.0'
33
- grape-swagger: '2.1.4'
34
- - ruby: '3.3'
35
- rails: '~> 8.1.3'
36
- grape: '~> 3.1.0'
37
- grape-swagger: '2.1.4'
38
- - ruby: '3.4'
39
- rails: '~> 8.1.3'
40
- grape: '~> 3.1.0'
41
- grape-swagger: '2.1.4'
13
+ ruby: ['3.2', '3.3', '3.4']
14
+ rails: ['~> 8.1.4']
15
+ json: ['~> 2.0', '~> 3.0']
42
16
  env:
43
- GRAPE_VERSION: ${{ matrix.grape }}
44
- GRAPE_SWAGGER_VERSION: ${{ matrix.grape-swagger }}
17
+ GRAPE_VERSION: '~> 3.1.0'
18
+ GRAPE_SWAGGER_VERSION: '2.1.4'
45
19
  RAILS_VERSION: ${{ matrix.rails }}
20
+ JSON_VERSION: ${{ matrix.json }}
46
21
  steps:
47
22
  - uses: actions/checkout@v6
48
23
  - name: Set up Ruby
data/CHANGELOG.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  * Your contribution here.
4
4
 
5
+ ### 2.0.0 (2026/10/02)
6
+
7
+ * [#179](https://github.com/ruby-grape/grape-swagger-rails/pull/179): Require Rails 8.1.4+ and allow JSON 3 - [@moskvin](https://github.com/moskvin).
8
+
5
9
  ### 1.0.10 (2026/09/22)
6
10
 
7
11
  * [#177](https://github.com/ruby-grape/grape-swagger-rails/pull/177): Bump Swagger UI to 5.33.0 - [@moskvin](https://github.com/moskvin).
data/CLAUDE.md CHANGED
@@ -73,8 +73,7 @@ Config in `.rubocop.yml` targets Ruby 3.4. Plugins: rubocop-capybara, rubocop-rs
73
73
 
74
74
  ## Compatibility Matrix
75
75
 
76
- - Rails 7.2 / 8.1 × Ruby 3.2–3.4 × grape-swagger 2.1.4 (grape ~> 3.1)
77
- - Rails 7.2 × Ruby 3.2 × grape-swagger 1.6.1 (grape ~> 1.8) — legacy combination
76
+ - Rails 8.1.4–8.1.x × Ruby 3.2–3.4 × JSON 2/3 × grape-swagger 2.1.4 (grape ~> 3.1)
78
77
  - Ruby 3.1 is excluded from Rails 8 (requires 3.2+)
79
78
  - grape ~> 1.8 is not tested on Ruby 3.4: Ruby 3.4 tightened `Forwardable` to raise on private-method delegation, which breaks Mustermann's `named_captures` forwarding used by grape-swagger 1.6.1 to introspect routes
80
79
  - Both Sprockets and Propshaft asset pipelines are tested in CI
data/Gemfile CHANGED
@@ -18,13 +18,15 @@ else
18
18
  gem 'grape-swagger', grape_swagger_version
19
19
  end
20
20
 
21
- case rails_version = ENV.fetch('RAILS_VERSION', '>= 7.2.3.1')
21
+ case rails_version = ENV.fetch('RAILS_VERSION', '>= 8.1.4')
22
22
  when 'edge'
23
23
  gem 'railties', github: 'rails/rails', branch: 'main'
24
24
  else
25
25
  gem 'railties', rails_version
26
26
  end
27
27
 
28
+ gem 'json', ENV.fetch('JSON_VERSION') if ENV.key?('JSON_VERSION')
29
+
28
30
  group :development, :test do
29
31
  gem 'capybara'
30
32
  gem 'danger', require: false
data/README.md CHANGED
@@ -44,13 +44,12 @@ Or install it yourself as:
44
44
 
45
45
  This gem is continuously tested against the following stack:
46
46
 
47
- | Ruby | Rails | Grape | grape-swagger | Swagger UI |
48
- |-----:|--------:|--------:|--------------:|-----------:|
49
- | 3.4 | 7.2.2.2 | 1.8.x | 1.6.1 | 5.33.0 |
50
- | 3.2+ | 7.2.2.2 | 3.1.x | 2.1.4 | 5.33.0 |
51
- | 3.2+ | 8.1.x | 3.1.x | 2.1.4 | 5.33.0 |
47
+ | Ruby | Rails | JSON | Grape | grape-swagger | Swagger UI |
48
+ |-----:|-------:|--------:|------:|--------------:|-----------:|
49
+ | 3.2+ | 8.1.4–8.1.x | 2.x/3.x | 3.1.x | 2.1.4 | 5.33.0 |
52
50
 
53
51
  The dummy app and CI also exercise both supported Rails asset pipelines: Sprockets and Propshaft.
52
+ Rails 8.1.4 is required for JSON 3 compatibility; older Rails versions remain supported by the 1.x gem releases.
54
53
 
55
54
  If you use a nearby version and hit an issue, please open one with your `Gemfile.lock` and a minimal reproduction.
56
55
 
data/UPGRADING.md CHANGED
@@ -1,6 +1,23 @@
1
1
  Upgrading Grape Swagger Rails
2
2
  =============================
3
3
 
4
+ ### Upgrading to 2.0.0
5
+
6
+ Version `2.0.0` drops support for Rails versions older than 8.1.4 and allows JSON 3. See [#179](https://github.com/ruby-grape/grape-swagger-rails/pull/179).
7
+
8
+ #### Upgrade checklist
9
+
10
+ 1. Upgrade your application to Rails `>= 8.1.4, < 8.2`. The gem now depends on `railties >= 8.1.4, < 8.2` (previously `>= 7.2.2.2, < 8.2`); Rails 8.1.4 is the first release compatible with JSON 3.
11
+ 2. The Ruby requirement is unchanged (`>= 3.2`).
12
+ 3. The `json < 3.0` upper bound was removed, so both `json` 2.x and 3.x are supported. No configuration changes are needed.
13
+ 4. If you cannot upgrade Rails yet, stay on the 1.x line:
14
+
15
+ ```ruby
16
+ gem 'grape-swagger-rails', '~> 1.0'
17
+ ```
18
+
19
+ No `GrapeSwaggerRails.options` or template changes are required.
20
+
4
21
  ### Upgrading to 1.0.0
5
22
 
6
23
  Version `1.0.0` includes a major Swagger UI integration refresh and several configuration additions.
@@ -18,10 +18,9 @@ Gem::Specification.new do |spec|
18
18
  spec.require_paths = %w[lib]
19
19
  spec.required_ruby_version = '>= 3.2'
20
20
  spec.add_dependency 'haml-rails', '>= 2.0', '< 4.0'
21
- # Supported Rails versions use JSON APIs removed in JSON 3 (quirks_mode and positional parse options).
22
- spec.add_dependency 'json', '>= 2.0', '< 3.0'
21
+ spec.add_dependency 'json', '>= 2.0'
23
22
  spec.add_dependency 'ostruct', '>= 0.6', '< 1.0'
24
- spec.add_dependency 'railties', '>= 7.2.2.2', '< 8.2'
23
+ spec.add_dependency 'railties', '>= 8.1.4', '< 8.2'
25
24
  spec.metadata = {
26
25
  'bug_tracker_uri' => 'https://github.com/ruby-grape/grape-swagger-rails/issues',
27
26
  'changelog_uri' => 'https://github.com/ruby-grape/grape-swagger-rails/blob/master/CHANGELOG.md',
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module GrapeSwaggerRails
4
- VERSION = '1.0.10'
4
+ VERSION = '2.0.0'
5
5
  SWAGGER_UI_VERSION = '5.33.0'
6
6
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grape-swagger-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.10
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexander Logunov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-09-22 00:00:00.000000000 Z
11
+ date: 2026-10-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: haml-rails
@@ -37,9 +37,6 @@ dependencies:
37
37
  - - ">="
38
38
  - !ruby/object:Gem::Version
39
39
  version: '2.0'
40
- - - "<"
41
- - !ruby/object:Gem::Version
42
- version: '3.0'
43
40
  type: :runtime
44
41
  prerelease: false
45
42
  version_requirements: !ruby/object:Gem::Requirement
@@ -47,9 +44,6 @@ dependencies:
47
44
  - - ">="
48
45
  - !ruby/object:Gem::Version
49
46
  version: '2.0'
50
- - - "<"
51
- - !ruby/object:Gem::Version
52
- version: '3.0'
53
47
  - !ruby/object:Gem::Dependency
54
48
  name: ostruct
55
49
  requirement: !ruby/object:Gem::Requirement
@@ -76,7 +70,7 @@ dependencies:
76
70
  requirements:
77
71
  - - ">="
78
72
  - !ruby/object:Gem::Version
79
- version: 7.2.2.2
73
+ version: 8.1.4
80
74
  - - "<"
81
75
  - !ruby/object:Gem::Version
82
76
  version: '8.2'
@@ -86,7 +80,7 @@ dependencies:
86
80
  requirements:
87
81
  - - ">="
88
82
  - !ruby/object:Gem::Version
89
- version: 7.2.2.2
83
+ version: 8.1.4
90
84
  - - "<"
91
85
  - !ruby/object:Gem::Version
92
86
  version: '8.2'
@@ -197,7 +191,7 @@ licenses:
197
191
  metadata:
198
192
  bug_tracker_uri: https://github.com/ruby-grape/grape-swagger-rails/issues
199
193
  changelog_uri: https://github.com/ruby-grape/grape-swagger-rails/blob/master/CHANGELOG.md
200
- source_code_uri: https://github.com/ruby-grape/grape-swagger-rails/tree/v1.0.10
194
+ source_code_uri: https://github.com/ruby-grape/grape-swagger-rails/tree/v2.0.0
201
195
  rubygems_mfa_required: 'true'
202
196
  post_install_message:
203
197
  rdoc_options: []