versioncake 4.0.0 → 4.1.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.
Files changed (38) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby.yml +33 -0
  3. data/Appraisals +9 -3
  4. data/CHANGELOG.md +42 -1
  5. data/Gemfile.lock +31 -29
  6. data/README.md +13 -11
  7. data/SECURITY.md +9 -0
  8. data/gemfiles/rails5.0.gemfile.lock +77 -72
  9. data/gemfiles/rails5.2.gemfile.lock +66 -62
  10. data/gemfiles/rails6.0.gemfile +3 -3
  11. data/gemfiles/rails6.0.gemfile.lock +73 -67
  12. data/gemfiles/rails7.0.gemfile +9 -0
  13. data/gemfiles/rails7.0.gemfile.lock +127 -0
  14. data/lib/versioncake/controller_additions.rb +0 -6
  15. data/lib/versioncake/railtie.rb +9 -0
  16. data/lib/versioncake/response_strategy/http_content_type_strategy.rb +4 -2
  17. data/lib/versioncake/strategies/extraction_strategy.rb +11 -7
  18. data/lib/versioncake/version.rb +1 -1
  19. data/lib/versioncake/version_checker.rb +2 -1
  20. data/lib/versioncake/version_context_service.rb +1 -1
  21. data/lib/versioncake/versioned_request.rb +1 -1
  22. data/lib/versioncake/view_additions.rb +8 -88
  23. data/lib/versioncake/view_additions_rails5.rb +70 -0
  24. data/lib/versioncake/view_additions_rails6.rb +69 -0
  25. data/lib/versioncake/view_additions_rails7.rb +155 -0
  26. data/lib/versioncake.rb +3 -1
  27. data/spec/integration/controller/unversioned_controller_spec.rb +1 -1
  28. data/spec/integration/view/render_spec.rb +8 -1
  29. data/spec/integration/view/view_additions_rails5_spec.rb +67 -0
  30. data/spec/integration/view/view_additions_rails6_spec.rb +44 -0
  31. data/spec/integration/view/view_additions_rails7_spec.rb +76 -0
  32. data/spec/unit/strategies/extraction_strategy_spec.rb +2 -2
  33. data/spec/unit/version_checker_spec.rb +1 -1
  34. data/spec/unit/versioned_request_spec.rb +0 -7
  35. data/versioncake.gemspec +5 -5
  36. metadata +29 -20
  37. data/.travis.yml +0 -20
  38. data/spec/integration/view/view_additions_spec.rb +0 -42
metadata CHANGED
@@ -1,70 +1,70 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: versioncake
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.0
4
+ version: 4.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jim Jones
8
8
  - Ben Willis
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2020-03-11 00:00:00.000000000 Z
12
+ date: 2022-04-01 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: actionpack
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - "~>"
18
+ - - ">"
19
19
  - !ruby/object:Gem::Version
20
20
  version: '5.0'
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - "~>"
25
+ - - ">"
26
26
  - !ruby/object:Gem::Version
27
27
  version: '5.0'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: activesupport
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - "~>"
32
+ - - ">"
33
33
  - !ruby/object:Gem::Version
34
34
  version: '5.0'
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - "~>"
39
+ - - ">"
40
40
  - !ruby/object:Gem::Version
41
41
  version: '5.0'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: railties
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - "~>"
46
+ - - ">"
47
47
  - !ruby/object:Gem::Version
48
48
  version: '5.0'
49
49
  type: :runtime
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - "~>"
53
+ - - ">"
54
54
  - !ruby/object:Gem::Version
55
55
  version: '5.0'
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: tzinfo
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - "~>"
60
+ - - ">"
61
61
  - !ruby/object:Gem::Version
62
62
  version: '1.2'
63
63
  type: :runtime
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
- - - "~>"
67
+ - - ">"
68
68
  - !ruby/object:Gem::Version
69
69
  version: '1.2'
70
70
  - !ruby/object:Gem::Dependency
@@ -99,16 +99,16 @@ dependencies:
99
99
  name: rake
100
100
  requirement: !ruby/object:Gem::Requirement
101
101
  requirements:
102
- - - "~>"
102
+ - - ">"
103
103
  - !ruby/object:Gem::Version
104
- version: '13.0'
104
+ version: '12.0'
105
105
  type: :development
106
106
  prerelease: false
107
107
  version_requirements: !ruby/object:Gem::Requirement
108
108
  requirements:
109
- - - "~>"
109
+ - - ">"
110
110
  - !ruby/object:Gem::Version
111
- version: '13.0'
111
+ version: '12.0'
112
112
  - !ruby/object:Gem::Dependency
113
113
  name: rspec
114
114
  requirement: !ruby/object:Gem::Requirement
@@ -146,9 +146,9 @@ executables:
146
146
  extensions: []
147
147
  extra_rdoc_files: []
148
148
  files:
149
+ - ".github/workflows/ruby.yml"
149
150
  - ".gitignore"
150
151
  - ".rspec"
151
- - ".travis.yml"
152
152
  - Appraisals
153
153
  - CHANGELOG.md
154
154
  - CONTRIBUTING.md
@@ -157,6 +157,7 @@ files:
157
157
  - README.md
158
158
  - RELEASE.md
159
159
  - Rakefile
160
+ - SECURITY.md
160
161
  - bin/versioncake
161
162
  - gemfiles/.bundle/config
162
163
  - gemfiles/rails5.0.gemfile
@@ -165,6 +166,8 @@ files:
165
166
  - gemfiles/rails5.2.gemfile.lock
166
167
  - gemfiles/rails6.0.gemfile
167
168
  - gemfiles/rails6.0.gemfile.lock
169
+ - gemfiles/rails7.0.gemfile
170
+ - gemfiles/rails7.0.gemfile.lock
168
171
  - images/versioncake-logo450x100.png
169
172
  - lib/generators/templates/versioncake.rb
170
173
  - lib/generators/versioncake/install_generator.rb
@@ -175,6 +178,7 @@ files:
175
178
  - lib/versioncake/engine.rb
176
179
  - lib/versioncake/exceptions.rb
177
180
  - lib/versioncake/rack/middleware.rb
181
+ - lib/versioncake/railtie.rb
178
182
  - lib/versioncake/response_strategy/base.rb
179
183
  - lib/versioncake/response_strategy/http_content_type_strategy.rb
180
184
  - lib/versioncake/response_strategy/http_header_strategy.rb
@@ -194,6 +198,9 @@ files:
194
198
  - lib/versioncake/versioned_resource.rb
195
199
  - lib/versioncake/versioned_response_service.rb
196
200
  - lib/versioncake/view_additions.rb
201
+ - lib/versioncake/view_additions_rails5.rb
202
+ - lib/versioncake/view_additions_rails6.rb
203
+ - lib/versioncake/view_additions_rails7.rb
197
204
  - spec/fixtures/partials/_versioned.erb
198
205
  - spec/fixtures/partials/_versioned.v1.erb
199
206
  - spec/fixtures/partials/_versioned.v2.erb
@@ -212,7 +219,9 @@ files:
212
219
  - spec/integration/controller/unversioned_controller_spec.rb
213
220
  - spec/integration/rack/middleware_regression_spec.rb
214
221
  - spec/integration/view/render_spec.rb
215
- - spec/integration/view/view_additions_spec.rb
222
+ - spec/integration/view/view_additions_rails5_spec.rb
223
+ - spec/integration/view/view_additions_rails6_spec.rb
224
+ - spec/integration/view/view_additions_rails7_spec.rb
216
225
  - spec/rails_helper.rb
217
226
  - spec/spec_helper.rb
218
227
  - spec/test_app/Rakefile
@@ -252,7 +261,7 @@ homepage: http://bwillis.github.io/versioncake
252
261
  licenses:
253
262
  - MIT
254
263
  metadata: {}
255
- post_install_message:
264
+ post_install_message:
256
265
  rdoc_options: []
257
266
  require_paths:
258
267
  - lib
@@ -267,8 +276,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
267
276
  - !ruby/object:Gem::Version
268
277
  version: '0'
269
278
  requirements: []
270
- rubygems_version: 3.0.3
271
- signing_key:
279
+ rubygems_version: 3.1.6
280
+ signing_key:
272
281
  specification_version: 4
273
282
  summary: Easily render versions of your rails views.
274
283
  test_files: []
data/.travis.yml DELETED
@@ -1,20 +0,0 @@
1
- language: ruby
2
-
3
- before_install: gem install bundler && bundle update --bundler
4
-
5
- rvm:
6
- - 2.3.3
7
- - 2.4.7
8
- - 2.5.6
9
-
10
- gemfile:
11
- - gemfiles/rails5.0.gemfile
12
- - gemfiles/rails5.2.gemfile
13
- - gemfiles/rails6.0.gemfile
14
-
15
- matrix:
16
- exclude:
17
- - rvm: 2.3.3
18
- gemfile: gemfiles/rails6.0.gemfile
19
- - rvm: 2.4.7
20
- gemfile: gemfiles/rails6.0.gemfile
@@ -1,42 +0,0 @@
1
- require './spec/rails_helper'
2
-
3
- describe ActionView::PathResolver do
4
- let(:resolver) { ActionView::PathResolver.new }
5
-
6
- context '#extract_handler_and_format' do
7
- subject(:template_format) do
8
- _, format = resolver.extract_handler_and_format("application.#{template_extension}", nil)
9
- format.to_s
10
- end
11
-
12
- context 'when only handler and format are present' do
13
- let(:template_extension) { 'html.erb' }
14
-
15
- it { expect(template_format).to eq 'text/html' }
16
- end
17
-
18
- context 'when handler, format and version are present' do
19
- let(:template_extension) { 'json.v1.jbuilder' }
20
-
21
- it { expect(template_format).to eq 'application/json' }
22
- end
23
-
24
- context 'when handler, format and locale are present' do
25
- let(:template_extension) { 'en.json.jbuilder' }
26
-
27
- it { expect(template_format).to eq 'application/json' }
28
- end
29
-
30
- context 'when handler, format, locale and version are present' do
31
- let(:template_extension) { 'en.json.v1.jbuilder' }
32
-
33
- it { expect(template_format).to eq 'application/json' }
34
- end
35
-
36
- context 'when handler, format, variant and version are present' do
37
- let(:template_extension) { 'application.json+tablet.v1.jbuilder' }
38
-
39
- it { expect(template_format).to eq 'application/json' }
40
- end
41
- end
42
- end