smithy-client 1.0.0.pre0 → 1.0.0.pre1

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.
Files changed (101) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +2 -0
  3. data/VERSION +1 -1
  4. data/lib/smithy-client/anonymous_provider.rb +12 -0
  5. data/lib/smithy-client/auth_option.rb +23 -0
  6. data/lib/smithy-client/auth_scheme.rb +25 -0
  7. data/lib/smithy-client/auth_schemes/anonymous.rb +18 -0
  8. data/lib/smithy-client/auth_schemes/http_api_key.rb +18 -0
  9. data/lib/smithy-client/auth_schemes/http_basic.rb +18 -0
  10. data/lib/smithy-client/auth_schemes/http_bearer.rb +18 -0
  11. data/lib/smithy-client/auth_schemes/http_digest.rb +18 -0
  12. data/lib/smithy-client/base.rb +200 -0
  13. data/lib/smithy-client/block_io.rb +36 -0
  14. data/lib/smithy-client/configuration.rb +222 -0
  15. data/lib/smithy-client/default_params.rb +91 -0
  16. data/lib/smithy-client/dynamic_errors.rb +82 -0
  17. data/lib/smithy-client/endpoint_rules.rb +186 -0
  18. data/lib/smithy-client/handler.rb +29 -0
  19. data/lib/smithy-client/handler_builder.rb +33 -0
  20. data/lib/smithy-client/handler_context.rb +67 -0
  21. data/lib/smithy-client/handler_list.rb +197 -0
  22. data/lib/smithy-client/handler_list_entry.rb +102 -0
  23. data/lib/smithy-client/http/error_inspector.rb +87 -0
  24. data/lib/smithy-client/http/headers.rb +122 -0
  25. data/lib/smithy-client/http/request.rb +57 -0
  26. data/lib/smithy-client/http/response.rb +178 -0
  27. data/lib/smithy-client/http_api_key_provider.rb +18 -0
  28. data/lib/smithy-client/http_bearer_provider.rb +18 -0
  29. data/lib/smithy-client/http_login_provider.rb +19 -0
  30. data/lib/smithy-client/identities/anonymous.rb +10 -0
  31. data/lib/smithy-client/identities/http_api_key.rb +18 -0
  32. data/lib/smithy-client/identities/http_bearer.rb +18 -0
  33. data/lib/smithy-client/identities/http_login.rb +22 -0
  34. data/lib/smithy-client/identity.rb +15 -0
  35. data/lib/smithy-client/log_formatter.rb +215 -0
  36. data/lib/smithy-client/log_param_filter.rb +88 -0
  37. data/lib/smithy-client/log_param_formatter.rb +65 -0
  38. data/lib/smithy-client/managed_file.rb +14 -0
  39. data/lib/smithy-client/net_http/connection_pool.rb +297 -0
  40. data/lib/smithy-client/net_http/handler.rb +160 -0
  41. data/lib/smithy-client/net_http/patches.rb +28 -0
  42. data/lib/smithy-client/networking_error.rb +16 -0
  43. data/lib/smithy-client/pageable_response.rb +138 -0
  44. data/lib/smithy-client/param_converter.rb +243 -0
  45. data/lib/smithy-client/param_validator.rb +213 -0
  46. data/lib/smithy-client/plugin.rb +144 -0
  47. data/lib/smithy-client/plugin_list.rb +141 -0
  48. data/lib/smithy-client/plugins/anonymous_auth.rb +23 -0
  49. data/lib/smithy-client/plugins/checksum_required.rb +51 -0
  50. data/lib/smithy-client/plugins/content_length.rb +26 -0
  51. data/lib/smithy-client/plugins/default_params.rb +22 -0
  52. data/lib/smithy-client/plugins/host_prefix.rb +69 -0
  53. data/lib/smithy-client/plugins/http_api_key_auth.rb +37 -0
  54. data/lib/smithy-client/plugins/http_basic_auth.rb +47 -0
  55. data/lib/smithy-client/plugins/http_bearer_auth.rb +37 -0
  56. data/lib/smithy-client/plugins/http_digest_auth.rb +60 -0
  57. data/lib/smithy-client/plugins/idempotency_token.rb +34 -0
  58. data/lib/smithy-client/plugins/logging.rb +56 -0
  59. data/lib/smithy-client/plugins/net_http.rb +163 -0
  60. data/lib/smithy-client/plugins/pageable_response.rb +37 -0
  61. data/lib/smithy-client/plugins/param_converter.rb +32 -0
  62. data/lib/smithy-client/plugins/param_validator.rb +30 -0
  63. data/lib/smithy-client/plugins/protocol.rb +66 -0
  64. data/lib/smithy-client/plugins/raise_response_errors.rb +33 -0
  65. data/lib/smithy-client/plugins/request_compression.rb +200 -0
  66. data/lib/smithy-client/plugins/response_target.rb +71 -0
  67. data/lib/smithy-client/plugins/retry_errors.rb +125 -0
  68. data/lib/smithy-client/plugins/sign_requests.rb +24 -0
  69. data/lib/smithy-client/plugins/stub_responses.rb +102 -0
  70. data/lib/smithy-client/protocol_spec_matcher.rb +60 -0
  71. data/lib/smithy-client/refreshing_identity_provider.rb +65 -0
  72. data/lib/smithy-client/request.rb +76 -0
  73. data/lib/smithy-client/response.rb +48 -0
  74. data/lib/smithy-client/retry/adaptive.rb +66 -0
  75. data/lib/smithy-client/retry/client_rate_limiter.rb +142 -0
  76. data/lib/smithy-client/retry/quota.rb +58 -0
  77. data/lib/smithy-client/retry/standard.rb +52 -0
  78. data/lib/smithy-client/retry.rb +36 -0
  79. data/lib/smithy-client/rpc_v2_cbor/protocol.rb +38 -0
  80. data/lib/smithy-client/rpc_v2_cbor/request_builder.rb +76 -0
  81. data/lib/smithy-client/rpc_v2_cbor/response_parser.rb +86 -0
  82. data/lib/smithy-client/rpc_v2_cbor/response_stubber.rb +34 -0
  83. data/lib/smithy-client/service_error.rb +57 -0
  84. data/lib/smithy-client/signer.rb +16 -0
  85. data/lib/smithy-client/signers/anonymous.rb +13 -0
  86. data/lib/smithy-client/signers/http_api_key.rb +52 -0
  87. data/lib/smithy-client/signers/http_basic.rb +23 -0
  88. data/lib/smithy-client/signers/http_bearer.rb +19 -0
  89. data/lib/smithy-client/signers/http_digest.rb +21 -0
  90. data/lib/smithy-client/stubbing/data_applicator.rb +61 -0
  91. data/lib/smithy-client/stubbing/empty_stub.rb +69 -0
  92. data/lib/smithy-client/stubbing/endpoint_provider.rb +22 -0
  93. data/lib/smithy-client/stubbing/protocol.rb +29 -0
  94. data/lib/smithy-client/stubbing/stub_data.rb +25 -0
  95. data/lib/smithy-client/stubbing.rb +14 -0
  96. data/lib/smithy-client/stubs.rb +212 -0
  97. data/lib/smithy-client/util.rb +15 -0
  98. data/lib/smithy-client/waiters/poller.rb +93 -0
  99. data/lib/smithy-client/waiters/waiter.rb +113 -0
  100. data/lib/smithy-client.rb +66 -1
  101. metadata +163 -9
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Smithy
4
+ module Client
5
+ # @api private
6
+ module Util
7
+ def self.str_to_bool(str) # rubocop:disable Naming/PredicateMethod
8
+ case str
9
+ when 'true' then true
10
+ when 'false' then false
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,93 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Smithy
4
+ module Client
5
+ module Waiters
6
+ # Abstract poller class which polls a single API operation and inspects
7
+ # the output and/or error for states matching one of its acceptors.
8
+ class Poller
9
+ def initialize(options = {})
10
+ @operation_name = options[:operation_name]
11
+ @acceptors = options[:acceptors]
12
+ end
13
+
14
+ def call(client, params)
15
+ @input = params
16
+ request = client.build_request(@operation_name, params)
17
+ request.handlers.remove(Plugins::RaiseResponseErrors::Handler)
18
+ response = request.send_request
19
+ status = evaluate_acceptors(response)
20
+ [response, status.to_sym]
21
+ end
22
+
23
+ private
24
+
25
+ def evaluate_acceptors(response)
26
+ @acceptors.each do |acceptor|
27
+ return acceptor['state'] if acceptor_matches?(acceptor['matcher'], response)
28
+ end
29
+ response.error.nil? ? 'retry' : 'error'
30
+ end
31
+
32
+ def acceptor_matches?(matcher, response)
33
+ matcher_type = matcher.keys.first
34
+ send("matches_#{matcher_type}?", matcher[matcher_type], response)
35
+ end
36
+
37
+ def matches_output?(path_matcher, response)
38
+ return false if response.data.nil?
39
+
40
+ actual = JMESPath.search(path_matcher['path'], response.data)
41
+ equal?(actual, path_matcher['expected'], path_matcher['comparator'])
42
+ end
43
+
44
+ # rubocop:disable Naming/MethodName
45
+ def matches_inputOutput?(path_matcher, response)
46
+ return false unless !response.data.nil? && @input
47
+
48
+ data = {
49
+ input: @input,
50
+ output: response.data
51
+ }
52
+ actual = JMESPath.search(path_matcher['path'], data)
53
+ equal?(actual, path_matcher['expected'], path_matcher['comparator'])
54
+ end
55
+
56
+ def matches_success?(path_matcher, response)
57
+ path_matcher == true ? !response.data.nil? : !response.error.nil?
58
+ end
59
+
60
+ def matches_errorType?(path_matcher, response)
61
+ return false if response.error.nil?
62
+
63
+ response.error.class.to_s.end_with?("Errors::#{path_matcher}")
64
+ end
65
+
66
+ def equal?(actual, expected, comparator)
67
+ send("#{comparator}?", actual, expected)
68
+ end
69
+
70
+ def stringEquals?(actual, expected)
71
+ actual == expected
72
+ end
73
+
74
+ def booleanEquals?(actual, expected)
75
+ actual.to_s == expected
76
+ end
77
+
78
+ def allStringEquals?(actual, expected)
79
+ return false if actual.nil? || actual.empty?
80
+
81
+ actual.all? { |value| value == expected }
82
+ end
83
+
84
+ def anyStringEquals?(actual, expected)
85
+ return false if actual.nil? || actual.empty?
86
+
87
+ actual.any? { |value| value == expected }
88
+ end
89
+ # rubocop:enable Naming/MethodName
90
+ end
91
+ end
92
+ end
93
+ end
@@ -0,0 +1,113 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Smithy
4
+ module Client
5
+ module Waiters
6
+ # Raised when a waiter detects a condition where the waiter can never
7
+ # succeed.
8
+ class WaiterFailed < StandardError; end
9
+
10
+ # Raised when a waiter enters a failure state.
11
+ class FailureStateError < WaiterFailed
12
+ def initialize(error)
13
+ msg = "stopped waiting, encountered a failure state: #{error}"
14
+ super(msg)
15
+ end
16
+ end
17
+
18
+ # Raised when the total wait time of a waiter exceeds the maximum
19
+ # wait time.
20
+ class MaxWaitTimeExceededError < WaiterFailed
21
+ def initialize(max_wait_time)
22
+ msg = "stopped waiting after maximum wait time of #{max_wait_time} seconds was exceeded"
23
+ super(msg)
24
+ end
25
+ end
26
+
27
+ # Raised when a waiter encounters an unexpected error.
28
+ class UnexpectedError < WaiterFailed
29
+ def initialize(error)
30
+ msg = "stopped waiting due to an unexpected error: #{error}"
31
+ super(msg)
32
+ end
33
+ end
34
+
35
+ # Raised when attempting to get a waiter by name and the waiter has not
36
+ # been defined.
37
+ class NoSuchWaiterError < ArgumentError
38
+ def initialize(waiter_name, valid_waiters)
39
+ msg = "no such waiter: #{waiter_name}; valid waiter names are: #{valid_waiters}"
40
+ super(msg)
41
+ end
42
+ end
43
+
44
+ # Abstract waiter class which waits for a resource to reach a desired
45
+ # state.
46
+ class Waiter
47
+ def initialize(options = {})
48
+ @max_wait_time = max_wait_time(options[:max_wait_time])
49
+ @remaining_time = @max_wait_time
50
+ @max_delay = max_delay(options[:max_delay])
51
+ @min_delay = min_delay(options[:min_delay])
52
+ @poller = options[:poller]
53
+ end
54
+
55
+ def wait(client, params)
56
+ poll(client, params)
57
+ end
58
+
59
+ private
60
+
61
+ def max_wait_time(time)
62
+ unless time.is_a?(Integer)
63
+ raise ArgumentError, "expected `:max_wait_time` to be an Integer, got: #{time.class}"
64
+ end
65
+
66
+ time
67
+ end
68
+
69
+ def max_delay(delay)
70
+ raise ArgumentError, '`:max_delay` must be greater than 0' if delay < 1
71
+
72
+ delay
73
+ end
74
+
75
+ def min_delay(delay)
76
+ if delay < 1 || delay > @max_delay
77
+ raise ArgumentError, '`:min_delay` must be greater than 0 and less than or equal to `:max_delay`'
78
+ end
79
+
80
+ delay
81
+ end
82
+
83
+ def poll(client, params)
84
+ attempts = 0
85
+ loop do
86
+ response, status = @poller.call(client, params)
87
+ attempts += 1
88
+
89
+ case status
90
+ when :success then return
91
+ when :failure then raise FailureStateError, response.error
92
+ when :error then raise UnexpectedError, response.error
93
+ when :retry
94
+ raise MaxWaitTimeExceededError, @max_wait_time if @remaining_time.zero?
95
+
96
+ delay = delay(attempts)
97
+ @remaining_time -= delay
98
+ sleep(delay)
99
+ end
100
+ end
101
+ end
102
+
103
+ def delay(attempts)
104
+ attempt_ceiling = (Math.log(@max_delay / @min_delay) / Math.log(2)) + 1
105
+ delay = attempts > attempt_ceiling ? @max_delay : @min_delay * (2**(attempts - 1))
106
+ delay = rand(@min_delay..delay)
107
+ delay = @remaining_time if @remaining_time - delay <= @min_delay
108
+ delay
109
+ end
110
+ end
111
+ end
112
+ end
113
+ end
data/lib/smithy-client.rb CHANGED
@@ -1,7 +1,72 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'base64'
4
+ require 'bigdecimal'
5
+ require 'jmespath'
6
+
7
+ require 'smithy-cbor'
8
+ require 'smithy-schema'
9
+
10
+ # client
11
+
12
+ require_relative 'smithy-client/block_io'
13
+ require_relative 'smithy-client/configuration'
14
+ require_relative 'smithy-client/default_params'
15
+ require_relative 'smithy-client/dynamic_errors'
16
+ require_relative 'smithy-client/endpoint_rules'
17
+ require_relative 'smithy-client/handler'
18
+ require_relative 'smithy-client/handler_builder'
19
+ require_relative 'smithy-client/handler_context'
20
+ require_relative 'smithy-client/handler_list'
21
+ require_relative 'smithy-client/handler_list_entry'
22
+ require_relative 'smithy-client/log_formatter'
23
+ require_relative 'smithy-client/log_param_filter'
24
+ require_relative 'smithy-client/log_param_formatter'
25
+ require_relative 'smithy-client/managed_file'
26
+ require_relative 'smithy-client/networking_error'
27
+ require_relative 'smithy-client/pageable_response'
28
+ require_relative 'smithy-client/param_converter'
29
+ require_relative 'smithy-client/param_validator'
30
+ require_relative 'smithy-client/plugin'
31
+ require_relative 'smithy-client/plugin_list'
32
+ require_relative 'smithy-client/retry'
33
+ require_relative 'smithy-client/service_error'
34
+ require_relative 'smithy-client/util'
35
+ require_relative 'smithy-client/waiters/poller'
36
+ require_relative 'smithy-client/waiters/waiter'
37
+ require_relative 'smithy-client/request'
38
+ require_relative 'smithy-client/response'
39
+ require_relative 'smithy-client/base'
40
+
41
+ # client http
42
+
43
+ require_relative 'smithy-client/http/error_inspector'
44
+ require_relative 'smithy-client/http/headers'
45
+ require_relative 'smithy-client/http/response'
46
+ require_relative 'smithy-client/http/request'
47
+ require_relative 'smithy-client/net_http/connection_pool'
48
+ require_relative 'smithy-client/net_http/handler'
49
+
50
+ # identity and auth
51
+
52
+ require_relative 'smithy-client/auth_option'
53
+ require_relative 'smithy-client/auth_scheme'
54
+ require_relative 'smithy-client/identity'
55
+ require_relative 'smithy-client/refreshing_identity_provider'
56
+ require_relative 'smithy-client/signer'
57
+
58
+ # protocols
59
+
60
+ require_relative 'smithy-client/rpc_v2_cbor/protocol'
61
+
62
+ # stubbing
63
+
64
+ require_relative 'smithy-client/stubs'
65
+ require_relative 'smithy-client/stubbing'
66
+
3
67
  module Smithy
68
+ # Base module for a generated Smithy gem.
4
69
  module Client
5
- VERSION = File.read(File.expand_path('../VERSION', __dir__)).strip
70
+ VERSION = File.read(File.expand_path('../VERSION', __dir__.to_s)).strip
6
71
  end
7
72
  end
metadata CHANGED
@@ -1,18 +1,78 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: smithy-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.pre0
4
+ version: 1.0.0.pre1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-11-20 00:00:00.000000000 Z
12
- dependencies: []
10
+ date: 2025-06-26 00:00:00.000000000 Z
11
+ dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: base64
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - ">="
17
+ - !ruby/object:Gem::Version
18
+ version: '0'
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - ">="
24
+ - !ruby/object:Gem::Version
25
+ version: '0'
26
+ - !ruby/object:Gem::Dependency
27
+ name: jmespath
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - "~>"
31
+ - !ruby/object:Gem::Version
32
+ version: '1'
33
+ - - ">="
34
+ - !ruby/object:Gem::Version
35
+ version: 1.6.1
36
+ type: :runtime
37
+ prerelease: false
38
+ version_requirements: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - "~>"
41
+ - !ruby/object:Gem::Version
42
+ version: '1'
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ version: 1.6.1
46
+ - !ruby/object:Gem::Dependency
47
+ name: smithy-cbor
48
+ requirement: !ruby/object:Gem::Requirement
49
+ requirements:
50
+ - - '='
51
+ - !ruby/object:Gem::Version
52
+ version: 1.0.0.pre1
53
+ type: :runtime
54
+ prerelease: false
55
+ version_requirements: !ruby/object:Gem::Requirement
56
+ requirements:
57
+ - - '='
58
+ - !ruby/object:Gem::Version
59
+ version: 1.0.0.pre1
60
+ - !ruby/object:Gem::Dependency
61
+ name: smithy-schema
62
+ requirement: !ruby/object:Gem::Requirement
63
+ requirements:
64
+ - - '='
65
+ - !ruby/object:Gem::Version
66
+ version: 1.0.0.pre1
67
+ type: :runtime
68
+ prerelease: false
69
+ version_requirements: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - '='
72
+ - !ruby/object:Gem::Version
73
+ version: 1.0.0.pre1
13
74
  description: Smithy is a code generation toolkit for creating Client and Server SDKs
14
75
  from Smithy models.
15
- email:
16
76
  executables: []
17
77
  extensions: []
18
78
  extra_rdoc_files: []
@@ -20,11 +80,106 @@ files:
20
80
  - CHANGELOG.md
21
81
  - VERSION
22
82
  - lib/smithy-client.rb
83
+ - lib/smithy-client/anonymous_provider.rb
84
+ - lib/smithy-client/auth_option.rb
85
+ - lib/smithy-client/auth_scheme.rb
86
+ - lib/smithy-client/auth_schemes/anonymous.rb
87
+ - lib/smithy-client/auth_schemes/http_api_key.rb
88
+ - lib/smithy-client/auth_schemes/http_basic.rb
89
+ - lib/smithy-client/auth_schemes/http_bearer.rb
90
+ - lib/smithy-client/auth_schemes/http_digest.rb
91
+ - lib/smithy-client/base.rb
92
+ - lib/smithy-client/block_io.rb
93
+ - lib/smithy-client/configuration.rb
94
+ - lib/smithy-client/default_params.rb
95
+ - lib/smithy-client/dynamic_errors.rb
96
+ - lib/smithy-client/endpoint_rules.rb
97
+ - lib/smithy-client/handler.rb
98
+ - lib/smithy-client/handler_builder.rb
99
+ - lib/smithy-client/handler_context.rb
100
+ - lib/smithy-client/handler_list.rb
101
+ - lib/smithy-client/handler_list_entry.rb
102
+ - lib/smithy-client/http/error_inspector.rb
103
+ - lib/smithy-client/http/headers.rb
104
+ - lib/smithy-client/http/request.rb
105
+ - lib/smithy-client/http/response.rb
106
+ - lib/smithy-client/http_api_key_provider.rb
107
+ - lib/smithy-client/http_bearer_provider.rb
108
+ - lib/smithy-client/http_login_provider.rb
109
+ - lib/smithy-client/identities/anonymous.rb
110
+ - lib/smithy-client/identities/http_api_key.rb
111
+ - lib/smithy-client/identities/http_bearer.rb
112
+ - lib/smithy-client/identities/http_login.rb
113
+ - lib/smithy-client/identity.rb
114
+ - lib/smithy-client/log_formatter.rb
115
+ - lib/smithy-client/log_param_filter.rb
116
+ - lib/smithy-client/log_param_formatter.rb
117
+ - lib/smithy-client/managed_file.rb
118
+ - lib/smithy-client/net_http/connection_pool.rb
119
+ - lib/smithy-client/net_http/handler.rb
120
+ - lib/smithy-client/net_http/patches.rb
121
+ - lib/smithy-client/networking_error.rb
122
+ - lib/smithy-client/pageable_response.rb
123
+ - lib/smithy-client/param_converter.rb
124
+ - lib/smithy-client/param_validator.rb
125
+ - lib/smithy-client/plugin.rb
126
+ - lib/smithy-client/plugin_list.rb
127
+ - lib/smithy-client/plugins/anonymous_auth.rb
128
+ - lib/smithy-client/plugins/checksum_required.rb
129
+ - lib/smithy-client/plugins/content_length.rb
130
+ - lib/smithy-client/plugins/default_params.rb
131
+ - lib/smithy-client/plugins/host_prefix.rb
132
+ - lib/smithy-client/plugins/http_api_key_auth.rb
133
+ - lib/smithy-client/plugins/http_basic_auth.rb
134
+ - lib/smithy-client/plugins/http_bearer_auth.rb
135
+ - lib/smithy-client/plugins/http_digest_auth.rb
136
+ - lib/smithy-client/plugins/idempotency_token.rb
137
+ - lib/smithy-client/plugins/logging.rb
138
+ - lib/smithy-client/plugins/net_http.rb
139
+ - lib/smithy-client/plugins/pageable_response.rb
140
+ - lib/smithy-client/plugins/param_converter.rb
141
+ - lib/smithy-client/plugins/param_validator.rb
142
+ - lib/smithy-client/plugins/protocol.rb
143
+ - lib/smithy-client/plugins/raise_response_errors.rb
144
+ - lib/smithy-client/plugins/request_compression.rb
145
+ - lib/smithy-client/plugins/response_target.rb
146
+ - lib/smithy-client/plugins/retry_errors.rb
147
+ - lib/smithy-client/plugins/sign_requests.rb
148
+ - lib/smithy-client/plugins/stub_responses.rb
149
+ - lib/smithy-client/protocol_spec_matcher.rb
150
+ - lib/smithy-client/refreshing_identity_provider.rb
151
+ - lib/smithy-client/request.rb
152
+ - lib/smithy-client/response.rb
153
+ - lib/smithy-client/retry.rb
154
+ - lib/smithy-client/retry/adaptive.rb
155
+ - lib/smithy-client/retry/client_rate_limiter.rb
156
+ - lib/smithy-client/retry/quota.rb
157
+ - lib/smithy-client/retry/standard.rb
158
+ - lib/smithy-client/rpc_v2_cbor/protocol.rb
159
+ - lib/smithy-client/rpc_v2_cbor/request_builder.rb
160
+ - lib/smithy-client/rpc_v2_cbor/response_parser.rb
161
+ - lib/smithy-client/rpc_v2_cbor/response_stubber.rb
162
+ - lib/smithy-client/service_error.rb
163
+ - lib/smithy-client/signer.rb
164
+ - lib/smithy-client/signers/anonymous.rb
165
+ - lib/smithy-client/signers/http_api_key.rb
166
+ - lib/smithy-client/signers/http_basic.rb
167
+ - lib/smithy-client/signers/http_bearer.rb
168
+ - lib/smithy-client/signers/http_digest.rb
169
+ - lib/smithy-client/stubbing.rb
170
+ - lib/smithy-client/stubbing/data_applicator.rb
171
+ - lib/smithy-client/stubbing/empty_stub.rb
172
+ - lib/smithy-client/stubbing/endpoint_provider.rb
173
+ - lib/smithy-client/stubbing/protocol.rb
174
+ - lib/smithy-client/stubbing/stub_data.rb
175
+ - lib/smithy-client/stubs.rb
176
+ - lib/smithy-client/util.rb
177
+ - lib/smithy-client/waiters/poller.rb
178
+ - lib/smithy-client/waiters/waiter.rb
23
179
  homepage: https://github.com/smithy-lang/smithy-ruby
24
180
  licenses:
25
181
  - Apache-2.0
26
182
  metadata: {}
27
- post_install_message:
28
183
  rdoc_options: []
29
184
  require_paths:
30
185
  - lib
@@ -32,15 +187,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
32
187
  requirements:
33
188
  - - ">="
34
189
  - !ruby/object:Gem::Version
35
- version: '3.0'
190
+ version: '3.3'
36
191
  required_rubygems_version: !ruby/object:Gem::Requirement
37
192
  requirements:
38
193
  - - ">="
39
194
  - !ruby/object:Gem::Version
40
195
  version: '0'
41
196
  requirements: []
42
- rubygems_version: 3.5.11
43
- signing_key:
197
+ rubygems_version: 3.6.2
44
198
  specification_version: 4
45
199
  summary: Base runtime dependency for Smithy generated clients
46
200
  test_files: []