NOTES:
- The Terraform Plugin Framework is now generally available with semantic versioning compatibility promises. (#578)
- types: Framework type implementations have been moved into the underlying
basetypes
package. Value creation functions and type aliases have been created in thetypes
package that should prevent any breaking changes. (#567)
BREAKING CHANGES:
- provider: The
Provider
interface now requires theMetadata
method. It can be left empty or set theMetadataResponse
typeTypeName
field to populatedatasource.MetadataRequest
andresource.MetadataRequest
typeProviderTypeName
fields. (#580) - resource: The
RequiresReplace()
plan modifier has been removed. Use a type-specific plan modifier instead, such asresource/schema/stringplanmodifier.RequiresReplace()
orresource/schema/stringplanmodifier.RequiresReplaceIfConfigured()
(#576) - resource: The
RequiresReplaceIf()
plan modifier has been removed. Use a type-specific plan modifier instead, such asresource/schema/stringplanmodifier.RequiresReplaceIf()
(#576) - resource: The
Resource
typeGetSchema
method has been removed. Use theSchema
method instead. (#576) - resource: The
StateUpgrader
typePriorSchema
field type has been migrated fromtfsdk.Schema
toresource/schema.Schema
, similar to other resource schema handling (#573) - resource: The
UseStateForUnknown()
plan modifier has been removed. Use a type-specific plan modifier instead, such asresource/schema/stringplanmodifier.UseStateForUnknown()
(#576) - tfsdk: The
AttributePlanModifier
interface has been removed. Use the type-specific plan modifier interfaces in theresource/schema/planmodifier
package instead. (#576) - tfsdk: The
AttributeValidator
interface has been removed. Use the type-specific validator interfaces in theschema/validator
package instead. (#576) - tfsdk: The
Attribute
,Block
, andSchema
types have been removed. Use the similarly named types in thedatasource/schema
,provider/schema
, andresource/schema
packages instead. (#576) - tfsdk: The
ListNestedAttributes
,MapNestedAttributes
,SetNestedAttributes
, andSingleNestedAttributes
functions have been removed. Use the similarly named types in thedatasource/schema
,provider/schema
, andresource/schema
packages instead. (#576) - types: The type-specific
Typable
andValuable
interfaces have been moved into the underlyingbasetypes
package. (#567)
FEATURES:
- types/basetypes: New package which contains embeddable types for custom types (#567)
BUG FIXES:
- datasource: Add
Validate
function toSchema
to prevent usage of reserved and invalid names for attributes and blocks (#548) - provider: Add
Validate
function toMetaSchema
to prevent usage of reserved and invalid names for attributes and blocks (#548) - provider: Add
Validate
function toSchema
to prevent usage of reserved and invalid names for attributes and blocks (#548) - resource: Add
Validate
function toSchema
to prevent usage of reserved and invalid names for attributes and blocks (#548)