eazypi 0.0.14.pre.beta1 → 0.0.15

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: 9cc49b18bf8740a18781440ec9ca4087ac0809fa79fb30c5bb0417cd608e827d
4
- data.tar.gz: 4c181b8acb484189be36c6688680dfd9b1adcc9768561d6061156c8ee8709728
3
+ metadata.gz: 61d2a8405f1087f4cc660f649923a0c14d00ed59e5f6ab4b6c21418c5c304ca1
4
+ data.tar.gz: c979ef8e976e37e1e8776ca622cf462a6873003cc4252783eb47fea15cf9b8c1
5
5
  SHA512:
6
- metadata.gz: 9cb5ea061e64372ec8c6f9a4407b0e328e02581eff307e6ac7cb42cc2f94b1b28a2b40da0a4a9d32c649f48e37d66996923744d0e42940657f4c1916033129c5
7
- data.tar.gz: c7c9d57ec1b1ac66fb3ae471fe593ff46a9d5f6c274ec1653c1f79d4a188870a4d176769e21acded8c5c320d8829e1ebaaf415774e31d37da04f7eee552b6119
6
+ metadata.gz: 57df3cba763ce14462880977e5bb8247b370dadc160edb880823f55950f3ff743ad1dff152c42fb72b32818efa470da6c16a31e722c50c276618021daa73297d
7
+ data.tar.gz: 6f85b9eb961223e1df4dd078d733435e27d486fdf223530c6146295f85e4c686ddb206ba2ed64f3b772f0008e162c326da8e7e2876c7c8172c6bcb506fc60d7c
data/eazypi.gemspec CHANGED
@@ -29,7 +29,7 @@ Gem::Specification.new do |spec|
29
29
  spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
30
30
  spec.require_paths = ["lib"]
31
31
 
32
- spec.add_dependency "actionpack", "> 7.0", "< 9"
33
- spec.add_dependency "activesupport", "> 7.0", "< 9"
32
+ spec.add_dependency "actionpack", ">= 7.0", "< 9"
33
+ spec.add_dependency "activesupport", ">= 7.0", "< 9"
34
34
  spec.metadata["rubygems_mfa_required"] = "true"
35
35
  end
@@ -18,8 +18,6 @@ module Eazypi
18
18
  op.load(&block)
19
19
 
20
20
  define_method(method_name) do
21
- @request_body = op.request_body.deserialize(request.content_type, params) if op.request_body?
22
-
23
21
  op.call(self)
24
22
  end
25
23
 
@@ -59,15 +57,9 @@ module Eazypi
59
57
 
60
58
  # Instance methods to be used in your own API controller
61
59
  module InstanceMethods
62
- def request_body
63
- @request_body
64
- end
65
-
66
60
  def respond_with(object, status: :ok)
67
61
  response_type = @current_operation.response_for_response_code(status)
68
62
 
69
- raise "No response found for #{status}" if response_type.nil?
70
-
71
63
  response_object_type = response_type.object_type_for_content_type
72
64
 
73
65
  render json: Serializer.serialize_object(response_object_type, object), status: status
@@ -40,15 +40,9 @@ module Eazypi
40
40
  @request_body ||= RequestBody.new(&block)
41
41
  end
42
42
 
43
- def request_body?
44
- !@request_body.nil?
45
- end
46
-
47
- def response(status_code = :ok, &block)
43
+ def response(status_code, &block)
48
44
  @responses ||= Responses.new
49
45
 
50
- status_code = Rack::Utils::SYMBOL_TO_STATUS_CODE[status_code] if status_code.is_a?(Symbol)
51
-
52
46
  @responses.add_response(status_code, &block)
53
47
  end
54
48
 
@@ -20,10 +20,6 @@ module Eazypi
20
20
  end
21
21
  end
22
22
 
23
- def deserialize(content_type, params)
24
- @content[content_type].schema.deserialize(params)
25
- end
26
-
27
23
  def collect_components(**kwargs)
28
24
  @content&.each_value do |media_type|
29
25
  media_type.collect_components(**kwargs)
@@ -10,12 +10,6 @@ module Eazypi
10
10
  @item_schema = item_schema
11
11
  end
12
12
 
13
- def deserialize(param_value)
14
- param_value.map do |value|
15
- @item_schema.deserialize(value)
16
- end
17
- end
18
-
19
13
  def collect_components(schemas: nil, **kwargs)
20
14
  schemas&.call(@item_schema)
21
15
 
@@ -13,16 +13,6 @@ module Eazypi
13
13
  @reference = nil
14
14
  end
15
15
 
16
- def deserialize(param_value)
17
- @struct ||= ::Struct.new(*@properties.keys.map(&:to_sym))
18
-
19
- @struct.new(
20
- *@properties.each_pair.map do |name, attr|
21
- attr.deserialize(param_value[name])
22
- end
23
- )
24
- end
25
-
26
16
  def reference!(reference)
27
17
  @reference = reference
28
18
  self
@@ -13,28 +13,6 @@ module Eazypi
13
13
  @format = format
14
14
  end
15
15
 
16
- def deserialize(param_value)
17
- case type
18
- when "string"
19
- case format
20
- when "date"
21
- Date.parse(param_value)
22
- when "time"
23
- Time.parse(param_value)
24
- else
25
- param_value
26
- end
27
- when "integer"
28
- param_value.to_i
29
- when "number"
30
- param_value.to_f
31
- when "boolean"
32
- param_value
33
- else
34
- raise "Unsupported primitive"
35
- end
36
- end
37
-
38
16
  def collect_components(**_kwargs); end
39
17
 
40
18
  def to_openapi_spec
@@ -23,10 +23,6 @@ module Eazypi
23
23
  Serializer.serialize_object(type, the_value, context)
24
24
  end
25
25
 
26
- def deserialize(value)
27
- type.deserialize(value)
28
- end
29
-
30
26
  private
31
27
 
32
28
  def serialize_array(the_value)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Eazypi
4
- VERSION = "0.0.14-beta1"
4
+ VERSION = "0.0.15"
5
5
  end
metadata CHANGED
@@ -1,19 +1,20 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eazypi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.14.pre.beta1
4
+ version: 0.0.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nathan Samson
8
+ autorequire:
8
9
  bindir: exe
9
10
  cert_chain: []
10
- date: 2025-06-01 00:00:00.000000000 Z
11
+ date: 2025-12-30 00:00:00.000000000 Z
11
12
  dependencies:
12
13
  - !ruby/object:Gem::Dependency
13
14
  name: actionpack
14
15
  requirement: !ruby/object:Gem::Requirement
15
16
  requirements:
16
- - - ">"
17
+ - - ">="
17
18
  - !ruby/object:Gem::Version
18
19
  version: '7.0'
19
20
  - - "<"
@@ -23,7 +24,7 @@ dependencies:
23
24
  prerelease: false
24
25
  version_requirements: !ruby/object:Gem::Requirement
25
26
  requirements:
26
- - - ">"
27
+ - - ">="
27
28
  - !ruby/object:Gem::Version
28
29
  version: '7.0'
29
30
  - - "<"
@@ -33,7 +34,7 @@ dependencies:
33
34
  name: activesupport
34
35
  requirement: !ruby/object:Gem::Requirement
35
36
  requirements:
36
- - - ">"
37
+ - - ">="
37
38
  - !ruby/object:Gem::Version
38
39
  version: '7.0'
39
40
  - - "<"
@@ -43,12 +44,13 @@ dependencies:
43
44
  prerelease: false
44
45
  version_requirements: !ruby/object:Gem::Requirement
45
46
  requirements:
46
- - - ">"
47
+ - - ">="
47
48
  - !ruby/object:Gem::Version
48
49
  version: '7.0'
49
50
  - - "<"
50
51
  - !ruby/object:Gem::Version
51
52
  version: '9'
53
+ description:
52
54
  email:
53
55
  - nathan@nathansamson.be
54
56
  executables: []
@@ -93,6 +95,7 @@ metadata:
93
95
  source_code_uri: https://gitlab.com/nathansamson/eazypi
94
96
  changelog_uri: https://gitlab.com/nathansamson/eazypi/-/blob/main/CHANGELOG.md
95
97
  rubygems_mfa_required: 'true'
98
+ post_install_message:
96
99
  rdoc_options: []
97
100
  require_paths:
98
101
  - lib
@@ -107,7 +110,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
107
110
  - !ruby/object:Gem::Version
108
111
  version: '0'
109
112
  requirements: []
110
- rubygems_version: 3.6.2
113
+ rubygems_version: 3.5.11
114
+ signing_key:
111
115
  specification_version: 4
112
116
  summary: An opinionated framework to generate OpenAPI API's for Rails
113
117
  test_files: []