squake 0.4.1 → 0.4.3

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: 2f9d466b184e2ac142e79b4e11765c58b1dee90c05a4290a0ff456bcbce419f3
4
- data.tar.gz: 7c6ff3a5a9c0784a9a2afa8b160669cdabe4c373b55acc7364685ac9791092ac
3
+ metadata.gz: e22e0f482c248647b17219586fe85804cf1e44a5ba84a559d5635c79c77eb7f5
4
+ data.tar.gz: 3fc836ae7a666ac85da41511d97f6017394910561563f1a873dadfc5dfcd945c
5
5
  SHA512:
6
- metadata.gz: 5e69d259a78944b62660b2229455678b1d62cad6a1a5435f37c42e3dea9e43f5eee31787263e4a4e8353e1bc3f072083e40a66fdc1cce021fb832175c8832371
7
- data.tar.gz: c5b377cbe1ddcacb5842da69d167025cd3ea4cc1d3485df99a614dee2cc40820f8df766c88fe334a283dac08325d9ed9c7795448aad9d61af9261889854938df
6
+ metadata.gz: ceb4f8164253c9891c7be951943d09230cd02f132f4b054aca34eaaea3fa9287802903d927c5877857c73ba1e9021137a673b5bf6c6fe34994a6a953043cc121
7
+ data.tar.gz: cae5cb6dfdb84d0784bd350f21569f6de04ad76ca42b21d21ac58c2b69bd9251ecbbd702160db1c44143e5660e41bac0d02412a3c0e69ebaa912687058a57b99
data/lib/squake/client.rb CHANGED
@@ -85,12 +85,15 @@ module Squake
85
85
  )
86
86
 
87
87
  # https://stripe.com/blog/canonical-log-lines
88
- canonical_request_line = <<~TXT
89
- Request started
90
- http_method=#{request.method}
91
- http_path=#{request.path}
92
- http_headers=#{request.to_hash}
93
- TXT
88
+ # https://opentelemetry.io/docs/instrumentation/ruby/manual/#add-semantic-attributes
89
+ canonical_request_line = Oj.dump(
90
+ {
91
+ label: 'Request started',
92
+ 'http.method': request.method,
93
+ 'http.route': request.path,
94
+ 'http.headers': request.to_hash,
95
+ },
96
+ )
94
97
  canonical_request_line.gsub!(api_key, 'API_KEY_REDACTED')
95
98
  @config.logger.info(canonical_request_line)
96
99
 
@@ -118,7 +121,7 @@ module Squake
118
121
  ::Oj.load(result_body, symbol_keys: true)
119
122
  rescue ::Oj::ParseError, TypeError, JSON::ParserError, EncodingError => e
120
123
  # in case of an error, Squake's response body is HTML not JSON
121
- { 'error' => { 'message' => e.message, 'body' => result_body } }
124
+ { error: { 'message' => e.message, 'body' => result_body } }
122
125
  end
123
126
 
124
127
  sig { params(uri: URI::Generic).returns(Net::HTTP) }
@@ -30,7 +30,7 @@ module Squake
30
30
  )
31
31
 
32
32
  if result.success?
33
- products = T.cast(Array(result.body), T::Array[T::Hash[Symbol, T.untyped]]).map do |product_data|
33
+ products = [result.body].flatten.map do |product_data|
34
34
  Squake::Model::Product.from_api_response(product_data)
35
35
  end
36
36
  Return.new(result: products)
data/lib/squake/return.rb CHANGED
@@ -28,7 +28,7 @@ module Squake
28
28
 
29
29
  sig { returns(T::Boolean) }
30
30
  def success?
31
- present?(@result)
31
+ blank?(@errors)
32
32
  end
33
33
 
34
34
  sig { returns(T::Boolean) }
@@ -2,5 +2,5 @@
2
2
  # frozen_string_literal: true
3
3
 
4
4
  module Squake
5
- VERSION = '0.4.1'
5
+ VERSION = '0.4.3'
6
6
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: squake
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.4.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - SQUAKE
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-07-21 00:00:00.000000000 Z
11
+ date: 2023-09-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: net-http
@@ -80,6 +80,20 @@ dependencies:
80
80
  - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rspec
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'
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: rubocop-dbl
85
99
  requirement: !ruby/object:Gem::Requirement
@@ -122,6 +136,34 @@ dependencies:
122
136
  - - ">="
123
137
  - !ruby/object:Gem::Version
124
138
  version: '0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: vcr
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: webmock
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - ">="
158
+ - !ruby/object:Gem::Version
159
+ version: '0'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ">="
165
+ - !ruby/object:Gem::Version
166
+ version: '0'
125
167
  description: This gem provides an interface for the SQUAKE API to calculate and compensate
126
168
  carbon emissions.
127
169
  email: oss@squake.earth
@@ -175,7 +217,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
175
217
  - !ruby/object:Gem::Version
176
218
  version: '0'
177
219
  requirements: []
178
- rubygems_version: 3.4.13
220
+ rubygems_version: 3.2.3
179
221
  signing_key:
180
222
  specification_version: 4
181
223
  summary: The industry solution for sustainable travel and logistics.