Breaking Changes
Abbreviated version below, for a guide see Upgrade Guide for 0.7
Namespaced AWS Provider Resources #572
The AWS Provider has a size that makes it hard to navigate in editors, especially in languages that compile it to a single file like Python. We implemented namespaces that hold Resources and Data Sources the same category together, the categories can be found on the AWS Provider page.
If you don't use the AWS provider no action is needed, if you do you need to adjust your import statements to match the namespaces. You can find more information at the upgrade guide.
Simplify Provider API Surface #258
When generating the provider bindings we previously translated any block to an array of a certain type, both in configuration and as properties on the resource / data source instances. For blocks that can only appear once at most this is making the API harder to use. From this version on these blocks are going to be just the type instead of an array of a certain type.
For information on how to migrate please see the upgrade guide.
Technical Preview
AWS Adapter
The AWS Adapter is a technical preview and not ready for production usage. Its API is not stable and things might break unexpectedly.
The AwsTerraformAdapter
(included in the @cdktf/aws-cdk
package) allows you to use Amazon Web Services Cloud Development Kit (AWS CDK) constructs in your CDK for Terraform (CDKTF) projects. Find out more in the Github repository hashicorp/aws-cdk or jump straight to the documentation.
Features
- feat(docs): Aws Adapter #1149
- feat(lib): change the namespace of encoded string, list and number tokens #1148
- feat(docs): document the use of aspects and annotations #1144
- feat(lib): invoke Aspects when using
Testing.synth
andTesting.synthScope
#1143 - feat(cli): namespace aws provider #1101
- feat(docs): add telemetry docs #1071
- feat(examples): add example azure service bus #1063
- feat(hcl2cdk): Copy local modules when init from TF project #1024
- feat(lib): use objects instead of objects in arrays if possible #935
- feat: Extend support for Terraform expressions #1131
Fixed Bugs
- fix(docs): fix missing backticks #1167
- fix(lib): Lock jsii version #1166
- fix(provider-generator): rename lambda namespace in lambda functions #1154
- fix(docs): fix typo in remote templates docs #1151
- fix(examples): fix path to setup.js file in jest config #1147
- fix(hcl2cdk): Convert null provider #1142
- fix(docs): fix example for integration test #1129
- fix(tests): quote lerna scope to prevent shell expansion #1121
- fix(hcl2cdk): Always using module binding for convert command #1120
- fix(hcl2cdk): Fix duplicate modules #1025
Refactoring
- refactor(cli): replace links with redirects #1138
Documentation
- chore(docs): Fix link to outputs doc #1164
- chore(docs): Fixes broken links #1163
- chore(docs): Update docs link #1162
- chore(docs): Fix docs links #1161
- chore(docs): reference interoperability layer #1160
- chore(docs): add new namespaces #1159
- chore(docs): review cli reference #1158
- chore(docs): remove adapter part #1157
- chore(docs): improve release script to not require manual pr selection #1156
- chore(docs): Proofreading edits #1150
- chore(docs): Terraform Docs #1146
- chore(docs): document numeric tokens #1140
- chore(deps): add script to update all snapshot tests #1139
- chore(docs): Laura architecture edits #1137
- chore(docs): Merge docs content to stable website #1133
- chore(docs): Laura docs todos edits #1128
- chore(docs): Add note and copyediting to providers page #1127
- chore(docs): Address todos #1126
- chore(docs): CDK for Terraform Architecture #1112
- chore(docs): Update cli configuration doc #1111
- chore(docs): Autofix prettier #1110
- chore(tests): Ignore website changes for test workflows #1109
- chore(docs): Combine Resources and Providers pages #1092
- chore(docs): Edits to Project Setup & Config file docs #1085
- chore(docs): Terraform Outputs #1078
- chore(docs): Adds descriptions example drafts #1073
- chore(docs): improve community documentation #1066
- chore(docs): What is CDKTF and Interoperability #1065
- chore(docs): link docs to Pocket codebase, YouTube #1062
- chore(docs): Project Setup #1056