json_schemer-rails 0.3.1 → 0.4.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: 81e5c4230f5eb7374ab6ce0f2b030f4e9230b3a5cabf8bf3bf9ea882e68fda2e
4
- data.tar.gz: d70bf354f52ff231a6a1fbe672bccccf7ebbf5a7d1cb7c2ccd095dba00fc3616
3
+ metadata.gz: 554ef1720a48d6ca36556c75545437570e81c1be1385eb1890972505d2d5123c
4
+ data.tar.gz: 0ca66897ec4cbaab7feec481e97cece862f039778f44c4ec14e95dd868b3e639
5
5
  SHA512:
6
- metadata.gz: 641f4f82beb73c0cf6b5791da660b33427d8099cbab1ef9a67242863a19d957f9e9765e2a538ed03dd48ef377af44d6f7381a75dab19a0e96de4a08ff21bf3e6
7
- data.tar.gz: 5fb9a0fdc0d8824f34df4aa5dde5aadb04ea9da1b4c1014a642991b0a48e987bbcedeca1fbec3d3b54c87fdb91c84acb27a751b9d493108e67c8a4c04257cc84
6
+ metadata.gz: a37b183d5928d8fbd1dcb28b2520a1cdea50a3786ca32fbdc1da2d7b84ee12a64e9774d640fda5221181bb8b40c2d7e2879ecea672593ab5071d18952fca6079
7
+ data.tar.gz: 4809ee27c3d9fdc2ab81910df31a00d2f23ebc43b21c99c0524b6e269b181a9116fb88a8e387fb50d52a6b71cc3c2474c45edb7ab7662e9b6c5888ff4397a7b6
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # JsonSchemer::Rails
1
+ # JSONSchemer::Rails
2
2
 
3
3
  [![Ruby](https://img.shields.io/badge/ruby-%3E%3D%203.4.0-ruby.svg)](https://www.ruby-lang.org/en/)
4
4
  [![Rails](https://img.shields.io/badge/rails-%3E%3D%208.0-red.svg)](https://rubyonrails.org/)
@@ -90,7 +90,7 @@ paths:
90
90
 
91
91
  ```ruby
92
92
  class UsersController < ApplicationController
93
- include JsonSchemer::Rails::Controller
93
+ include JSONSchemer::Rails::Controller
94
94
 
95
95
  before_action :validate_from_openapi, only: [:create, :update]
96
96
 
@@ -111,7 +111,7 @@ end
111
111
  ```ruby
112
112
  class UsersController < ApplicationController
113
113
  def create
114
- validator = JsonSchemer::Rails::OpenApiValidator.new(request)
114
+ validator = JSONSchemer::Rails::OpenApiValidator.new(request)
115
115
 
116
116
  # Validate and cast parameters
117
117
  validator.validated_params
@@ -134,7 +134,7 @@ end
134
134
  By default, the validator looks for `openapi.yml` in your Rails root. You can specify a different location:
135
135
 
136
136
  ```ruby
137
- validator = JsonSchemer::Rails::OpenApiValidator.new(
137
+ validator = JSONSchemer::Rails::OpenApiValidator.new(
138
138
  request,
139
139
  open_api_filename: Rails.root.join('config', 'api_schema.yml')
140
140
  )
@@ -199,11 +199,11 @@ params[:limit] # => "10" (String, not cast because OpenAPI handles this differe
199
199
 
200
200
  ## Error Handling
201
201
 
202
- When validation fails, a `JsonSchemer::Rails::RequestValidationError` is raised:
202
+ When validation fails, a `JSONSchemer::Rails::RequestValidationError` is raised:
203
203
 
204
204
  ```ruby
205
205
  class ApplicationController < ActionController::API
206
- rescue_from JsonSchemer::Rails::RequestValidationError do |exception|
206
+ rescue_from JSONSchemer::Rails::RequestValidationError do |exception|
207
207
  render json: { error: exception.message }, status: :unprocessable_entity
208
208
  end
209
209
  end
@@ -249,7 +249,7 @@ end
249
249
 
250
250
  ```ruby
251
251
  class UsersController < ApplicationController
252
- include JsonSchemer::Rails::Controller
252
+ include JSONSchemer::Rails::Controller
253
253
 
254
254
  before_action :validate_from_openapi, except: [:index]
255
255
 
@@ -268,7 +268,7 @@ end
268
268
  ```ruby
269
269
  class UsersController < ApplicationController
270
270
  def create
271
- validator = JsonSchemer::Rails::OpenApiValidator.new(request)
271
+ validator = JSONSchemer::Rails::OpenApiValidator.new(request)
272
272
 
273
273
  # Validate parameters first
274
274
  validator.validated_params
@@ -327,4 +327,4 @@ The gem is available as open source under the terms of the [MIT License](https:/
327
327
 
328
328
  Built with [json_schemer](https://github.com/davishmcclurg/json_schemer) by Davis W. McGuire.
329
329
 
330
- Developed by [Stanford Digital Library](https://library.stanford.edu/).
330
+ Developed by [Stanford Digital Library](https://library.stanford.edu/).
@@ -1,10 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module JsonSchemer
3
+ module JSONSchemer
4
4
  module Rails
5
5
  # Mixin for controllers.
6
6
  # usage:
7
- # include JsonSchemer::Rails::Controller
7
+ # include JSONSchemer::Rails::Controller
8
8
  # before_action :validate_from_openapi
9
9
  module Controller
10
10
  def validate_from_openapi
@@ -2,9 +2,8 @@
2
2
 
3
3
  require "cgi"
4
4
  require "yaml"
5
- require "json_schemer"
6
5
 
7
- module JsonSchemer
6
+ module JSONSchemer
8
7
  module Rails
9
8
  # This validates a request against the OpenAPI specification
10
9
  class OpenApiValidator
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module JsonSchemer
3
+ module JSONSchemer
4
4
  module Rails
5
5
  # Raised when the OpenAPI specification is violated
6
6
  class RequestValidationError < StandardError; end
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module JsonSchemer
3
+ module JSONSchemer
4
4
  module Rails
5
- VERSION = "0.3.1"
5
+ VERSION = "0.4.0"
6
6
  end
7
7
  end
@@ -1,11 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "rails/version"
4
- require_relative "rails/validation_error"
5
- require_relative "rails/open_api_validator"
6
- require_relative "rails/controller"
3
+ require "json_schemer"
4
+ require "zeitwerk"
7
5
 
8
- module JsonSchemer
6
+ Zeitwerk::Loader.for_gem_extension(JSONSchemer).setup
7
+
8
+ module JSONSchemer
9
9
  module Rails
10
10
  class Error < StandardError; end
11
11
  # Your code goes here...
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: json_schemer-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Coyne
@@ -37,7 +37,21 @@ dependencies:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
39
  version: '8.0'
40
- description: Rails integration for JsonSchemer. Validates OpenAPI
40
+ - !ruby/object:Gem::Dependency
41
+ name: zeitwerk
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
47
+ type: :runtime
48
+ prerelease: false
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ description: Rails integration for JSONSchemer. Validates OpenAPI
41
55
  email:
42
56
  - jcoyne@justincoyne.com
43
57
  executables: []
@@ -49,7 +63,7 @@ files:
49
63
  - lib/json_schemer/rails.rb
50
64
  - lib/json_schemer/rails/controller.rb
51
65
  - lib/json_schemer/rails/open_api_validator.rb
52
- - lib/json_schemer/rails/validation_error.rb
66
+ - lib/json_schemer/rails/request_validation_error.rb
53
67
  - lib/json_schemer/rails/version.rb
54
68
  homepage: https://github.com/sul-dlss/json_schemer-rails
55
69
  licenses: []
@@ -72,7 +86,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
72
86
  - !ruby/object:Gem::Version
73
87
  version: '0'
74
88
  requirements: []
75
- rubygems_version: 4.0.3
89
+ rubygems_version: 4.0.7
76
90
  specification_version: 4
77
- summary: Rails integration for JsonSchemer. Validates OpenAPI
91
+ summary: Rails integration for JSONSchemer. Validates OpenAPI
78
92
  test_files: []