rescue_registry 0.3.0 → 1.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +16 -0
- data/README.md +3 -4
- data/Rakefile +6 -1
- data/lib/rescue_registry/version.rb +1 -1
- data/lib/rescue_registry.rb +3 -2
- metadata +10 -13
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: e2952160dfc0b3825f1eab90960f4086b60f110d4249b9f05905b515af523b8d
|
|
4
|
+
data.tar.gz: 5825317feaf0f906243bba44cebb4de0cfae895be5358ec901c14714fa59392b
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 18795170c30a0c5ad2b64105d0f68055e5166effc095988d0df73d353b5816e300bd31d0254aa6915d90668a2db671ce4d53d425ae7ea61c412920e25c0de479
|
|
7
|
+
data.tar.gz: 12946b0ded3b9b8e41004a0f20b89671982638ed93987c3aa7e865507e7ffa4bb921e884866fa0a991706527e3d40c01d1b95571437c82aae1e15d09a5c53521
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
# [1.1.0](https://github.com/graphiti-api/rescue_registry/compare/v1.0.0...v1.1.0) (2026-09-01)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* store context in fiber storage so it survives into child fibers ([e3558d9](https://github.com/graphiti-api/rescue_registry/commit/e3558d906a81ed19fa4638ee9f2038d29b2085f8))
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Features
|
|
12
|
+
|
|
13
|
+
* update targeted version and supported rubies to match Graphiti 2.0, add semantic-release config ([91fd1aa](https://github.com/graphiti-api/rescue_registry/commit/91fd1aab5ef4e611e4cd7490e4e853a7325ed028))
|
|
14
|
+
|
|
3
15
|
All notable changes to this project will be documented in this file.
|
|
4
16
|
|
|
5
17
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
@@ -7,6 +19,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
19
|
|
|
8
20
|
---
|
|
9
21
|
|
|
22
|
+
## [1.0.0] - 2022-02-03
|
|
23
|
+
### Changed
|
|
24
|
+
- Removed upper version bound to support Ruby 3.1. (thanks @nulldotpro)
|
|
25
|
+
|
|
10
26
|
## [0.3.0] - 2021-05-11
|
|
11
27
|
### Changed
|
|
12
28
|
- For better JSONAPI spec compliance, errors payloads will not include the `details` key when value is `null`.
|
data/README.md
CHANGED
|
@@ -14,14 +14,13 @@ middleware to handle the exceptions but with our custom handlers.
|
|
|
14
14
|
### Better default exception handling
|
|
15
15
|
Rails also has some built-in support for assigning different exception classes to status types (See `config.action_dispatch.rescue_responses`).
|
|
16
16
|
Unfortunately, all this allows you to do is assign a status code. If you want more complex error handling, or to use different codes in
|
|
17
|
-
different controllers, you're out of luck. With RescueRegistry you can register
|
|
17
|
+
different controllers, you're out of luck. With RescueRegistry you can register an exception with a custom handler or with different status
|
|
18
18
|
codes in different controllers.
|
|
19
19
|
|
|
20
20
|
## In Action
|
|
21
21
|
|
|
22
|
-
### graphiti
|
|
23
|
-
The [graphiti
|
|
24
|
-
Rails' out-of-the-box behavior doesn't adhere to the JSON:API spec.
|
|
22
|
+
### graphiti
|
|
23
|
+
The [graphiti gem](https://github.com/graphiti-api/graphiti) uses RescueRegistry to facilitate better JSON:API error handling, since Rails' out-of-the-box behavior doesn't adhere to the JSON:API spec.
|
|
25
24
|
|
|
26
25
|
## Usage
|
|
27
26
|
|
data/Rakefile
CHANGED
|
@@ -4,6 +4,7 @@ rescue LoadError
|
|
|
4
4
|
puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
|
|
5
5
|
end
|
|
6
6
|
|
|
7
|
+
require 'rails/version'
|
|
7
8
|
require 'yard'
|
|
8
9
|
require 'rspec/core/rake_task'
|
|
9
10
|
require 'bundler/gem_tasks'
|
|
@@ -14,7 +15,11 @@ RSpec::Core::RakeTask.new(:spec) do |t|
|
|
|
14
15
|
t.rspec_opts = "--order random"
|
|
15
16
|
end
|
|
16
17
|
|
|
17
|
-
|
|
18
|
+
if Rails::VERSION::MAJOR < 7
|
|
19
|
+
APP_RAKEFILE = File.expand_path("spec/rails5/dummy/Rakefile", __dir__)
|
|
20
|
+
else
|
|
21
|
+
APP_RAKEFILE = File.expand_path("spec/rails7/dummy/Rakefile", __dir__)
|
|
22
|
+
end
|
|
18
23
|
load "rails/tasks/engine.rake"
|
|
19
24
|
|
|
20
25
|
task default: :spec
|
data/lib/rescue_registry.rb
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
3
|
require 'active_support'
|
|
4
|
+
require 'active_support/core_ext/object/blank'
|
|
4
5
|
|
|
5
6
|
module RescueRegistry
|
|
6
7
|
autoload :ActionDispatch, "rescue_registry/action_dispatch"
|
|
@@ -17,11 +18,11 @@ module RescueRegistry
|
|
|
17
18
|
class HandlerNotFound < StandardError; end
|
|
18
19
|
|
|
19
20
|
def self.context
|
|
20
|
-
|
|
21
|
+
Fiber[:rescue_registry_context]
|
|
21
22
|
end
|
|
22
23
|
|
|
23
24
|
def self.context=(value)
|
|
24
|
-
|
|
25
|
+
Fiber[:rescue_registry_context] = value
|
|
25
26
|
end
|
|
26
27
|
|
|
27
28
|
def self.with_context(value)
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rescue_registry
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 1.1.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Peter Wagenet
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2026-09-01 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activesupport
|
|
@@ -16,14 +16,14 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - ">="
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: '
|
|
19
|
+
version: '7.1'
|
|
20
20
|
type: :runtime
|
|
21
21
|
prerelease: false
|
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
23
|
requirements:
|
|
24
24
|
- - ">="
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: '
|
|
26
|
+
version: '7.1'
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
28
|
name: appraisal
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -107,13 +107,13 @@ files:
|
|
|
107
107
|
- lib/rescue_registry/show_exceptions.rb
|
|
108
108
|
- lib/rescue_registry/version.rb
|
|
109
109
|
- lib/tasks/rescue_registry_tasks.rake
|
|
110
|
-
homepage: https://github.com/
|
|
110
|
+
homepage: https://github.com/graphiti-api/rescue_registry
|
|
111
111
|
licenses:
|
|
112
112
|
- MIT
|
|
113
113
|
metadata:
|
|
114
|
-
bug_tracker_uri: https://github.com/
|
|
115
|
-
changelog_uri: https://github.com/
|
|
116
|
-
source_code_uri: https://github.com/
|
|
114
|
+
bug_tracker_uri: https://github.com/graphiti-api/rescue_registry/issues
|
|
115
|
+
changelog_uri: https://github.com/graphiti-api/rescue_registry/CHANGELOG.md
|
|
116
|
+
source_code_uri: https://github.com/graphiti-api/rescue_registry
|
|
117
117
|
post_install_message:
|
|
118
118
|
rdoc_options: []
|
|
119
119
|
require_paths:
|
|
@@ -122,17 +122,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
122
122
|
requirements:
|
|
123
123
|
- - ">="
|
|
124
124
|
- !ruby/object:Gem::Version
|
|
125
|
-
version: '2
|
|
126
|
-
- - "<"
|
|
127
|
-
- !ruby/object:Gem::Version
|
|
128
|
-
version: '3.1'
|
|
125
|
+
version: '3.2'
|
|
129
126
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
130
127
|
requirements:
|
|
131
128
|
- - ">="
|
|
132
129
|
- !ruby/object:Gem::Version
|
|
133
130
|
version: '0'
|
|
134
131
|
requirements: []
|
|
135
|
-
rubygems_version: 3.
|
|
132
|
+
rubygems_version: 3.4.19
|
|
136
133
|
signing_key:
|
|
137
134
|
specification_version: 4
|
|
138
135
|
summary: Registry for Rails Exceptions
|