feat(cfn-property-mixins): graduate to stable @aws-cdk/cfn-property-mixins package#37215
Conversation
5e71a01 to
bc8cbde
Compare
bc8cbde to
f8d1e54
Compare
|
➡️ PR build request submitted to A maintainer must now check the pipeline and add the |
|
Thank you for contributing! Your pull request will be updated from main and then merged automatically (do not update manually, and be sure to allow changes to be pushed to your fork). |
Merge Queue Status
This pull request spent 43 minutes 42 seconds in the queue, including 43 minutes 31 seconds running CI. Required conditions to merge
|
|
Thank you for contributing! Your pull request will be updated from main and then merged automatically (do not update manually, and be sure to allow changes to be pushed to your fork). |
|
Comments on closed issues and PRs are hard for our team to see. |
Reason for this change
The CFN property mixins feature has been incubating in
@aws-cdk/mixins-previewand is now stable enough to graduate to its own dedicated package. The preview package name signals instability and carries unrelated experimental features, which is no longer appropriate for a feature ready for general consumption. A stable, focused package gives users a clear import path and a name that reflects the feature's maturity.Description of changes
This introduces
@aws-cdk/cfn-property-mixinsas the stable home for auto-generated CloudFormation property mixins. The package provides aCfnXxxPropsMixinclass for every CloudFormation resource, organized into per-service submodules that mirror theaws-cdk-libmodule structure (e.g.@aws-cdk/cfn-property-mixins/aws-s3). The code generation reuses the samecfnPropMixins.generateAll()pipeline from@aws-cdk/spec2cdkthat already powers@aws-cdk/mixins-preview, with its owngen.tsorchestration and package base names.The generated mixin classes now import
IMergeStrategyandPropertyMergeStrategyfromaws-cdk-lib/core(where they were moved in a prior commit) rather than from the preview package's internal helpers. This is reflected in small updates to thespec2cdkbuilder and helpers.The
awslintexclusion list andpkglintvisibility rules are updated to include the new package. Unit tests for S3 property mixins cover property application, merge strategies, construct type matching, and cross-service references.Describe any new or updated permissions being added
None.
Description of how you validated changes
Unit tests verify property application, deep merge and override strategies, construct type matching, and cross-service KMS key references. The code generation pipeline produces submodules for all CloudFormation services.
Checklist
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license