Skip to content

fix!: Update all AWS Client Versions#2410

Merged
bbernays merged 10 commits intocloudquery:mainfrom
bbernays:update-all-clients
Oct 6, 2022
Merged

fix!: Update all AWS Client Versions#2410
bbernays merged 10 commits intocloudquery:mainfrom
bbernays:update-all-clients

Conversation

@bbernays
Copy link
Copy Markdown
Collaborator

@bbernays bbernays commented Oct 4, 2022

Summary

  • Upgrade from aws-sdk-go to aws-sdk-go-v2
  • Update all AWS SDK versions to latest version and regenerate resolvers and docs

Comment on lines +79 to +83
{
Name: "file_system_id",
Type: schema.TypeString,
Resolver: schema.PathResolver("FileSystemId"),
},
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@hermanschaaf It looks like the codegen changed the order of the fields, does this break backwards compatability?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Right now, with PostgreSQL being the only destination, I don't think it breaks backwards compatibility... However as we add more destinations this may become an issue (e.g. for a CSV destination it absolutely will break, and possibly for some other data lakes too)

Comment on lines +37 to +41
{
Name: "admin_contact",
Type: schema.TypeJSON,
Resolver: schema.PathResolver("AdminContact"),
},
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

More re ordering of fields/columns

|reseller|String|
|status_list|JSON|
|tech_contact|JSON|
|status_list|StringArray|
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks like a breaking change (changing type JSON to StringArray). Not much we can do about it... but it should technically require a major version bump.

{
Name: "status_list",
Type: schema.TypeJSON,
Type: schema.TypeStringArray,
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@hermanschaaf - A StringArray is a subset of JSON, maybe we can override the codegen to keep it as a JSON?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indeed we can... although it is a different question from whether we should 🙂 Future cases will also inevitably arise where we don't have a backwards-compatible option. Plus, just because we keep the column JSON, doesn't mean users don't need to update their queries (since the contents will change). I'd rather indicate that with a major version bump.

Maybe we should do updates like these on a semi-regular schedule, but not so regularly so as to cause constant toil for users. Will need to think about this some more...

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change only occurred because the codegen was using v1 of the AWS Go SDK which relied heavily on pointers rather than native go types like the AWS SDK Go V2 does

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, I see! So it shouldn't happen too often then. That's good to know

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AWS is really good about not releasing breaking changes, so unless something in our codegen/sdk changes as then we should always be good regenerating the clients

@hermanschaaf hermanschaaf changed the title fix: Update all AWS Client Versions fix!: Update all AWS Client Versions Oct 6, 2022
@hermanschaaf
Copy link
Copy Markdown
Contributor

@bbernays LGTM, there are just some conflicts to resolve now

@yevgenypats yevgenypats added the automerge Automatically merge once required checks pass label Oct 6, 2022
@bbernays bbernays merged commit ca34f1c into cloudquery:main Oct 6, 2022
@bbernays bbernays deleted the update-all-clients branch October 6, 2022 13:47
kodiakhq bot pushed a commit that referenced this pull request Oct 6, 2022
🤖 I have created a release *beep* *boop*
---


## [2.0.0](plugins-source-aws-v1.0.1...plugins-source-aws-v2.0.0) (2022-10-06)


### ⚠ BREAKING CHANGES

* Update all AWS Client Versions (#2410)
* Store some JSON columns as jsonb not as a text (#2463)

### Features

* Add new fields to Lightsail and EC2 ([#2403](#2403)) ([7e3fc83](7e3fc83))
* **aws:** EMR Clusters to use PreResourceResolver ([#2411](#2411)) ([b01e6ca](b01e6ca))
* **aws:** Update cis 1.5.0 policy ([#1615](#1615)) ([0f64196](0f64196))


### Bug Fixes

* AWS codegen: fix ec2 naming ([#2473](#2473)) ([27dd558](27dd558))
* **deps:** Update plugin-sdk for aws to v0.12.3 ([#2383](#2383)) ([0ed4d5f](0ed4d5f))
* **deps:** Update plugin-sdk for aws to v0.12.4 ([#2394](#2394)) ([d8c9657](d8c9657))
* **deps:** Update plugin-sdk for aws to v0.12.6 ([#2416](#2416)) ([0539c03](0539c03))
* **deps:** Update plugin-sdk for aws to v0.12.7 ([#2445](#2445)) ([6e39611](6e39611))
* Store some JSON columns as jsonb not as a text ([#2463](#2463)) ([5da8a1f](5da8a1f))
* Update all AWS Client Versions ([#2410](#2410)) ([ca34f1c](ca34f1c))
* Update endpoints ([#2414](#2414)) ([62d8802](62d8802))

---
This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

automerge Automatically merge once required checks pass

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants