smartystreets_ruby_sdk 5.6.0 → 5.8.0

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: 794413a1e06521762ba503facba2cb26a1c3ca7394611d2fe1aebc48d57720d4
4
- data.tar.gz: dee93752476e4fd1c7ef53795ecddd497a7d02bae3cef58c001f9df139052cc0
3
+ metadata.gz: 535dcd015e5d60cfb19fceef8fcaaf21571bc32a1273e59f8b21b3fcb71e7361
4
+ data.tar.gz: f994e9282f74263c7fbdc411c7a90cc5a41f04cdfe58fd7d5a41668e8ce90090
5
5
  SHA512:
6
- metadata.gz: f817be4207343dee1d4fe04afc4c2619d6b571feafb16d09dea1e5173dfb58cac6017fbed9b892b7cb676712a8c69cc521577ee60ca647dcbe43db18f6079d5a
7
- data.tar.gz: b030694e778f413b5e5018968638fed3d4f0f963ea23a580a6deca8f6b54e7ea6cb881323cc729ddcab42f897722cb9d21b685f49a9b0166124043c7f2733082
6
+ metadata.gz: 503dd289bba672c6068784ca929a14b265a57f80f30e5faa9840a3962b67937c0a200e8ad450783077723d0eff1ff8e7681dafc6a4d98d4fe6ac68171ac17cf8
7
+ data.tar.gz: ea7e7babd854b053bdda4ddfc43ad88f47c6b12ed26a53f2681b72635a191b46b3e70e46c5cd15d292d146d8ba546251acf129e4dcb81260bb499d1b499c36dc
@@ -1,29 +1,5 @@
1
1
  # Changelog
2
2
 
3
- All notable changes to this project will be documented in this file.
3
+ See the changelog repository:
4
4
 
5
- The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
-
7
-
8
- ## [Unreleased]
9
-
10
- ### Changed:
11
-
12
- - Using `warn` instead of `log` to avoid conflict with builtin function.
13
-
14
- ## [5.5.4] - 2018-09-18
15
-
16
- ### Changed:
17
-
18
- - Standardized `Makefile`.
19
-
20
-
21
- ## [Earlier]
22
-
23
- For details on earlier changes, please see the [releases listing](https://github.com/smartystreets/smartystreets-ruby-sdk/releases).
24
-
25
- ------------
26
-
27
- [Unreleased]: https://github.com/smartystreets/smartystreets-ruby-sdk/compare/5.5.4...HEAD
28
- [5.5.4]: https://github.com/smartystreets/smartystreets-ruby-sdk/compare/5.5.3...5.5.4
29
- [Earlier]: https://github.com/smartystreets/smartystreets-ruby-sdk/releases
5
+ github.com/smartystreets/changelog/blob/master/sdk/ruby.md
data/README.md CHANGED
@@ -27,7 +27,3 @@ And then execute:
27
27
  Or install it yourself as:
28
28
 
29
29
  $ gem install smartystreets_ruby_sdk
30
-
31
-
32
-
33
-
@@ -14,14 +14,27 @@ class InternationalExample
14
14
  # auth_token = ENV['SMARTY_AUTH_TOKEN']
15
15
 
16
16
  credentials = SmartyStreets::StaticCredentials.new(auth_id, auth_token)
17
- client = SmartyStreets::ClientBuilder.new(credentials).build_international_street_api_client
17
+ client = SmartyStreets::ClientBuilder.new(credentials) # .with_licenses(%w(international-fake-license))
18
+ .build_international_street_api_client
18
19
 
19
- lookup = Lookup.new("Rua Padre Antonio D'Angelo 121 Casa Verde, Sao Paulo", 'Brazil')
20
+ # Documentation for input fields can be found at:
21
+ # https://smartystreets.com/docs/cloud/international-street-api
22
+
23
+ lookup = Lookup.new()
24
+ lookup.inputId = 'ID-8675309' # Optional ID from your system
20
25
  lookup.geocode = true # Must be expressly set to get latitude and longitude.
26
+ lookup.organization = 'John Doe'
27
+ lookup.address1 = "Rua Padre Antonio D'Angelo 121"
28
+ lookup.address2 = 'Casa Verde'
29
+ lookup.locality = 'Sao Paulo'
30
+ lookup.administrative_area = 'SP'
31
+ lookup.country = 'Brazil'
32
+ lookup.postal_code = '02516-050'
21
33
 
22
34
  candidates = client.send(lookup) # The candidates are also stored in the lookup's 'result' field.
23
35
 
24
36
  first_candidate = candidates[0]
37
+ puts "Input ID: #{first_candidate.input_id}"
25
38
  puts "Address is #{first_candidate.analysis.verification_status}"
26
39
  puts "Address precision: #{first_candidate.analysis.address_precision}\n\n"
27
40
  puts "First Line: #{first_candidate.address1}"
@@ -15,7 +15,12 @@ class USAutocompleteExample
15
15
 
16
16
  credentials = SmartyStreets::StaticCredentials.new(auth_id, auth_token)
17
17
  client = SmartyStreets::ClientBuilder.new(credentials).build_us_autocomplete_api_client
18
+
19
+ # Documentation for input fields can be found at:
20
+ # https://smartystreets.com/docs/cloud/us-autocomplete-api
21
+
18
22
  lookup = Lookup.new('4770 Lincoln Ave O')
23
+ lookup.max_suggestions = 10
19
24
 
20
25
  client.send(lookup)
21
26
 
@@ -25,8 +30,11 @@ class USAutocompleteExample
25
30
  puts suggestion.text
26
31
  end
27
32
 
33
+ lookup.add_city_filter('Ogden')
28
34
  lookup.add_state_filter('IL')
35
+ lookup.add_prefer('Ogden, IL')
29
36
  lookup.max_suggestions = 5
37
+ lookup.prefer_ratio = 0.333333
30
38
 
31
39
  suggestions = client.send(lookup) # The client will also return the suggestions directly
32
40
 
@@ -21,7 +21,13 @@ class USExtractExample
21
21
  "\r\nLos Vegas, Nevada." \
22
22
  "\r\nMeet me at 1 Rosedale Baltimore Maryland, not at 123 Phony Street, Boise Idaho."
23
23
 
24
+ # Documentation for input fields can be found at:
25
+ # https://smartystreets.com/docs/cloud/us-extract-api
26
+
24
27
  lookup = Lookup.new(text)
28
+ lookup.aggressive = true
29
+ lookup.addresses_have_line_breaks = false
30
+ lookup.addresses_per_line = 2
25
31
 
26
32
  result = client.send(lookup)
27
33
 
@@ -16,13 +16,26 @@ class USStreetMultipleAddressExample
16
16
 
17
17
  credentials = SmartyStreets::StaticCredentials.new(auth_id, auth_token)
18
18
 
19
- client = SmartyStreets::ClientBuilder.new(credentials).build_us_street_api_client
19
+ client = SmartyStreets::ClientBuilder.new(credentials) # .with_licenses(%w(us-rooftop-geocoding-cloud))
20
+ .build_us_street_api_client
20
21
  batch = SmartyStreets::Batch.new
21
22
 
23
+ # Documentation for input fields can be found at:
24
+ # https://smartystreets.com/docs/cloud/us-street-api
25
+
22
26
  batch.add(Lookup.new)
27
+ batch[0].input_id = '8675309' # Optional ID from your system
28
+ batch[0].addressee = 'John Doe'
23
29
  batch[0].street = '1600 amphitheatre parkway'
24
- batch[0].city = 'Mountain view'
25
- batch[0].state = 'california'
30
+ batch[0].street2 = 'second star to the right'
31
+ batch[0].secondary = 'APT 2'
32
+ batch[0].urbanization = '' # Only applies to Puerto Rico addresses
33
+ batch[0].lastline = 'Mountain view, California'
34
+ batch[0].zipcode = '21229'
35
+ batch[0].candidates = 3
36
+ batch[0].match = 'invalid'.freeze # "invalid" is the most permissive match,
37
+ # this will always return at least one result even if the address is invalid.
38
+ # Refer to the documentation for additional Match Strategy options.
26
39
 
27
40
  batch.add(Lookup.new('1 Rosedale, Baltimore, Maryland')) # Freeform addresses work too.
28
41
  batch[1].candidates = 10 # Allows up to ten possible matches to be returned (default is 1).
@@ -55,6 +68,7 @@ class USStreetMultipleAddressExample
55
68
  metadata = candidate.metadata
56
69
 
57
70
  puts "\nCandidate #{candidate.candidate_index} : "
71
+ puts "Input ID: #{candidate.input_id}"
58
72
  puts "Delivery line 1: #{candidate.delivery_line_1}"
59
73
  puts "Last line: #{candidate.last_line}"
60
74
  puts "ZIP Code: #{components.zipcode}-#{components.plus4_code}"
@@ -14,13 +14,26 @@ class USStreetSingleAddressExample
14
14
  credentials = SmartyStreets::StaticCredentials.new(auth_id, auth_token)
15
15
 
16
16
  client = SmartyStreets::ClientBuilder.new(credentials).
17
- # with_proxy('localhost', 8080, 'proxyUser', 'proxyPassword'). # Uncomment this line to try it with a proxy
18
- build_us_street_api_client
17
+ # with_proxy('localhost', 8080, 'proxyUser', 'proxyPassword'). # Uncomment this line to try it with a proxy
18
+ build_us_street_api_client
19
+
20
+ # Documentation for input fields can be found at:
21
+ # https://smartystreets.com/docs/cloud/us-street-api
19
22
 
20
23
  lookup = SmartyStreets::USStreet::Lookup.new
24
+ lookup.input_id = '24601' # Optional ID from your system
25
+ lookup.addressee = 'John Doe'
21
26
  lookup.street = '1600 Amphitheatre Pkwy'
27
+ lookup.street2 = 'closet under the stairs'
28
+ lookup.secondary = 'APT 2'
29
+ lookup.urbanization = '' # Only applies to Puerto Rico addresses
22
30
  lookup.city = 'Mountain View'
23
31
  lookup.state = 'CA'
32
+ lookup.zipcode = '21229'
33
+ lookup.candidates = 3
34
+ lookup.match = 'invalid'.freeze # "invalid" is the most permissive match,
35
+ # this will always return at least one result even if the address is invalid.
36
+ # Refer to the documentation for additional Match Strategy options.
24
37
 
25
38
  begin
26
39
  client.send_lookup(lookup)
@@ -39,6 +52,7 @@ class USStreetSingleAddressExample
39
52
  first_candidate = result[0]
40
53
 
41
54
  puts "Address is valid. (There is at least one candidate)\n"
55
+ puts "Input ID: #{first_candidate.input_id}"
42
56
  puts "ZIP Code: #{first_candidate.components.zipcode}"
43
57
  puts "County: #{first_candidate.metadata.county_name}"
44
58
  puts "Latitude: #{first_candidate.metadata.latitude}"
@@ -19,7 +19,11 @@ class USZipcodeMultipleLookupExample
19
19
  client = SmartyStreets::ClientBuilder.new(credentials).build_us_zipcode_api_client
20
20
  batch = SmartyStreets::Batch.new
21
21
 
22
+ # Documentation for input fields can be found at:
23
+ # https://smartystreets.com/docs/cloud/us-zipcode-api
24
+
22
25
  batch.add(Lookup.new)
26
+ batch[0].input_id = '01189998819991197253' # Optional ID from your system
23
27
  batch[0].zipcode = '12345' # A Lookup may have a ZIP Code, city and state, or city, state, and ZIP Code
24
28
 
25
29
  batch.add(Lookup.new)
@@ -15,9 +15,14 @@ class UsZipcodeSingleLookupExample
15
15
 
16
16
  client = SmartyStreets::ClientBuilder.new(credentials).build_us_zipcode_api_client
17
17
 
18
+ # Documentation for input fields can be found at:
19
+ # https://smartystreets.com/docs/cloud/us-zipcode-api
20
+
18
21
  lookup = SmartyStreets::USZipcode::Lookup.new
22
+ lookup.input_id = 'dfc33cb6-829e-4fea-aa1b-b6d6580f0817' # Optional ID from your system
19
23
  lookup.city = 'Mountain View'
20
24
  lookup.state = 'California'
25
+ lookup.zipcode = '94043'
21
26
 
22
27
  begin
23
28
  client.send_lookup(lookup)
@@ -30,6 +35,8 @@ class UsZipcodeSingleLookupExample
30
35
  zipcodes = result.zipcodes
31
36
  cities = result.cities
32
37
 
38
+ puts "Input ID: #{result.input_id}"
39
+
33
40
  cities.each do |city|
34
41
  puts "\nCity: #{city.city}"
35
42
  puts "State: #{city.state}"
@@ -14,6 +14,7 @@ require 'smartystreets_ruby_sdk/native_serializer'
14
14
  require 'smartystreets_ruby_sdk/request'
15
15
  require 'smartystreets_ruby_sdk/response'
16
16
  require 'smartystreets_ruby_sdk/retry_sender'
17
+ require 'smartystreets_ruby_sdk/license_sender'
17
18
  require 'smartystreets_ruby_sdk/shared_credentials'
18
19
  require 'smartystreets_ruby_sdk/signing_sender'
19
20
  require 'smartystreets_ruby_sdk/static_credentials'
@@ -4,6 +4,7 @@ require_relative 'status_code_sender'
4
4
  require_relative 'signing_sender'
5
5
  require_relative 'retry_sender'
6
6
  require_relative 'url_prefix_sender'
7
+ require_relative 'license_sender'
7
8
  require_relative 'sleeper'
8
9
  require_relative 'logger'
9
10
  require_relative 'proxy'
@@ -34,6 +35,7 @@ module SmartyStreets
34
35
  @url_prefix = nil
35
36
  @proxy = nil
36
37
  @headers = nil
38
+ @licenses = %w()
37
39
  @debug = nil
38
40
  end
39
41
 
@@ -96,6 +98,14 @@ module SmartyStreets
96
98
  self
97
99
  end
98
100
 
101
+ # Allows the caller to specify the subscription license (aka "track") they wish to use.
102
+ #
103
+ # Returns self to accommodate method chaining.
104
+ def with_licenses(licenses)
105
+ @licenses.concat licenses
106
+ self
107
+ end
108
+
99
109
  # Enables debug mode, which will print information about the HTTP request and response to $stdout.
100
110
  #
101
111
  # Returns self to accommodate method chaining.
@@ -146,6 +156,8 @@ module SmartyStreets
146
156
 
147
157
  sender = RetrySender.new(@max_retries, sender, SmartyStreets::Sleeper.new,SmartyStreets::Logger.new) if @max_retries > 0
148
158
 
159
+ sender = LicenseSender.new(sender, @licenses)
160
+
149
161
  URLPrefixSender.new(@url_prefix, sender)
150
162
  end
151
163
 
@@ -1,14 +1,16 @@
1
+ require_relative 'changes'
1
2
  module SmartyStreets
2
3
  module InternationalStreet
3
4
  # See "https://smartystreets.com/docs/cloud/international-street-api#analysis"
4
5
  class Analysis
5
6
 
6
- attr_reader :max_address_precision, :verification_status, :address_precision
7
+ attr_reader :max_address_precision, :verification_status, :address_precision, :changes
7
8
 
8
9
  def initialize(obj)
9
10
  @verification_status = obj.fetch('verification_status', nil)
10
11
  @address_precision = obj.fetch('address_precision', nil)
11
12
  @max_address_precision = obj.fetch('max_address_precision', nil)
13
+ @changes = Changes.new(obj.fetch('changes', {}))
12
14
  end
13
15
  end
14
16
  end
@@ -1,6 +1,7 @@
1
1
  require_relative 'components'
2
2
  require_relative 'metadata'
3
3
  require_relative 'analysis'
4
+ require_relative 'rootlevel'
4
5
 
5
6
  module SmartyStreets
6
7
  module InternationalStreet
@@ -8,27 +9,14 @@ module SmartyStreets
8
9
  # candidates if the address was ambiguous.
9
10
  #
10
11
  # See "https://smartystreets.com/docs/cloud/international-street-api#root"
11
- class Candidate
12
- attr_reader :metadata, :address3, :address11, :address2, :address12, :address1, :address10,
13
- :address9, :address8, :address7, :organization, :address6, :address5, :address4, :components, :analysis
12
+ class Candidate < RootLevel
13
+ attr_reader :metadata, :components, :analysis
14
14
 
15
15
  def initialize(obj)
16
- @organization = obj.fetch('organization', nil)
17
- @address1 = obj.fetch('address1', nil)
18
- @address2 = obj.fetch('address2', nil)
19
- @address3 = obj.fetch('address3', nil)
20
- @address4 = obj.fetch('address4', nil)
21
- @address5 = obj.fetch('address5', nil)
22
- @address6 = obj.fetch('address6', nil)
23
- @address7 = obj.fetch('address7', nil)
24
- @address8 = obj.fetch('address8', nil)
25
- @address9 = obj.fetch('address9', nil)
26
- @address10 = obj.fetch('address10', nil)
27
- @address11 = obj.fetch('address11', nil)
28
- @address12 = obj.fetch('address12', nil)
29
16
  @components = Components.new(obj.fetch('components', {}))
30
17
  @metadata = Metadata.new(obj.fetch('metadata', {}))
31
18
  @analysis = Analysis.new(obj.fetch('analysis', {}))
19
+ super(obj)
32
20
  end
33
21
  end
34
22
  end
@@ -0,0 +1,15 @@
1
+ require_relative 'rootlevel'
2
+ require_relative 'components'
3
+
4
+ module SmartyStreets
5
+ module InternationalStreet
6
+ class Changes < RootLevel
7
+ attr_reader :components
8
+
9
+ def initialize(obj)
10
+ @components = Components.new(obj.fetch('components', {}))
11
+ super(obj)
12
+ end
13
+ end
14
+ end
15
+ end
@@ -26,6 +26,7 @@ module SmartyStreets
26
26
  def build_request(lookup)
27
27
  request = SmartyStreets::Request.new
28
28
 
29
+ add_parameter(request, 'input_id', lookup.input_id)
29
30
  add_parameter(request, 'country', lookup.country)
30
31
  add_parameter(request, 'geocode', lookup.geocode.to_s)
31
32
  add_parameter(request, 'language', lookup.language)
@@ -14,13 +14,13 @@ module SmartyStreets
14
14
  # When set to language_mode.LATIN, the results will always be provided using a Latin character set.
15
15
  class Lookup
16
16
 
17
- attr_accessor :freeform, :locality, :postal_code, :address3, :address2, :inputId, :address1,
17
+ attr_accessor :input_id, :freeform, :locality, :postal_code, :address3, :address2, :inputId, :address1,
18
18
  :geocode, :administrative_area, :country, :organization, :language, :address4, :result
19
19
 
20
20
  def initialize(freeform=nil, country=nil)
21
21
  @result = []
22
22
 
23
- @inputId = nil
23
+ @input_id = nil
24
24
  @country = country
25
25
  @geocode = nil
26
26
  @language = nil
@@ -0,0 +1,25 @@
1
+ module SmartyStreets
2
+ module InternationalStreet
3
+ class RootLevel
4
+ attr_reader :input_id, :organization, :address1, :address2, :address3, :address4, :address5, :address6, :address7,
5
+ :address8, :address9, :address10, :address11, :address12
6
+
7
+ def initialize(obj)
8
+ @input_id = obj.fetch('input_id', nil)
9
+ @organization = obj.fetch('organization', nil)
10
+ @address1 = obj.fetch('address1', nil)
11
+ @address2 = obj.fetch('address2', nil)
12
+ @address3 = obj.fetch('address3', nil)
13
+ @address4 = obj.fetch('address4', nil)
14
+ @address5 = obj.fetch('address5', nil)
15
+ @address6 = obj.fetch('address6', nil)
16
+ @address7 = obj.fetch('address7', nil)
17
+ @address8 = obj.fetch('address8', nil)
18
+ @address9 = obj.fetch('address9', nil)
19
+ @address10 = obj.fetch('address10', nil)
20
+ @address11 = obj.fetch('address11', nil)
21
+ @address12 = obj.fetch('address12', nil)
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,15 @@
1
+ module SmartyStreets
2
+ class LicenseSender
3
+ def initialize(inner, licenses)
4
+ @inner = inner
5
+ @licenses = licenses
6
+ end
7
+
8
+ def send(request)
9
+ if @licenses.length > 0
10
+ request.parameters['license'] = @licenses.join(',')
11
+ end
12
+ @inner.send(request)
13
+ end
14
+ end
15
+ end
@@ -27,7 +27,7 @@ module SmartyStreets
27
27
  def backoff(attempt)
28
28
  backoff_duration = [attempt, MAX_BACKOFF_DURATION].min
29
29
 
30
- @logger.warn("There was an error processing the request. Retrying in #{backoff_duration} seconds...")
30
+ @logger.log("There was an error processing the request. Retrying in #{backoff_duration} seconds...")
31
31
  @sleeper.sleep(backoff_duration)
32
32
  end
33
33
  end
@@ -13,7 +13,7 @@ module SmartyStreets
13
13
  @addresses = []
14
14
 
15
15
  addresses.each {|address|
16
- @addresses.push(Address.new(address))
16
+ @addresses.push(SmartyStreets::USExtract::Address.new(address))
17
17
  }
18
18
  end
19
19
  end
@@ -11,7 +11,7 @@ module SmartyStreets
11
11
  @cmra = obj['dpv_cmra']
12
12
  @vacant = obj['dpv_vacant']
13
13
  @active = obj['active']
14
- @is_ews_match = "Deprecated, refer to metadata.is_ews_match"
14
+ @is_ews_match = obj['ews_match']
15
15
  @footnotes = obj['footnotes']
16
16
  @lacs_link_code = obj['lacslink_code']
17
17
  @lacs_link_indicator = obj['lacslink_indicator']
@@ -6,10 +6,11 @@ module SmartyStreets
6
6
  module USStreet
7
7
  # See "https://smartystreets.com/docs/cloud/us-street-api#metadata"
8
8
  class Candidate
9
- attr_reader :input_index, :candidate_index, :addressee, :delivery_line_1, :delivery_line_2, :delivery_point_barcode,
9
+ attr_reader :input_id, :input_index, :candidate_index, :addressee, :delivery_line_1, :delivery_line_2, :delivery_point_barcode,
10
10
  :last_line, :metadata, :components, :analysis
11
11
 
12
12
  def initialize(obj)
13
+ @input_id = obj['input_id']
13
14
  @input_index = obj['input_index']
14
15
  @candidate_index = obj['candidate_index']
15
16
  @addressee = obj['addressee']
@@ -48,6 +48,7 @@ module SmartyStreets
48
48
  obj.each do |lookup|
49
49
  converted_lookup = {}
50
50
 
51
+ converted_lookup['input_id'] = lookup.input_id
51
52
  converted_lookup['street'] = lookup.street
52
53
  converted_lookup['street2'] = lookup.street2
53
54
  converted_lookup['secondary'] = lookup.secondary
@@ -5,11 +5,12 @@ module SmartyStreets
5
5
  module USZipcode
6
6
  # See "https://smartystreets.com/docs/cloud/us-zipcode-api#root"
7
7
  class Result
8
- attr_reader :reason, :input_index, :cities, :zipcodes, :status
8
+ attr_reader :reason, :input_id, :input_index, :cities, :zipcodes, :status
9
9
 
10
10
  def initialize(obj)
11
11
  @status = obj['status']
12
12
  @reason = obj['reason']
13
+ @input_id = obj['input_id']
13
14
  @input_index = obj['input_index']
14
15
  @cities = obj.fetch('city_states', [])
15
16
  @zipcodes = obj.fetch('zipcodes', [])
@@ -1,3 +1,3 @@
1
1
  module SmartyStreets
2
- VERSION = '5.6.0' # DO NOT EDIT (this is updated by a build job when a new release is published)
2
+ VERSION = '5.8.0' # 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: 5.6.0
4
+ version: 5.8.0
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: 2019-02-25 00:00:00.000000000 Z
11
+ date: 2020-08-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -106,12 +106,15 @@ files:
106
106
  - lib/smartystreets_ruby_sdk/international_street.rb
107
107
  - lib/smartystreets_ruby_sdk/international_street/analysis.rb
108
108
  - lib/smartystreets_ruby_sdk/international_street/candidate.rb
109
+ - lib/smartystreets_ruby_sdk/international_street/changes.rb
109
110
  - lib/smartystreets_ruby_sdk/international_street/client.rb
110
111
  - lib/smartystreets_ruby_sdk/international_street/components.rb
111
112
  - lib/smartystreets_ruby_sdk/international_street/language_mode.rb
112
113
  - lib/smartystreets_ruby_sdk/international_street/lookup.rb
113
114
  - lib/smartystreets_ruby_sdk/international_street/metadata.rb
115
+ - lib/smartystreets_ruby_sdk/international_street/rootlevel.rb
114
116
  - lib/smartystreets_ruby_sdk/json_able.rb
117
+ - lib/smartystreets_ruby_sdk/license_sender.rb
115
118
  - lib/smartystreets_ruby_sdk/logger.rb
116
119
  - lib/smartystreets_ruby_sdk/native_sender.rb
117
120
  - lib/smartystreets_ruby_sdk/native_serializer.rb
@@ -173,7 +176,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
173
176
  - !ruby/object:Gem::Version
174
177
  version: '0'
175
178
  requirements: []
176
- rubygems_version: 3.0.1
179
+ rubygems_version: 3.1.2
177
180
  signing_key:
178
181
  specification_version: 4
179
182
  summary: An official library for the SmartyStreets APIs