smartystreets_ruby_sdk 6.1.1 → 6.1.2

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: 1c07fa454096d003b8ba5542b000d6b860060d29dded06e9eef1733da2877517
4
- data.tar.gz: 11cc1c65b25eda1bc04f8538560dd8e5017ddd596e394f4ea2efbfcd96ae7657
3
+ metadata.gz: 954bacc17a899a815959f93e7c44494e7514305cfb64cf96df12816c8397ab12
4
+ data.tar.gz: 05e7e0e7544e5eddbc31de48e7d1f94a1187dbd9399aa2e957d20b6da93276cb
5
5
  SHA512:
6
- metadata.gz: 3f7463332cc45516bcb54abe9423c1c6bcddcb23e2279cf4df687b16cbba81300279f1d7c744cd4757cc2606e4ab0af4aa224494376d83da30152a47dc8b7fe0
7
- data.tar.gz: 235aaadb030654a801593b22f8af8c3f53f17ca69e74c5c4a24b481286a805b28963bd177f409888c6038cc6c71868b91cdc55c78377ec93eb3940fbf7793672
6
+ metadata.gz: 61e551343736810efdb5d1d0f35811523551280bda4b633a0b6607f3c66b43485e35b1d4b5b652d8d28a7603eb4e78df8cc622c9587ea673b87b4be92945e6af
7
+ data.tar.gz: 9e30ec67d9f24d9d2f5c667ef493e0433d1838a3a73131cf1223a3347fb9a141d88eb075a7e55514b6ca34498acdca2bad12ec18ab09991ce6d639d52a9cabd7
@@ -9,6 +9,7 @@ require_relative 'sleeper'
9
9
  require_relative 'logger'
10
10
  require_relative 'proxy'
11
11
  require_relative 'custom_header_sender'
12
+ require_relative 'custom_query_sender'
12
13
  require_relative 'us_street/client'
13
14
  require_relative 'us_zipcode/client'
14
15
  require_relative 'us_extract/client'
@@ -43,6 +44,7 @@ module SmartyStreets
43
44
  @header = nil
44
45
  @licenses = %w()
45
46
  @debug = nil
47
+ @queries = {}
46
48
  end
47
49
 
48
50
  # Sets the maximum number of times to retry sending the request to the API. (Default is 5)
@@ -112,6 +114,31 @@ module SmartyStreets
112
114
  self
113
115
  end
114
116
 
117
+ # Allows the caller to specify key and value pair that is added to the request query.
118
+ #
119
+ # Returns self to accommodate method chaining.
120
+ def with_custom_query(key, value)
121
+ @queries[key] = value
122
+ self
123
+ end
124
+
125
+ # Allows the caller to specify key and value pair and appends the value to the current
126
+ # value associated with the key, separated by a comma.
127
+ #
128
+ # Returns self to accommodate method chaining.
129
+ def with_custom_comma_separated_query(key, value)
130
+ @queries[key] = [@queries[key], value].compact.join(',')
131
+ self
132
+ end
133
+
134
+ # Adds to the request query to use the component analysis feature.
135
+ #
136
+ # Returns self to accommodate method chaining.
137
+ def with_feature_component_analysis()
138
+ self.with_custom_comma_separated_query("features", "component-analysis")
139
+ self
140
+ end
141
+
115
142
  # Enables debug mode, which will print information about the HTTP request and response to $stdout.
116
143
  #
117
144
  # Returns self to accommodate method chaining.
@@ -179,6 +206,8 @@ module SmartyStreets
179
206
 
180
207
  sender = LicenseSender.new(sender, @licenses)
181
208
 
209
+ sender = CustomQuerySender.new(sender, @queries)
210
+
182
211
  URLPrefixSender.new(@url_prefix, sender)
183
212
  end
184
213
 
@@ -0,0 +1,13 @@
1
+ module SmartyStreets
2
+ class CustomQuerySender
3
+ def initialize(inner, queries)
4
+ @inner = inner
5
+ @queries = queries
6
+ end
7
+
8
+ def send(request)
9
+ request.parameters.merge!(@queries)
10
+ @inner.send(request)
11
+ end
12
+ end
13
+ end
@@ -1,3 +1,3 @@
1
1
  module SmartyStreets
2
- VERSION = '6.1.1' # DO NOT EDIT (this is updated by a build job when a new release is published)
2
+ VERSION = '6.1.2' # DO NOT EDIT (this is updated by a build job when a new release is published)
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: smartystreets_ruby_sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.1.1
4
+ version: 6.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - SmartyStreets SDK Team
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2025-09-20 00:00:00.000000000 Z
11
+ date: 2025-10-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -105,6 +105,7 @@ files:
105
105
  - lib/smartystreets_ruby_sdk/batch.rb
106
106
  - lib/smartystreets_ruby_sdk/client_builder.rb
107
107
  - lib/smartystreets_ruby_sdk/custom_header_sender.rb
108
+ - lib/smartystreets_ruby_sdk/custom_query_sender.rb
108
109
  - lib/smartystreets_ruby_sdk/errors.rb
109
110
  - lib/smartystreets_ruby_sdk/exceptions.rb
110
111
  - lib/smartystreets_ruby_sdk/international_autocomplete.rb