From f6057dfcc47c34678d6d7eef5ac53f80595bf075 Mon Sep 17 00:00:00 2001 From: Brian Flad Date: Mon, 15 Apr 2024 11:00:52 -0400 Subject: [PATCH] docs: Remove technical preview verbiage from provider-defined functions (#972) Reference: https://github.com/hashicorp/terraform-plugin-framework/issues/966 Co-authored-by: Austin Valle --- .changes/unreleased/NOTES-20240329-133959.yaml | 6 ++++++ function/definition.go | 3 --- function/function.go | 3 +-- provider/provider.go | 3 --- .../docs/plugin/framework/functions/implementation.mdx | 8 +------- website/docs/plugin/framework/functions/index.mdx | 6 ------ 6 files changed, 8 insertions(+), 21 deletions(-) create mode 100644 .changes/unreleased/NOTES-20240329-133959.yaml diff --git a/.changes/unreleased/NOTES-20240329-133959.yaml b/.changes/unreleased/NOTES-20240329-133959.yaml new file mode 100644 index 000000000..cd15ebdb6 --- /dev/null +++ b/.changes/unreleased/NOTES-20240329-133959.yaml @@ -0,0 +1,6 @@ +kind: NOTES +body: 'function: Provider-defined function features are now considered generally available + and protected by compatibility promises' +time: 2024-03-29T13:39:59.085147-04:00 +custom: + Issue: "966" diff --git a/function/definition.go b/function/definition.go index 4796a1207..aafb8d02b 100644 --- a/function/definition.go +++ b/function/definition.go @@ -12,9 +12,6 @@ import ( ) // Definition is a function definition. Always set at least the Result field. -// -// NOTE: Provider-defined function support is in technical preview and offered -// without compatibility promises until Terraform 1.8 is generally available. type Definition struct { // Parameters is the ordered list of function parameters and their // associated data types. diff --git a/function/function.go b/function/function.go index 0baf80188..87a830439 100644 --- a/function/function.go +++ b/function/function.go @@ -10,8 +10,7 @@ import ( // Function represents an instance of a function. This is the core interface // that all functions must implement. // -// NOTE: Provider-defined function support is in technical preview and offered -// without compatibility promises until Terraform 1.8 is generally available. +// Provider-defined functions are supported in Terraform version 1.8 and later. type Function interface { // Metadata should return the name of the function, such as parse_xyz. Metadata(context.Context, MetadataRequest, *MetadataResponse) diff --git a/provider/provider.go b/provider/provider.go index f96aaa1f9..ff0d18e81 100644 --- a/provider/provider.go +++ b/provider/provider.go @@ -74,9 +74,6 @@ type ProviderWithConfigValidators interface { // include provider defined functions for usage in practitioner configurations. // // Provider-defined functions are supported in Terraform version 1.8 and later. -// -// NOTE: Provider-defined function support is in technical preview and offered -// without compatibility promises until Terraform 1.8 is generally available. type ProviderWithFunctions interface { Provider diff --git a/website/docs/plugin/framework/functions/implementation.mdx b/website/docs/plugin/framework/functions/implementation.mdx index 98c87e1f5..45c800878 100644 --- a/website/docs/plugin/framework/functions/implementation.mdx +++ b/website/docs/plugin/framework/functions/implementation.mdx @@ -6,13 +6,7 @@ description: >- # Implement Functions - - -Provider-defined function support is in technical preview and offered without compatibility promises until Terraform 1.8 is generally available. - - - -The framework supports implementing functions based on Terraform's [concepts for provider-defined functions](/terraform/plugin/framework/functions/concepts). It is recommended to understand those concepts before implementing a function since the terminology is used throughout this page and there are details that simplify function handling as compared to other provider concepts. +The framework supports implementing functions based on Terraform's [concepts for provider-defined functions](/terraform/plugin/framework/functions/concepts). It is recommended to understand those concepts before implementing a function since the terminology is used throughout this page and there are details that simplify function handling as compared to other provider concepts. Provider-defined functions are supported in Terraform 1.8 and later. The main code components of a function implementation are: diff --git a/website/docs/plugin/framework/functions/index.mdx b/website/docs/plugin/framework/functions/index.mdx index a3c346518..35126aa57 100644 --- a/website/docs/plugin/framework/functions/index.mdx +++ b/website/docs/plugin/framework/functions/index.mdx @@ -8,12 +8,6 @@ description: >- # Functions - - -Provider-defined function support is in technical preview and offered without compatibility promises until Terraform 1.8 is generally available. - - - Functions are an abstraction that allow providers to expose computational logic beyond Terraform's [built-in functions](/terraform/language/functions) and simplify practitioner configurations. Provider-defined functions are supported in Terraform 1.8 and later.