-
Notifications
You must be signed in to change notification settings - Fork 3.9k
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
feat: aws resource api linting (breaking changes) #1434
Conversation
Normalize the import/export APIs for all AWS resources: * `IXxx`: an interface that contains all properties and methods that are common to both internal and imported resources. * `XxxAttributes`: includes the set of attributes that represent the resource (used to be `XxxRefProps`). * `XxxBase` (optional): abstract base class which implements `IXxx` and contains implementations that can be reused between internal and imported resources.
This reverts commit 69da340.
I find
Not sure that
This can't be private, huh? |
I agree that
I think export() is relevant for imported resources. If you have an
Sadly not. We could come up with some other convoluted way to reuse, but I think this is fine. |
Thanks so much for taking the time to contribute to the AWS CDK ❤️ We will shortly assign someone to review this pull request and help get it
|
Fixes #742
Built on top of #1428
BREAKING CHANGE: AWS resource-related classes have been changed to conform to API guidelines:
XxxRef
abstract classes are nowIXxx
interfacesXxxRefProps
are nowXxxImportProps
XxxRef.import(...)
are nowXxx.import(...)
acceptXxxImportProps
and returnIXxx
export(): XxxImportProps
is now defined inIXxx
and implemented by imported resourceslambda.FunctionRef
tolambda.Function
.zone
when created (not assuming zone is the parent construct).Pull Request Checklist
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license.