-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
pricing.GetProducts
includes breaking changes in v1.44.46
#4480
Comments
Worth noting, the change results from a change to the model, which was also applied to SDK v2: aws/aws-sdk-go-v2@cbf4363#diff-16b9ee4d242312b1c334f2f00f3de6e2206b94b2662771d1b4b517f663147916 The issue is with the model, |
This type flipped from |
In hindsight this seems like it was a bad assumption on my part and may only affect the Go SDK. The legacy allowlist makes a lot of sense and explains why the behavior differed here. v2 of the Go SDK has always been a |
Appreciate the quick diagnosis and fix for this! |
|
=== ### Service Client Updates * `service/acm-pca`: Updates service documentation * `service/iot`: Updates service API and documentation * GA release the ability to enable/disable IoT Fleet Indexing for Device Defender and Named Shadow information, and search them through IoT Fleet Indexing APIs. This includes Named Shadow Selection as a part of the UpdateIndexingConfiguration API. ### SDK Bugs * `service/pricing`: Fixes a bug that caused `GetProductsOutput.PriceList` to be generated incorrectly. ([#4486](#4486)) * The [v1.44.46](https://github.com/aws/aws-sdk-go/releases/tag/v1.44.46) release incorrectly resulted in the `PriceList` field's type changing from `[]aws.JSONValue` to `[]*string`. * This release reverts this change, with the field now correctly updated to `[]aws.JSONValue`. * Fixes [#4480](#4480)
Release v1.44.59 (2022-07-20) === ### Service Client Updates * `service/acm-pca`: Updates service documentation * `service/iot`: Updates service API and documentation * GA release the ability to enable/disable IoT Fleet Indexing for Device Defender and Named Shadow information, and search them through IoT Fleet Indexing APIs. This includes Named Shadow Selection as a part of the UpdateIndexingConfiguration API. ### SDK Bugs * `service/pricing`: Fixes a bug that caused `GetProductsOutput.PriceList` to be generated incorrectly. ([#4486](#4486)) * The [v1.44.46](https://github.com/aws/aws-sdk-go/releases/tag/v1.44.46) release incorrectly resulted in the `PriceList` field's type changing from `[]aws.JSONValue` to `[]*string`. * This release reverts this change, with the field now correctly updated to `[]aws.JSONValue`. * Fixes [#4480](#4480)
Describe the bug
Calling
pricing.GetProducts()
returns a different type beginning inv1.44.46
, breaking existing programs. ThePriceList
field inpricing.GetProductsOutput
is a*string
, where it was previously anaws.JSONValue
, which is amap[string]interface{}
. Clients relying on the previous type are broken by this change:Where previously this would print a JSON array where each element is an object, it now prints a JSON array where each element is a string (a stringified JSON object).
Expected Behavior
Either behavior is acceptable, but I would expect the type signature for all functions to remain the same across all revisions within a major version.
Current Behavior
Currently, an array of strings is returned
Reproduction Steps
For any pricing query (
input
)This prints an array of strings
Possible Solution
No response
Additional Information/Context
Originally reported in hashicorp/terraform-provider-aws#25771
SDK version used
v1.44.46
Environment details (Version of Go (
go version
)? OS name and version, etc.)go version go1.18.3 darwin/arm64
The text was updated successfully, but these errors were encountered: