rambulance 2.3.0 → 3.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: 88ab78d4adf6b58a2a0206350009d9cf58577837d3a7dc9fc5bef1ca25fe23d5
4
- data.tar.gz: 6f24e7cbf7a825b5e762e626e2799ad0491fcb46f0c3ea7cbbb72e397ee43e9f
3
+ metadata.gz: 6572a6a2e77dbc135e1fb9bb830b6ef43af6e302b7ec0db304577f74a0cef088
4
+ data.tar.gz: 9f1fc8a6204ef86c00525f4cfb9e71a80285a89e2f7b1b4aa82e6c10b56496b4
5
5
  SHA512:
6
- metadata.gz: 82ae05f28f01beb391c7988a6f993d76b1a81596d5da73645284e22f5328a78cc1294bd4e5f96c5603cb82872e69a057f6e620ed44221ee4a18e68d313b5016a
7
- data.tar.gz: 432400598a5d82a59f7f1613d2443b320c1ab7943465183bd70258df9581d5ddd77b06117f98d54e452a990c05277100195fd584f15c086c6fd40598776a02aa
6
+ metadata.gz: cdd6de274dbe0607bba3a0c63bd24ca733bde12cc1cfde13f7eccc2cfa560d6dee2efca1ff444cd9e6445d9a15ba17234683c7a3ef7c7a957245fd40f80af8ed
7
+ data.tar.gz: 660ce18b77d8e10a3d042cc34768c802e4069633e966d32f7e240162eddb5a359d1a533e06d78cbaf28e288f92a8b5e2c88055da0b947fc9c4d6bbcf42c0a32a
@@ -14,8 +14,6 @@ jobs:
14
14
  - '2.7'
15
15
  - '2.6'
16
16
  - '2.5'
17
- - '2.4'
18
- - '2.3'
19
17
  - 'jruby-9.3'
20
18
  - 'jruby-9.4'
21
19
  gemfile:
@@ -73,18 +71,6 @@ jobs:
73
71
  gemfile: gemfiles/rails_42.gemfile
74
72
  - ruby_version: '2.5'
75
73
  gemfile: gemfiles/rails_70.gemfile
76
- - ruby_version: '2.4'
77
- gemfile: gemfiles/rails_70.gemfile
78
- - ruby_version: '2.4'
79
- gemfile: gemfiles/rails_61.gemfile
80
- - ruby_version: '2.4'
81
- gemfile: gemfiles/rails_60.gemfile
82
- - ruby_version: '2.3'
83
- gemfile: gemfiles/rails_70.gemfile
84
- - ruby_version: '2.3'
85
- gemfile: gemfiles/rails_61.gemfile
86
- - ruby_version: '2.3'
87
- gemfile: gemfiles/rails_60.gemfile
88
74
  - ruby_version: 'jruby-9.3'
89
75
  gemfile: gemfiles/rails_70.gemfile
90
76
  - ruby_version: 'jruby-9.3'
data/Appraisals CHANGED
@@ -43,6 +43,12 @@ appraise "rails_70" do
43
43
  gem "railties", "~> 7.0.0"
44
44
  end
45
45
 
46
+ appraise "rails_71" do
47
+ gem "activesupport", "~> 7.1.0.beta1"
48
+ gem "actionpack", "~> 7.1.0.beta1"
49
+ gem "railties", "~> 7.1.0.beta1"
50
+ end
51
+
46
52
  appraise "rails_edge" do
47
53
  git 'https://github.com/rails/rails.git' do
48
54
  gem "activesupport", require: 'active_support'
data/CHANGELOG.md CHANGED
@@ -1,6 +1,26 @@
1
- ## v2.2.0
1
+ ## v3.0.0
2
2
 
3
- _<sup>released at 2022-02-22 07:52:27 UTC</sup>_
3
+ #### New Features
4
+
5
+ - Add support for Rails 7.1 (`be6f129d`)
6
+
7
+ #### Breaking Changes
8
+
9
+ - Drop support for Ruby 2.3 and 2.4 (`c0d3439d`)
10
+
11
+ ## [v2.3.0](https://github.com/yuki24/rambulance/tree/v2.3.0)
12
+
13
+ _<sup>released at 2023-01-05 05:33:36 UTC</sup>_
14
+
15
+ #### New Features
16
+
17
+ - Ruby 3.2 is now officially supported.
18
+
19
+ ## [v2.2.0](https://github.com/yuki24/rambulance/tree/v2.2.0)
20
+
21
+ _<sup>released at 2022-02-13 07:56:32 UTC</sup>_
22
+
23
+ #### Features
4
24
 
5
25
  - Add support for Ruby 3.1, Rails 7.0 and JRuby 9.3.3.0
6
26
 
@@ -0,0 +1,9 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "activesupport", "~> 7.1.0.beta1"
6
+ gem "actionpack", "~> 7.1.0.beta1"
7
+ gem "railties", "~> 7.1.0.beta1"
8
+
9
+ gemspec path: "../"
@@ -11,12 +11,12 @@ module Rambulance
11
11
 
12
12
  BAD_REQUEST_ERRORS = [
13
13
  ActionController::BadRequest,
14
- begin
15
- ActionDispatch::Http::Parameters::ParseError # Rails >= 5.2.0
16
- rescue NameError; end,
17
- begin
18
- ActionDispatch::ParamsParser::ParseError # Rails < 5.2.0
19
- rescue NameError; end,
14
+ # Rails >= 7.1.0
15
+ defined?(ActionDispatch::Http::MimeNegotiation::InvalidType) ? ActionDispatch::Http::MimeNegotiation::InvalidType : nil,
16
+ # Rails >= 5.2.0
17
+ defined?(ActionDispatch::Http::Parameters::ParseError) ? ActionDispatch::Http::Parameters::ParseError : nil,
18
+ # Rails < 5.2.0
19
+ defined?(ActionDispatch::ParamsParser::ParseError) ? ActionDispatch::ParamsParser::ParseError : nil
20
20
  ].compact.freeze
21
21
 
22
22
  class ExceptionsApp < ActionController::Base
@@ -89,6 +89,10 @@ module Rambulance
89
89
  request.env["MALFORMED_HTTP_ACCEPT"], request.env["HTTP_ACCEPT"] = request.env["HTTP_ACCEPT"], "*/*"
90
90
  end
91
91
 
92
+ if defined?(Rack::RACK_REQUEST_FORM_ERROR) && request.env.include?(Rack::RACK_REQUEST_FORM_ERROR)
93
+ request.env.delete(Rack::RACK_REQUEST_FORM_ERROR)
94
+ end
95
+
92
96
  # The #formats method needs to be called after the sanitization above.
93
97
  request.formats << Mime::Type.lookup('text/plain')
94
98
 
@@ -1,3 +1,3 @@
1
1
  module Rambulance
2
- VERSION = "2.3.0"
2
+ VERSION = "3.0.0"
3
3
  end
@@ -7,4 +7,3 @@ class ExeptionsAppTest < ActionDispatch::IntegrationTest
7
7
  assert_equal 404, response.status
8
8
  end
9
9
  end
10
-
@@ -4,6 +4,7 @@ require 'jbuilder'
4
4
  class TestApp < Rails::Application
5
5
  config.secret_token = '964ab2f0fbbb68bc36f3cc487ca296bb8555fac50627924024c245a1599e5265'
6
6
  config.session_store :cookie_store, :key => '_myapp_session'
7
+ config.active_support.cache_format_version = 7.1 if Rails::VERSION::STRING >= "7.1"
7
8
  config.active_support.deprecation = :log
8
9
  config.eager_load = false
9
10
  config.root = File.dirname(__FILE__)
@@ -2,28 +2,28 @@ require 'test_helper'
2
2
 
3
3
  class ErrorJsonTest < ActionDispatch::IntegrationTest
4
4
  test 'returns the 422 json for ActionController:InvalidAuthenticityToken but without its template' do
5
- get '/users/new'
5
+ get_json '/users/new'
6
6
 
7
7
  assert_equal 422, response.status
8
8
  assert_equal "Something went wrong", json_response['message']
9
9
  end
10
10
 
11
11
  test 'returns the 500 json for RuntimeError' do
12
- get '/users/1.json'
12
+ get_json '/users/1.json'
13
13
 
14
14
  assert_equal 500, response.status
15
15
  assert_equal "Something went wrong", json_response['message']
16
16
  end
17
17
 
18
18
  test 'returns the 404 json for CustomException' do
19
- get '/users.json'
19
+ get_json '/users.json'
20
20
 
21
21
  assert_equal 404, response.status
22
22
  assert_equal "Page not found", json_response['message']
23
23
  end
24
24
 
25
25
  test 'returns the 404 json for ActinoController::RoutingError' do
26
- get '/doesnt_exist.json'
26
+ get_json '/doesnt_exist.json'
27
27
 
28
28
  assert_equal 404, response.status
29
29
  assert_equal "Page not found", json_response['message']
@@ -92,21 +92,27 @@ class ErrorJsonTest < ActionDispatch::IntegrationTest
92
92
  private
93
93
 
94
94
  def without_layouts
95
- `mv test/fake_app/app/views/layouts/application.html.erb .`
96
- `mv test/fake_app/app/views/layouts/error.html.erb .`
97
-
98
- yield
99
- ensure
100
- `mv application.html.erb test/fake_app/app/views/layouts/`
101
- `mv error.html.erb test/fake_app/app/views/layouts/`
95
+ if Rails::VERSION::STRING >= '7.1.0'
96
+ yield
97
+ else
98
+ begin
99
+ `mv test/fake_app/app/views/layouts/application.html.erb .`
100
+ `mv test/fake_app/app/views/layouts/error.html.erb .`
101
+
102
+ yield
103
+ ensure
104
+ `mv application.html.erb test/fake_app/app/views/layouts/`
105
+ `mv error.html.erb test/fake_app/app/views/layouts/`
106
+ end
107
+ end
102
108
  end
103
109
 
104
- def get(path, params: {}, headers: {})
110
+ def get_json(path, params: {}, headers: {})
105
111
  without_layouts do
106
112
  if Rails::VERSION::STRING >= '5.1.0'
107
- super path, params: params, headers: { "CONTENT_TYPE" => "application/json", "HTTP_ACCEPT" => "application/json" }.merge(headers)
113
+ get path, params: params, headers: { "CONTENT_TYPE" => "application/json", "HTTP_ACCEPT" => "application/json" }.merge(headers)
108
114
  else
109
- super path, params, { "CONTENT_TYPE" => "application/json", "HTTP_ACCEPT" => "application/json" }.merge(headers)
115
+ get path, params, { "CONTENT_TYPE" => "application/json", "HTTP_ACCEPT" => "application/json" }.merge(headers)
110
116
  end
111
117
  end
112
118
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rambulance
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.0
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yuki Nishijima
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2023-01-05 00:00:00.000000000 Z
12
+ date: 2023-09-22 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
@@ -163,6 +163,7 @@ files:
163
163
  - gemfiles/rails_60.gemfile
164
164
  - gemfiles/rails_61.gemfile
165
165
  - gemfiles/rails_70.gemfile
166
+ - gemfiles/rails_71.gemfile
166
167
  - gemfiles/rails_edge.gemfile
167
168
  - lib/generators/rambulance/exceptions_app_generator.rb
168
169
  - lib/generators/rambulance/install_generator.rb
@@ -222,7 +223,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
222
223
  - !ruby/object:Gem::Version
223
224
  version: '0'
224
225
  requirements: []
225
- rubygems_version: 3.3.7
226
+ rubygems_version: 3.4.19
226
227
  signing_key:
227
228
  specification_version: 4
228
229
  summary: Simple and safe way to dynamically generate error pages