aws-sdk-core 3.264.0 → 3.265.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: 0c0e562777b1e5fdc50edc2441fb40908175d08e94fdc0f74bf2d615a1b3586d
4
- data.tar.gz: 42ae671ab8a8384b8a254258a9706297f29035cb97d039f6e69d37ca2a078a99
3
+ metadata.gz: 8516c7b01f0db8c447079f16dc6194cfb7946271b929d1d26d770de75f8149ab
4
+ data.tar.gz: 96e33c08458de24eb3a480dfcebcc7dfc792554dd273ff95d401fe925ea27424
5
5
  SHA512:
6
- metadata.gz: 9a0c773c066180a85a9e1a4d1a05cfe0ef5f7d04244719e3e1daa7887ac36177c30bf00bca21b74946a7ef4db5e3d7fea8a4185a4723c26beee9df76de351ac6
7
- data.tar.gz: 0e3b4e4f29d1b814c35842e62f2b812984f3ce4454e27e074cd63f38aefc713355dd35659ff6336b30b5ce7daaf7d81be157c9b6e3117ece4c92d4c8e492f79c
6
+ metadata.gz: 2f6055ceab696dc4e43df077da9229ddd68e6cc79765ca11766f31487e51932d39dcd2de2f0e9ca2f7dab9639519f54e74db8ba9ee2aab486a58e9fd9d99440d
7
+ data.tar.gz: ab07f8326345fc599f281df1aa345b1feb67037f846ef847595cf0872288bb785aac22b6cefe2034beb3deca3433ec3149b3bbeca25885451598381e52d33957
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 3.265.0 (2026-11-06)
5
+ ------------------
6
+
7
+ * Feature - Improve model-aware filtering of nested request parameters and sensitivity detection for nested collections.
8
+
4
9
  3.264.0 (2026-11-04)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.264.0
1
+ 3.265.0
@@ -132,8 +132,9 @@ module Aws
132
132
 
133
133
  def _request_params(response)
134
134
  params = response.context.params
135
- type = response.context.operation.input.shape.struct_class
136
- @param_formatter.summarize(@param_filter.filter(params, type))
135
+ operation = response.context.operation
136
+ ref = operation && operation.input
137
+ @param_formatter.summarize(@param_filter.filter(params, ref))
137
138
  end
138
139
 
139
140
  def _time(response)
@@ -24,7 +24,68 @@ module Aws
24
24
  @additional_filters = options[:filter] || []
25
25
  end
26
26
 
27
+ # Returns a copy with sensitive values replaced by "[FILTERED]".
28
+ #
29
+ # Uses generated SENSITIVE lists to choose which members to redact.
30
+ # Nested request hashes also use the global list for backwards compatibility.
31
+ # A ShapeRef preserves model types while filtering nested request parameters.
32
+ # Structure classes are also accepted for Structure#to_s and older callers.
33
+ #
34
+ # @param [Hash, Struct, Array, Object] values
35
+ # @param [Seahorse::Model::Shapes::ShapeRef, Class, nil] type
27
36
  def filter(values, type)
37
+ return filter_ref(values, type, root: true) if type.is_a?(Seahorse::Model::Shapes::ShapeRef)
38
+
39
+ filter_by_class(values, type)
40
+ end
41
+
42
+ private
43
+
44
+ def filter_ref(value, ref, root: false)
45
+ return filter_by_class(value, value.class) unless ref
46
+
47
+ shape = ref.shape
48
+ case shape
49
+ when Seahorse::Model::Shapes::StructureShape
50
+ if value.is_a?(Hash) || value.is_a?(Struct)
51
+ return filter_struct(
52
+ value, shape.struct_class, shape,
53
+ use_global_filters: !root && value.is_a?(Hash)
54
+ )
55
+ end
56
+ when Seahorse::Model::Shapes::ListShape
57
+ return value.map { |v| filter_ref(v, shape.member) } if value.is_a?(Array)
58
+ when Seahorse::Model::Shapes::MapShape
59
+ return filter_map(value, shape) if value.is_a?(Hash)
60
+ when Seahorse::Model::Shapes::DocumentShape, nil
61
+ return filter_by_class(value, value.class)
62
+ else
63
+ return value
64
+ end
65
+
66
+ filter_by_class(value, value.class)
67
+ end
68
+
69
+ def filter_map(values, shape)
70
+ filtered = {}
71
+ values.each_pair do |key, value|
72
+ filtered[key] =
73
+ if @enabled && @additional_filters.include?(key)
74
+ '[FILTERED]'
75
+ else
76
+ filter_ref(value, shape.value)
77
+ end
78
+ end
79
+ filtered
80
+ end
81
+
82
+ def member_ref(shape, key)
83
+ return unless key.is_a?(Symbol) || key.is_a?(String)
84
+
85
+ shape.member(key) if shape.member?(key)
86
+ end
87
+
88
+ def filter_by_class(values, type)
28
89
  case values
29
90
  when Struct then filter_struct(values, type)
30
91
  when Hash then filter_hash(values, type)
@@ -33,18 +94,19 @@ module Aws
33
94
  end
34
95
  end
35
96
 
36
- private
37
-
38
- def filter_struct(values, type)
39
- if values.class.include? Aws::Structure::Union
97
+ def filter_struct(values, type, shape = nil, use_global_filters: false)
98
+ if values.is_a?(Struct) && values.class.include?(Aws::Structure::Union)
40
99
  values = { values.member => values.value }
41
100
  end
42
- filter_hash(values, type)
101
+ filter_hash(values, type, shape, use_global_filters: use_global_filters)
43
102
  end
44
103
 
45
- def filter_hash(values, type)
46
- if type.const_defined?('SENSITIVE')
104
+ def filter_hash(values, type, shape = nil, use_global_filters: false)
105
+ if type && type.const_defined?(:SENSITIVE)
47
106
  filters = type::SENSITIVE + @additional_filters
107
+ # Nested hashes previously used the global list. Keep that protection
108
+ # alongside modeled sensitivity when following their shape references.
109
+ filters += SENSITIVE if use_global_filters
48
110
  else
49
111
  # Support backwards compatibility (new core + old service)
50
112
  filters = SENSITIVE + @additional_filters
@@ -54,15 +116,17 @@ module Aws
54
116
  values.each_pair do |key, value|
55
117
  filtered[key] = if @enabled && filters.include?(key)
56
118
  '[FILTERED]'
119
+ elsif shape
120
+ filter_ref(value, member_ref(shape, key))
57
121
  else
58
- filter(value, value.class)
122
+ filter_by_class(value, value.class)
59
123
  end
60
124
  end
61
125
  filtered
62
126
  end
63
127
 
64
128
  def filter_array(values, type)
65
- values.map { |value| filter(value, value.class) }
129
+ values.map { |value| filter_by_class(value, value.class) }
66
130
  end
67
131
 
68
132
  end
@@ -991,7 +991,7 @@ module Aws::Signin
991
991
  tracer: tracer
992
992
  )
993
993
  context[:gem_name] = 'aws-sdk-core'
994
- context[:gem_version] = '3.264.0'
994
+ context[:gem_version] = '3.265.0'
995
995
  Seahorse::Client::Request.new(handlers, context)
996
996
  end
997
997
 
@@ -56,7 +56,7 @@ module Aws::Signin
56
56
  autoload :EndpointProvider, 'aws-sdk-signin/endpoint_provider'
57
57
  autoload :Endpoints, 'aws-sdk-signin/endpoints'
58
58
 
59
- GEM_VERSION = '3.264.0'
59
+ GEM_VERSION = '3.265.0'
60
60
 
61
61
  end
62
62
 
@@ -703,7 +703,7 @@ module Aws::SSO
703
703
  tracer: tracer
704
704
  )
705
705
  context[:gem_name] = 'aws-sdk-core'
706
- context[:gem_version] = '3.264.0'
706
+ context[:gem_version] = '3.265.0'
707
707
  Seahorse::Client::Request.new(handlers, context)
708
708
  end
709
709
 
data/lib/aws-sdk-sso.rb CHANGED
@@ -56,7 +56,7 @@ module Aws::SSO
56
56
  autoload :EndpointProvider, 'aws-sdk-sso/endpoint_provider'
57
57
  autoload :Endpoints, 'aws-sdk-sso/endpoints'
58
58
 
59
- GEM_VERSION = '3.264.0'
59
+ GEM_VERSION = '3.265.0'
60
60
 
61
61
  end
62
62
 
@@ -1086,7 +1086,7 @@ module Aws::SSOOIDC
1086
1086
  tracer: tracer
1087
1087
  )
1088
1088
  context[:gem_name] = 'aws-sdk-core'
1089
- context[:gem_version] = '3.264.0'
1089
+ context[:gem_version] = '3.265.0'
1090
1090
  Seahorse::Client::Request.new(handlers, context)
1091
1091
  end
1092
1092
 
@@ -56,7 +56,7 @@ module Aws::SSOOIDC
56
56
  autoload :EndpointProvider, 'aws-sdk-ssooidc/endpoint_provider'
57
57
  autoload :Endpoints, 'aws-sdk-ssooidc/endpoints'
58
58
 
59
- GEM_VERSION = '3.264.0'
59
+ GEM_VERSION = '3.265.0'
60
60
 
61
61
  end
62
62
 
@@ -2807,7 +2807,7 @@ module Aws::STS
2807
2807
  tracer: tracer
2808
2808
  )
2809
2809
  context[:gem_name] = 'aws-sdk-core'
2810
- context[:gem_version] = '3.264.0'
2810
+ context[:gem_version] = '3.265.0'
2811
2811
  Seahorse::Client::Request.new(handlers, context)
2812
2812
  end
2813
2813
 
data/lib/aws-sdk-sts.rb CHANGED
@@ -56,7 +56,7 @@ module Aws::STS
56
56
  autoload :EndpointProvider, 'aws-sdk-sts/endpoint_provider'
57
57
  autoload :Endpoints, 'aws-sdk-sts/endpoints'
58
58
 
59
- GEM_VERSION = '3.264.0'
59
+ GEM_VERSION = '3.265.0'
60
60
 
61
61
  end
62
62
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.264.0
4
+ version: 3.265.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services