reynard 0.6.0 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 149366d0bcc24959907a263c6223a2bb75cc7004a06cf153d1ef2dc35e26b91d
4
- data.tar.gz: 8f698ffa4c958564a902d1039807324c9b1182e0a6638dedb16fc6eb3b6eb00f
3
+ metadata.gz: bb92e6d5c262256cca1fa813ac8bdb730ab427eeb227dec64475567fe65f4707
4
+ data.tar.gz: dbe5b3b93ac2fd2e702b40f738650bbec0d7feb7ee908b49eab366c2b058723c
5
5
  SHA512:
6
- metadata.gz: 5de35106aeb06b3478d807d34f5da335684530f6f4f28c789fe52d8a0aafd7f13dab27154ac39cfdc354c4e65bd6da755ea16d669603eae280c027f12d54d152
7
- data.tar.gz: ff64d0913efc4e8a2b7c5b8420f94cefcf13567633906d48459ce8a653f5a65f8bd9d8c24368c68a8445320012561a24ff42568065232703675af4944b59f301
6
+ metadata.gz: 8ce40599d474dc127b6354f55f8157cccfd26f0d3fc786eb599d4da399a4658a7ce5d3f2505c579e712a38413043f03a5f788f8ac352beb55982dbac4a644134
7
+ data.tar.gz: 79738aae0d48f599f0f123fd0eb9365ce6de15995b9b7208b516d7205ec1bb023d8b7d14d181f82c238fd3415ab5f77ab102fc7593cee2febdd1c915572604cf
@@ -14,7 +14,7 @@ class Reynard
14
14
  end
15
15
 
16
16
  def base_url(base_url)
17
- copy(base_url:)
17
+ copy(base_url: base_url)
18
18
  end
19
19
 
20
20
  def operation(operation_name)
@@ -43,7 +43,7 @@ class Reynard
43
43
  end
44
44
 
45
45
  def logger(logger)
46
- copy(logger:)
46
+ copy(logger: logger)
47
47
  end
48
48
 
49
49
  def execute
@@ -71,7 +71,7 @@ class Reynard
71
71
  Reynard::Http::Response.new(
72
72
  specification: @specification,
73
73
  request_context: @request_context,
74
- http_response:
74
+ http_response: http_response
75
75
  )
76
76
  end
77
77
  end
@@ -25,8 +25,12 @@ class Reynard
25
25
  Net::HTTP.const_get(@request_context.verb.capitalize)
26
26
  end
27
27
 
28
+ def request_headers
29
+ { 'User-Agent' => Reynard.user_agent }.merge(@request_context.headers || {})
30
+ end
31
+
28
32
  def build_request
29
- request = request_class.new(uri, @request_context.headers)
33
+ request = request_class.new(uri, request_headers)
30
34
  if @request_context.body
31
35
  @request_context.logger&.debug { @request_context.body }
32
36
  request.body = @request_context.body
@@ -69,9 +69,9 @@ class Reynard
69
69
  end
70
70
 
71
71
  def build_object_with_media_type(media_type)
72
- ::Reynard::ObjectBuilder.new(
72
+ ObjectBuilder.new(
73
73
  schema: @specification.schema(media_type.node),
74
- parsed_body:
74
+ parsed_body: parsed_body
75
75
  ).call
76
76
  end
77
77
 
data/lib/reynard/http.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class Reynard
4
+ # Contains classes that wrap Net::HTTP to provide a slightly more convenient interface.
4
5
  class Http
5
6
  autoload :Request, 'reynard/http/request'
6
7
  autoload :Response, 'reynard/http/response'
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class Reynard
4
- VERSION = '0.6.0'
4
+ VERSION = '0.7.0'
5
5
  end
data/lib/reynard.rb CHANGED
@@ -33,7 +33,7 @@ class Reynard
33
33
  autoload :VERSION, 'reynard/version'
34
34
 
35
35
  def initialize(filename:)
36
- @specification = Specification.new(filename:)
36
+ @specification = Specification.new(filename: filename)
37
37
  end
38
38
 
39
39
  class << self
@@ -42,6 +42,12 @@ class Reynard
42
42
  attr_writer :http
43
43
  end
44
44
 
45
+ # Returns a value that will be used by default for Reynard's User-Agent headers. Please use
46
+ # the +headers+ setter on the context if you want to change this.
47
+ def self.user_agent
48
+ "Reynard/#{Reynard::VERSION}"
49
+ end
50
+
45
51
  # Returns Reynard's global request interface. This is a global object to allow persistent
46
52
  # connections, caching, and other features that need a persistent object in the process.
47
53
  def self.http
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: reynard
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Manfred Stienstra
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-11-24 00:00:00.000000000 Z
11
+ date: 2023-03-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: multi_json
@@ -52,62 +52,6 @@ dependencies:
52
52
  - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
- - !ruby/object:Gem::Dependency
56
- name: minitest
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: '0'
69
- - !ruby/object:Gem::Dependency
70
- name: rake
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: webmock
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: '0'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: webrick
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: '0'
111
55
  description: |2
112
56
  Reynard is an OpenAPI client for Ruby. It operates directly on the OpenAPI specification without
113
57
  the need to generate any source code.
@@ -151,7 +95,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
151
95
  requirements:
152
96
  - - ">"
153
97
  - !ruby/object:Gem::Version
154
- version: '3.1'
98
+ version: '3.0'
155
99
  required_rubygems_version: !ruby/object:Gem::Requirement
156
100
  requirements:
157
101
  - - ">="