floydspace / effect-aws

🚰 Effectful AWS
https://floydspace.github.io/effect-aws/
MIT License
49 stars 4 forks source link

Generating all aws clients #46

Open joepjoosten opened 8 months ago

joepjoosten commented 8 months ago

Solves #44

Generates all clients in ./generated folder for a particular version of aws (e.g. v3.535.0).

I'm reusing the previous codegen-client.ts, but using the smithy files a little bit different.

It's not done yet, some open points:

joepjoosten commented 8 months ago

I've some time later this evening to look at it again

joepjoosten commented 8 months ago

Also, what about versioning? Probably better to keep it close to the AWS clients version, but how to indicate that we created a new version of the generated code?

godu commented 8 months ago

Also, what about versioning? Probably better to keep it close to the AWS clients version, but how to indicate that we created a new version of the generated code?

This idea is very attractive, however I would prefer to keep the aws client as peerDep and sync the version of all @effect-aws/client-*. It can be more flexible if we make radical changes.

joepjoosten commented 8 months ago

Also, what about versioning? Probably better to keep it close to the AWS clients version, but how to indicate that we created a new version of the generated code?

This idea is very attractive, however I would prefer to keep the aws client as peerDep and sync the version of all @effect-aws/client-*. It can be more flexible if we make radical changes.

Ok, let's use the effect-aws version for the generated aws-client packages. Should we bump the release to 2.0? (and how to do this in this project, i don't really know).

Mayor version bump because it could be breaking, because the generated Effect tagged Errors/Exceptions changed name to be in line with the smithy models

joepjoosten commented 8 months ago

Who can help with the projen and github workflow, so it becomes publishable? I don't have any experience with projen...

godu commented 7 months ago

I think this PR is too huge. Let's ship it in smaller pieces. I took some of your improvements of codegen script in my PR https://github.com/floydspace/effect-aws/pull/48