Skip to content

Commit a0c854d

Browse files
authored
Ignore unknown metadata and shape keys (#3095)
1 parent f187dd2 commit a0c854d

File tree

2 files changed

+19
-2
lines changed

2 files changed

+19
-2
lines changed

build_tools/aws-sdk-code-generator/lib/aws-sdk-code-generator.rb

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,4 +103,13 @@ module AwsSdkCodeGenerator
103103
# WARNING ABOUT GENERATED CODE
104104
WARNING_TXT
105105

106+
@warnings = []
107+
108+
class << self
109+
attr_reader :warnings
110+
def warn(service, type, message)
111+
Kernel.warn(message)
112+
@warnings << { service: service, type: type, message: message }
113+
end
114+
end
106115
end

build_tools/aws-sdk-code-generator/lib/aws-sdk-code-generator/views/client_api_module.rb

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,11 @@ def metadata
192192
value: @service.api['metadata'][key].inspect
193193
}
194194
elsif METADATA_KEYS[key].nil?
195-
raise "unhandled metadata key #{key.inspect}"
195+
AwsSdkCodeGenerator.warn(
196+
@service.service_id,
197+
:invalid_key,
198+
"unhandled metadata key `#{key}`"
199+
)
196200
end
197201
end
198202
metadata
@@ -317,7 +321,11 @@ def shape_constructor_args(shape_name, shape)
317321

318322
args << "#{key}: #{value.inspect}"
319323
elsif SHAPE_KEYS[key].nil?
320-
raise "unhandled shape key #{key.inspect}"
324+
AwsSdkCodeGenerator.warn(
325+
@service.service_id,
326+
:invalid_key,
327+
"unhandled shape key `#{key}` on `#{shape_name}`"
328+
)
321329
end
322330
end
323331
args.join(', ')

0 commit comments

Comments
 (0)