squake 0.4.1 → 0.4.3

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: 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.