Skip to content
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

fix(deps): update module github.com/hashicorp/terraform-plugin-framework to v1 #32

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Aug 31, 2023

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
github.com/hashicorp/terraform-plugin-framework v0.10.0 -> v1.12.0 age adoption passing confidence

Release Notes

hashicorp/terraform-plugin-framework (github.com/hashicorp/terraform-plugin-framework)

v1.12.0

Compare Source

NOTES:

BUG FIXES:

  • providerserver: Fixed bug that prevented moved operation support between resource types for framework-only providers. (#​1039)

v1.11.0

Compare Source

NOTES:

  • Framework reflection logic (Config.Get, Plan.Get, etc.) for structs with
    tfsdk field tags has been updated to support embedded structs that promote exported
    fields. For existing structs that embed unexported structs with exported fields, a tfsdk
    ignore tag (tfsdk:"-") can be added to ignore all promoted fields.

For example, the following struct will now return an error diagnostic:

type thingResourceModel struct {
	Attr1 types.String `tfsdk:"attr_1"`
	Attr2 types.Bool   `tfsdk:"attr_2"`

	// Previously, this embedded struct was ignored, will now promote underlying fields
	embeddedModel
}

type embeddedModel struct {
	// No `tfsdk` tag
	ExportedField string
}

To preserve the original behavior, a tfsdk ignore tag can be added to ignore the entire embedded struct:

type thingResourceModel struct {
	Attr1 types.String `tfsdk:"attr_1"`
	Attr2 types.Bool   `tfsdk:"attr_2"`

	// This embedded struct will now be ignored
	embeddedModel      `tfsdk:"-"`
}

type embeddedModel struct {
	ExportedField string
}

(#​1021)

ENHANCEMENTS:

  • all: Added embedded struct support for object to struct conversions with tfsdk tags (#​1021)

v1.10.0

Compare Source

FEATURES:

  • types/basetypes: Added Int32Type and Int32Value implementations for Int32 value handling. (#​1010)
  • types/basetypes: Added interfaces basetypes.Int32Typable, basetypes.Int32Valuable, and basetypes.Int32ValuableWithSemanticEquals for Int32 custom type and value implementations. (#​1010)
  • resource/schema: Added Int32Attribute implementation for Int32 value handling. (#​1010)
  • datasource/schema: Added Int32Attribute implementation for Int32 value handling. (#​1010)
  • provider/schema: Added Int32Attribute implementation for Int32 value handling. (#​1010)
  • function: Added Int32Parameter and Int32Return for Int32 value handling. (#​1010)
  • resource/schema/int32default: New package with StaticValue implementation for Int32 schema-based default values. (#​1010)
  • resource/schema/int32planmodifier: New package with built-in implementations for Int32 value plan modification. (#​1010)
  • resource/schema/defaults: New Int32 interface for Int32 schema-based default implementations. (#​1010)
  • resource/schema/planmodifier: New Int32 interface for Int32 value plan modification implementations. (#​1010)
  • schema/validator: New Int32 interface for Int32 value schema validation. (#​1010)
  • types/basetypes: Added Float32Type and Float32Value implementations for Float32 value handling. (#​1014)
  • types/basetypes: Added interfaces basetypes.Float32Typable, basetypes.Float32Valuable, and basetypes.Float32ValuableWithSemanticEquals for Float32 custom type and value implementations. (#​1014)
  • resource/schema: Added Float32Attribute implementation for Float32 value handling. (#​1014)
  • datasource/schema: Added Float32Attribute implementation for Float32 value handling. (#​1014)
  • provider/schema: Added Float32Attribute implementation for Float32 value handling. (#​1014)
  • function: Added Float32Parameter and Float32Return for Float32 value handling. (#​1014)
  • resource/schema/float32default: New package with StaticValue implementation for Float32 schema-based default values. (#​1014)
  • resource/schema/float32planmodifier: New package with built-in implementations for Float32 value plan modification. (#​1014)
  • resource/schema/defaults: New Float32 interface for Float32 schema-based default implementations. (#​1014)
  • resource/schema/planmodifier: New Float32 interface for Float32 value plan modification implementations. (#​1014)
  • schema/validator: New Float32 interface for Float32 value schema validation. (#​1014)

v1.9.0

Compare Source

NOTES:

  • resource: If plan modification was dependent on nested attribute plan modification automatically running when the nested object was null/unknown, it may be necessary to add object-level plan modification to convert the nested object to a known object first. (#​995)
  • This release contains support for deferred actions, which is an experimental feature only available in prerelease builds of Terraform 1.9 and later. This functionality is subject to change and is not protected by version compatibility guarantees. (#​999)

FEATURES:

  • resource: Add Deferred field to ReadResponse, ModifyPlanResponse, and ImportStateResponse which indicates a resource deferred action to the Terraform client (#​999)
  • datasource: Add Deferred field to ReadResponse which indicates a data source deferred action to the Terraform client (#​999)
  • resource: Add ClientCapabilities field to ReadRequest, ModifyPlanRequest, and ImportStateRequest which specifies optionally supported protocol features for the Terraform client (#​999)
  • datasource: Add ClientCapabilities field to ReadRequest which specifies optionally supported protocol features for the Terraform client (#​999)
  • provider: Add Deferred field to ConfigureResponse which indicates a provider deferred action to the Terraform client (#​1002)
  • provider: Add ClientCapabilities field to ConfigureRequest which specifies optionally supported protocol features for the Terraform client (#​1002)

ENHANCEMENTS:

  • function: Introduced implementation errors for collection and object parameters and returns which are missing type information (#​991)

BUG FIXES:

  • resource: Prevented errant collection-based nested object conversion from null/unknown object to known object (#​995)

v1.8.0

Compare Source

BREAKING CHANGES:

  • function: Removed Definition type Parameter() method (#​968)

NOTES:

  • function: Provider-defined function features are now considered generally available and protected by compatibility promises (#​966)
  • attr/xattr: The TypeWithValidate interface has been deprecated in preference of the ValidateableAttribute interface. A ValidatableParameter interface has also been added to the function package (#​968)

FEATURES:

  • attr/xattr: Added ValidateableAttribute interface for custom value type implementations (#​968)
  • function: Added ValidateableParameter interface for custom value type implementations (#​968)
  • function: Add BoolParameterValidator, DynamicParameterValidator, Float64ParameterValidator, Int64ParameterValidator, ListParameterValidator, MapParameterValidator, NumberParameterValidator, ObjectParameterValidator, SetParameterValidator, and StringParameterValidator interfaces for custom function parameter validation implementations. (#​971)
  • function: Add ParameterWithBoolValidators, ParameterWithInt64Validators, ParameterWithFloat64Validators, ParameterWithDynamicValidators, ParameterWithListValidators, ParameterWithMapValidators, ParameterWithNumberValidators, ParameterWithObjectValidators, ParameterWithSetValidators, and ParameterWithStringValidators interfaces to enable parameter-based validation support (#​971)

BUG FIXES:

  • types/basetypes: Prevented panic in the MapValue types Equal method when the receiver has a nil elementType (#​961)
  • types/basetypes: Prevented panic in the ListValue types Equal method when the receiver has a nil elementType (#​961)
  • types/basetypes: Prevented panic in the SetValue types Equal method when the receiver has a nil elementType (#​961)
  • resource: Ensured computed-only dynamic attributes will not cause wrong final value type errors during planning (#​969)

v1.7.0

Compare Source

BREAKING CHANGES:

  • function: All parameters must be explicitly named via the Name field (#​964)
  • function: DefaultParameterNamePrefix and DefaultVariadicParameterName constants have been removed (#​964)

FEATURES:

  • types/basetypes: Added DynamicType and DynamicValue implementations for dynamic value handling (#​147)
  • types/basetypes: Added interfaces basetypes.DynamicTypable, basetypes.DynamicValuable, and basetypes.DynamicValuableWithSemanticEquals for dynamic custom type and value implementations (#​147)
  • resource/schema: Added DynamicAttribute implementation for dynamic value handling (#​147)
  • datasource/schema: Added DynamicAttribute implementation for dynamic value handling (#​147)
  • provider/schema: Added DynamicAttribute implementation for dynamic value handling (#​147)
  • function: Added DynamicParameter and DynamicReturn for dynamic value handling` (#​147)
  • resource/schema/dynamicdefault: New package with StaticValue implementation for dynamic schema-based default values (#​147)
  • resource/schema/dynamicplanmodifier: New package with built-in implementations for dynamic value plan modification. (#​147)
  • resource/schema/defaults: New Dynamic interface for dynamic schema-based default implementations (#​147)
  • resource/schema/planmodifier: New Dynamic interface for dynamic value plan modification implementations (#​147)
  • schema/validator: New Dynamic interface for dynamic value schema validation (#​147)

v1.6.1

Compare Source

NOTES:

  • all: The v1.6.0 release updated this Go module to Go 1.21 per the Go support policy. It is recommended to review the Go 1.21 release notes before upgrading. Any consumers building on earlier Go versions may experience errors (#​937)

BUG FIXES:

  • resource/schema: Ensured invalid attribute default value errors are raised (#​930)
  • function: Added implementation validation to function.Definition to ensure all parameter names (including the variadic parameter) are unique. (#​926)
  • function: Updated the default parameter name to include the position of the parameter (i.e. param1, param2, etc.). Variadic parameters will default to varparam. (#​926)

v1.6.0

Compare Source

BREAKING CHANGES:

  • function: Changed the framework type for variadic parameters to types.TupleType, where each element is the same element type. Provider-defined functions using a types.List for retrieving variadic argument data will need to update their code to use types.Tuple. (#​923)
  • function: Altered the RunResponse type, replacing Diagnostics with FuncError (#​925)
  • diag: Removed DiagnosticWithFunctionArgument interface. Removed NewArgumentErrorDiagnostic(), NewArgumentWarningDiagnostic() and WithFunctionArgument() functions. Removed AddArgumentError() and AddArgumentWarning() methods from Diagnostics. (#​925)

FEATURES:

  • resource: Added the ResourceWithMoveState interface, which enables state moves across resource types with Terraform 1.8 and later (#​917)

ENHANCEMENTS:

  • privatestate: Added support for SetKey() method to fully remove key with nil or zero-length value (#​910)
  • function: Added FuncError type, required for RunResponse (#​925)
  • function: Added NewFuncError() and NewArgumentFuncError() functions, which create a FuncError (#​925)
  • function: Added ConcatFuncErrors() and FuncErrorFromDiags() helper functions for use when working with FuncError (#​925)

v1.5.0

Compare Source

NOTES:

  • all: Update google.golang.org/grpc dependency to address CVE-2023-44487 (#​865)
  • Provider-defined function support is in technical preview and offered without compatibility promises until Terraform 1.8 is generally available. (#​889)

FEATURES:

  • function: New package for implementing provider defined functions (#​889)

ENHANCEMENTS:

  • types/basetypes: Added TupleType and TupleValue implementations, which are only necessary for dynamic value handling (#​870)
  • diag: Added NewArgumentErrorDiagnostic() and NewArgumentWarningDiagnostic() functions, which create diagnostics with the function argument position set (#​889)
  • provider: Added ProviderWithFunctions interface for implementing provider defined functions (#​889)
  • diag: Added (Diagnostics).AddArgumentError() and (Diagnostics).AddArgumentWarning() methods for appending function argument diagnostics (#​889)

v1.4.2

Compare Source

BUG FIXES:

  • resource: Add Private field to DeleteResource type, which was missing to allow provider logic to update private state on errors (#​863)
  • resource: Prevented private state data loss if resource destruction returned an error (#​863)

v1.4.1

Compare Source

BUG FIXES:

  • providerserver: Prevented Data Source Type Not Found and Resource Type Not Found errors with Terraform 1.6 and later (#​853)

v1.4.0

Compare Source

NOTES:

  • all: This Go module has been updated to Go 1.20 per the Go support policy. It is recommended to review the Go 1.20 release notes before upgrading. Any consumers building on earlier Go versions may experience errors. (#​835)

FEATURES:

  • providerserver: Upgrade to protocol versions 5.4 and 6.4, which can significantly reduce memory usage with Terraform 1.6 and later when a configuration includes multiple instances of the same provider (#​828)

v1.3.5

Compare Source

NOTES:

  • internal: Changed provider defined method execution logs from DEBUG log level to TRACE (#​818)

BUG FIXES:

  • internal/fwserver: Prevented Invalid Element Type diagnostics for nested attributes and blocks implementing CustomType field (#​823)

v1.3.4

Compare Source

BUG FIXES:

  • types/basetypes: Prevented Float64Value Terraform data consistency errors for numbers with high precision floating point rounding errors (#​817)

v1.3.3

Compare Source

BUG FIXES:

  • types/basetypes: Minor reduction of memory allocations for ObjectValue type ToTerraformValue() method, which decreases provider operation durations at scale (#​775)
  • resource: Prevented panic during planning caused by SetNestedAttribute with nested attribute Default and multiple configured elements (#​783)
  • tfsdk: Prevented Value Conversion Error diagnostics when using Set() method with base types instead of custom types (#​806)
  • providerserver: Significantly reduced memory usage for framework data handling operations, especially during the PlanResourceChange RPC (#​792)

v1.3.2

Compare Source

BUG FIXES:

  • resource/schema: Ensured Default implementations received request Path and have response Diagnostics handled (#​778)
  • resource/schema: Prevented panics with Default implementations on list, map, and set where no response Diagnostics or PlanValue was returned (#​778)
  • providerserver: Ensured Terraform CLI interrupts (e.g. Ctrl-c) properly cancel the context.Context of inflight requests (#​782)
  • providerserver: Prevented caching of unused data and managed resource schemas (#​784)

v1.3.1

Compare Source

BUG FIXES:

  • datasource/schema: Ensure nested attribute and block Equal methods check nested attribute and block definition equality (#​752)
  • provider/metaschema: Ensure nested attribute Equal methods check nested attribute definition equality (#​752)
  • provider/schema: Ensure nested attribute and block Equal methods check nested attribute and block definition equality (#​752)
  • resource/schema: Ensure nested attribute and block Equal methods check nested attribute and block definition equality (#​752)
  • types/basetypes: Prevented panics in ListType, MapType, and SetType methods when ElemType field is not set (#​714)
  • resource/schema: Prevented Value Conversion Error diagnostics for attributes and blocks implementing both CustomType and PlanModifiers fields (#​754)
  • types/basetypes: Prevented panic with ListTypableWithSemanticEquals and SetTypableWithSemanticEquals when proposed new element count was greater than prior element count (#​772)

v1.3.0

Compare Source

NOTES:

  • datasource/schema: The Schema type Validate() method has been deprecated in preference of ValidateImplementation() (#​699)
  • provider/metaschema: The Schema type Validate() method has been deprecated in preference of ValidateImplementation() (#​699)
  • provider/schema: The Schema type Validate() method has been deprecated in preference of ValidateImplementation() (#​699)
  • resource/schema: The Schema type Validate() method has been deprecated in preference of ValidateImplementation() (#​699)

ENHANCEMENTS:

  • datasource/schema: Added Schema type ValidateImplementation() method, which performs framework-defined schema validation and can be used in unit testing (#​699)
  • provider/metaschema: Added Schema type ValidateImplementation() method, which performs framework-defined schema validation and can be used in unit testing (#​699)
  • provider/schema: Added Schema type ValidateImplementation() method, which performs framework-defined schema validation and can be used in unit testing (#​699)
  • resource/schema: Added Schema type ValidateImplementation() method, which performs framework-defined schema validation and can be used in unit testing (#​699)
  • datasource/schema: Raise validation errors if attempting to use top-level for_each attribute name, which requires special Terraform configuration syntax to be usable by the data source (#​704)
  • resource/schema: Raise validation errors if attempting to use top-level for_each attribute name, which requires special Terraform configuration syntax to be usable by the resource (#​704)
  • datasource/schema: Raise validation errors if attempting to use attribute names with leading numerics (0-9), which are invalid in the Terraform configuration language (#​705)
  • provider/schema: Raise validation errors if attempting to use attribute names with leading numerics (0-9), which are invalid in the Terraform configuration language (#​705)
  • resource/schema: Raise validation errors if attempting to use attribute names with leading numerics (0-9), which are invalid in the Terraform configuration language (#​705)
  • all: Improved SDK logging performance when messages would be skipped due to configured logging level (#​744)

BUG FIXES:

  • datasource/schema: Raise errors with ListAttribute, MapAttribute, ObjectAttribute, and SetAttribute implementations instead of panics when missing required AttributeTypes or ElementTypes fields (#​699)
  • provider/metaschema: Raise errors with ListAttribute, MapAttribute, ObjectAttribute, and SetAttribute implementations instead of panics when missing required AttributeTypes or ElementTypes fields (#​699)
  • provider/schema: Raise errors with ListAttribute, MapAttribute, ObjectAttribute, and SetAttribute implementations instead of panics when missing required AttributeTypes or ElementTypes fields (#​699)
  • resource/schema: Raise errors with ListAttribute, MapAttribute, ObjectAttribute, and SetAttribute implementations instead of panics when missing required AttributeTypes or ElementTypes fields (#​699)
  • tfsdk: Raise framework errors instead of generic upstream errors or panics when encountering unexpected values with Set() methods (#​715)

v1.2.0

Compare Source

NOTES:

  • New DEBUG level Detected value change between proposed new state and prior state log messages with the offending attribute path are now emitted when proposed new state value differences would cause the framework to automatically mark all unconfigured Computed attributes as unknown during planning. These can be used to troubleshoot potential resource implementation issues, or framework and Terraform plan logic bugs. (#​630)
  • This Go module has been updated to Go 1.19 per the Go support policy. Any consumers building on earlier Go versions may experience errors. (#​682)

FEATURES:

  • resource/schema: Introduce packages, interface types, and built-in static value functionality for schema-based default values (#​674)

ENHANCEMENTS:

  • internal/fwserver: Added DEBUG logging to aid troubleshooting unexpected plans with unknown values (#​630)
  • types/basetypes: Add BoolValue type NewBoolPointerValue() creation function and ValueBoolPointer() method (#​689)
  • types/basetypes: Add Float64Value type NewFloat64PointerValue() creation function and ValueFloat64Pointer() method (#​689)
  • types/basetypes: Add Int64Value type NewInt64PointerValue() creation function and ValueInt64Pointer() method (#​689)
  • types/basetypes: Add StringValue type NewStringPointerValue() creation function and ValueStringPointer() method (#​689)
  • resource/schema: Added Default fields to Attribute types, which support schema-based default values (#​674)

BUG FIXES:

  • types/basetypes: Fixed Float64Type type ValueFromTerraform method to handle valid, stringified numbers from Terraform (#​648)
  • resource: Prevented nested attribute and block plan modifications from being undone (#​669)

v1.1.1

Compare Source

BUG FIXES:

  • all: Prevented tftypes.NewValue can't use []tftypes.Value as a tftypes.Object panics with schemas that included SingleNestedBlock (#​624)

v1.1.0

Compare Source

NOTES:

  • all: For data handling consistency with attributes, unconfigured list and set blocks will now be represented as a null list or set instead of a known list or set with zero elements. This prevents confusing situations with validation and plan modification, where it was previously required to check block values for the number of elements. Logic that was previously missing null value checks for blocks may require updates. (#​604)
  • tfsdk: The Config, Plan, and State type PathMatches() method logic previously returned Invalid Path Expression for Schema Data errors based on implementation details of the underlying data, which prevented returning zero matches in cases where the expression is valid for the schema, but there was no actual data at the path. Providers can now determine whether zero matches is consequential for their use case. (#​602)

ENHANCEMENTS:

  • path: Added Expressions type Matches method for checking if any expression in the collection matches a given path (#​604)
  • tfsdk: Automatically prevented Terraform nested blocks must be empty to indicate no blocks errors for responses containing Plan and State types (#​621)

BUG FIXES:

  • datasource/schema: Prevented ListNestedBlock and SetNestedBlock type DeprecationMessage field from causing Block Deprecated warnings with unconfigured blocks (#​604)
  • datasource: Prevented ConfigValidators from unexpectedly modifying or removing prior validator diagnostics (#​619)
  • provider/schema: Prevented ListNestedBlock and SetNestedBlock type DeprecationMessage field from causing Block Deprecated warnings with unconfigured blocks (#​604)
  • provider: Prevented ConfigValidators from unexpectedly modifying or removing prior validator diagnostics (#​619)
  • resource/schema: Prevented ListNestedBlock and SetNestedBlock type DeprecationMessage field from causing Block Deprecated warnings with unconfigured blocks (#​604)
  • resource: Prevented ConfigValidators from unexpectedly modifying or removing prior validator diagnostics (#​619)
  • tfsdk: Fixed false positive Invalid Path Expression for Schema Data error to be schema-determined instead of data-determined (#​602)
  • types/basetypes: Fixed ObjectType type ApplyTerraform5AttributePathStep method to return an error instead of nil for invalid attribute name steps (#​602)

v1.0.1

Compare Source

BUG FIXES:

  • resource/schema/planmodifier: Prevented assignment to entry in nil map panic for Object type plan modifiers (#​591)
  • types/basetypes: Prevented type mutation via the ObjectType type AttributeTypes() method return (#​591)
  • types/basetypes: Prevented value mutation via the ListValue, MapValue, and SetValue type Elements() method return (#​591)
  • types/basetypes: Prevented value mutation via the ObjectValue type AttributeTypes() and Attributes() method returns (#​591)

v1.0.0

Compare Source

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 the types package that should prevent any breaking changes. (#​567)

BREAKING CHANGES:

  • provider: The Provider interface now requires the Metadata method. It can be left empty or set the MetadataResponse type TypeName field to populate datasource.MetadataRequest and resource.MetadataRequest type ProviderTypeName fields. (#​580)
  • resource: The RequiresReplace() plan modifier has been removed. Use a type-specific plan modifier instead, such as resource/schema/stringplanmodifier.RequiresReplace() or resource/schema/stringplanmodifier.RequiresReplaceIfConfigured() (#​576)
  • resource: The RequiresReplaceIf() plan modifier has been removed. Use a type-specific plan modifier instead, such as resource/schema/stringplanmodifier.RequiresReplaceIf() (#​576)
  • resource: The Resource type GetSchema method has been removed. Use the Schema method instead. (#​576)
  • resource: The StateUpgrader type PriorSchema field type has been migrated from tfsdk.Schema to resource/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 as resource/schema/stringplanmodifier.UseStateForUnknown() (#​576)
  • tfsdk: The AttributePlanModifier interface has been removed. Use the type-specific plan modifier interfaces in the resource/schema/planmodifier package instead. (#​576)
  • tfsdk: The AttributeValidator interface has been removed. Use the type-specific validator interfaces in the schema/validator package instead. (#​576)
  • tfsdk: The Attribute, Block, and Schema types have been removed. Use the similarly named types in the datasource/schema, provider/schema, and resource/schema packages instead. (#​576)
  • tfsdk: The ListNestedAttributes, MapNestedAttributes, SetNestedAttributes, and SingleNestedAttributes functions have been removed. Use the similarly named types in the datasource/schema, provider/schema, and resource/schema packages instead. (#​576)
  • types: The type-specific Typable and Valuable interfaces have been moved into the underlying basetypes package. (#​567)

FEATURES:

  • types/basetypes: New package which contains embeddable types for custom types (#​567)

BUG FIXES:

  • datasource: Add Validate function to Schema to prevent usage of reserved and invalid names for attributes and blocks (#​548)
  • provider: Add Validate function to MetaSchema to prevent usage of reserved and invalid names for attributes and blocks (#​548)
  • provider: Add Validate function to Schema to prevent usage of reserved and invalid names for attributes and blocks (#​548)
  • resource: Add Validate function to Schema to prevent usage of reserved and invalid names for attributes and blocks (#​548)

v0.17.0

Compare Source

NOTES:

  • datasource: The DataSource type GetSchema method has been deprecated. Use the Schema method instead. (#​546)
  • provider: The Provider type GetSchema method has been deprecated. Use the Schema method instead. (#​553)
  • resource: The RequiresReplace() plan modifier has been deprecated. Use a type-specific plan modifier instead, such as resource/schema/stringplanmodifier.RequiresReplace() or resource/schema/stringplanmodifier.RequiresReplaceIfConfigured() (#​565)
  • resource: The RequiresReplaceIf() plan modifier has been deprecated. Use a type-specific plan modifier instead, such as resource/schema/stringplanmodifier.RequiresReplaceIf() (#​565)
  • resource: The Resource type GetSchema method has been deprecated. Use the Schema method instead. (#​558)
  • resource: The UseStateForUnknown() plan modifier has been deprecated. Use a type-specific plan modifier instead, such as resource/schema/stringplanmodifier.UseStateForUnknown() (#​565)
  • tfsdk: The Attribute, Block, and Schema types have been deprecated. Use the similarly named types in the datasource/schema, provider/schema, and resource/schema packages instead. (#​563)
  • tfsdk: The ListNestedAttributes, MapNestedAttributes, SetNestedAttributes, and SingleNestedAttributes functions have been deprecated. Use the similarly named types in the datasource/schema, provider/schema, and resource/schema packages instead. (#​563)

BREAKING CHANGES:

  • provider: The ProviderWithMetaSchema type GetMetaSchema method has been replaced with the MetaSchema method (#​562)
  • tfsdk: The Attribute type FrameworkType() method has been removed. Use the GetType() method instead which returns the same information. (#​543)
  • tfsdk: The Attribute type GetType() method now returns type information whether the attribute implements the Type field or Attributes field. (#​543)
  • tfsdk: The Config, Plan, and State type Schema field type has been updated from tfsdk.Schema to the generic fwschema.Schema interface to enable additional schema implementations (#​544)

FEATURES:

  • datasource/schema: New package which contains schema interfaces and types relevant to data sources (#​546)
  • provider/schema: New package which contains schema interfaces and types relevant to providers (#​553)
  • resource/schema/planmodifier: New package which contains type-specific schema plan modifier interfaces (#​557)
  • resource/schema: New package which contains schema interfaces and types relevant to resources (#​558)
  • resource/schema: New packages, such as stringplanmodifier which contain type-specific schema plan modifier implementations (#​565)
  • schema/validator: New package which contains type-specific schema validator interfaces (#​542)

BUG FIXES:

  • diag: Allow diagnostic messages with incorrect UTF-8 encoding to pass through with the invalid sequences replaced with the Unicode Replacement Character. This avoids returning the unhelpful message "string field contains invalid UTF-8" in that case. (#​549)
  • internal/fwserver: Ensured blocks are ignored when marking computed nils as unknown during resource change planning (#​552)

v0.16.0

Compare Source

BREAKING CHANGES:

  • types: The Bool type Null, Unknown, and Value fields have been removed. Use the BoolNull(), BoolUnknown(), and BoolValue() creation functions and IsNull(), IsUnknown(), and ValueBool() methods instead. (#​523)
  • types: The Float64 type Null, Unknown, and Value fields have been removed. Use the Float64Null(), Float64Unknown(), and Float64Value() creation functions and IsNull(), IsUnknown(), and ValueFloat64() methods instead. (#​523)
  • types: The Int64 type Null, Unknown, and Value fields have been removed. Use the Int64Null(), Int64Unknown(), and Int64Value() creation functions and IsNull(), IsUnknown(), and ValueInt64() methods instead. (#​523)
  • types: The List type Elems, ElemType, Null, and Unknown fields have been removed. Use the ListNull(), ListUnknown(), ListValue(), and ListValueMust() creation functions and Elements(), ElementsAs(), ElementType(), IsNull(), and IsUnknown() methods instead. (#​523)
  • types: The Map type Elems, ElemType, Null, and Unknown fields have been removed. Use the MapNull(), MapUnknown(), MapValue(), and MapValueMust() creation functions and Elements(), ElementsAs(), ElementType(), IsNull(), and IsUnknown() methods instead. (#​523)
  • types: The Number type Null, Unknown, and Value fields have been removed. Use the NumberNull(), NumberUnknown(), and NumberValue() creation functions and IsNull(), IsUnknown(), and ValueBigFloat() methods instead. (#​523)
  • types: The Object type Attrs, AttrTypes, Null, and Unknown fields have been removed. Use the ObjectNull(), ObjectUnknown(), ObjectValue(), and ObjectValueMust() creation functions and As(), Attributes(), AttributeTypes(), IsNull(), and IsUnknown() methods instead. (#​523)
  • types: The Set type Elems, ElemType, Null, and Unknown fields have been removed. Use the SetNull(), SetUnknown(), SetValue(), and SetValueMust() creation functions and Elements(), ElementsAs(), ElementType(), IsNull(), and IsUnknown() methods instead. (#​523)
  • types: The String type Null, Unknown, and Value fields have been removed. Use the StringNull(), StringUnknown(), and StringValue() creation functions and IsNull(), IsUnknown(), and ValueString() methods instead. (#​523)

ENHANCEMENTS:

  • attr: Added ValueState type, which custom types can use to consistently represent the three possible value states (known, null, and unknown) (#​523)
  • types: Added BoolTypable and BoolValuable interface types, which enable embedding existing boolean types for custom types (#​536)
  • types: Added Float64Typable and Float64Valuable interface types, which enable embedding existing float64 types for custom types (#​536)
  • types: Added Int64Typable and Int64Valuable interface types, which enable embedding existing int64 types for custom types (#​536)
  • types: Added ListTypable and ListValuable interface types, which enable embedding existing list types for custom types (#​536)
  • types: Added MapTypable and MapValuable interface types, which enable embedding existing map types for custom types (#​536)
  • types: Added NumberTypable and NumberValuable interface types, which enable embedding existing number types for custom types (#​536)
  • types: Added ObjectTypable and ObjectValuable interface types, which enable embedding existing object types for custom types (#​536)
  • types: Added SetTypable and SetValuable interface types, which enable embedding existing set types for custom types (#​536)
  • types: Added StringTypable and StringValuable interface types, which enable embedding existing string types for custom types (#​536)

BUG FIXES:

  • types: Prevented Terraform errors where the zero-value for any attr.Value types such as String would be a known value instead of null (#​523)
  • types: Prevented indeterminate behavior for any attr.Value types where they could be any combination of null, unknown, and/or known (#​523)

v0.15.0

Compare Source

NOTES:

  • types: The Bool type Null, Unknown, and Value fields have been deprecated in preference of the BoolNull(), BoolUnknown(), and BoolValue() creation functions and IsNull(), IsUnknown(), and ValueBool() methods. The fields will be removed

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from e6f0f02 to 3fed0e4 Compare September 6, 2023 23:34
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from 3fed0e4 to 368129a Compare October 10, 2023 02:41
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from 368129a to 5893770 Compare October 24, 2023 23:42
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from 5893770 to fd30603 Compare January 12, 2024 08:39
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from fd30603 to a28d781 Compare February 14, 2024 08:58
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from a28d781 to e61ab10 Compare February 14, 2024 09:00
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from e61ab10 to 22960f7 Compare February 29, 2024 08:38
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from 22960f7 to 764ee0e Compare March 7, 2024 23:36
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from 764ee0e to cd5b6c7 Compare March 22, 2024 03:02
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch 2 times, most recently from 4703ea8 to 5b2ef29 Compare April 18, 2024 23:57
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from 5b2ef29 to 102e8db Compare May 9, 2024 23:51
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from 102e8db to 0c8848c Compare June 5, 2024 08:56
Copy link
Contributor Author

renovate bot commented Jun 5, 2024

ℹ Artifact update notice

File name: go.mod

In order to perform the update(s) described in the table above, Renovate ran the go get command, which resulted in the following additional change(s):

  • 15 additional dependencies were updated
  • The go directive was updated for compatibility reasons

Details:

Package Change
go 1.20 -> 1.23.1
github.com/golang/protobuf v1.5.2 -> v1.5.4
github.com/google/go-cmp v0.5.8 -> v0.6.0
github.com/hashicorp/go-hclog v1.2.1 -> v1.5.0
github.com/hashicorp/go-plugin v1.4.4 -> v1.6.1
github.com/hashicorp/terraform-plugin-go v0.12.0 -> v0.24.0
github.com/hashicorp/terraform-plugin-log v0.6.0 -> v0.9.0
github.com/hashicorp/terraform-registry-address v0.0.0-20220623143253-7d51757b572c -> v0.2.3
github.com/hashicorp/terraform-svchost v0.0.0-20200729002733-f050f53b9734 -> v0.1.1
github.com/hashicorp/yamux v0.0.0-20180604194846-3520598351bb -> v0.1.1
golang.org/x/net v0.17.0 -> v0.26.0
golang.org/x/sys v0.13.0 -> v0.21.0
golang.org/x/text v0.13.0 -> v0.16.0
google.golang.org/appengine v1.6.5 -> v1.6.7
google.golang.org/grpc v1.48.0 -> v1.66.2
google.golang.org/protobuf v1.28.0 -> v1.34.2

@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from 0c8848c to 60af874 Compare July 10, 2024 05:28
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from 60af874 to b224b04 Compare August 9, 2024 05:42
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from b224b04 to 0235066 Compare September 11, 2024 18:04
@renovate renovate bot force-pushed the renovate/github.com-hashicorp-terraform-plugin-framework-1.x branch from 0235066 to 6a8df1d Compare September 18, 2024 18:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants