Skip to content

Commit 7c3a73a

Browse files
Merge pull request #292566 from ggailey777/language-policy
[Functions] Support policy- add pivot + FAQs
2 parents 39be76c + 23337b4 commit 7c3a73a

File tree

2 files changed

+87
-34
lines changed

2 files changed

+87
-34
lines changed

articles/azure-functions/functions-versions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ All functions in a function app must share the same language. You choose the lan
3131

3232
[!INCLUDE [functions-supported-languages](../../includes/functions-supported-languages.md)]
3333

34-
For information about the language versions of previously supported versions of the Functions runtime, see [Retired runtime versions](language-support-policy.md#retired-runtime-versions).
34+
For information about the language versions of previously supported versions of the Functions runtime, see [Retired runtime versions](language-support-policy.md#language-support-related-resources).
3535

3636
## <a name="creating-1x-apps"></a>Run on a specific version
3737

articles/azure-functions/language-support-policy.md

Lines changed: 86 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,17 @@
22
title: Azure Functions language stack support policy
33
description: Learn about the support policy for the various language stacks that Azure Functions supports.
44
ms.topic: conceptual
5-
ms.date: 08/05/2024
5+
ms.date: 01/02/2025
6+
zone_pivot_groups: programming-languages-set-functions
67
---
78

89
# Azure Functions language stack support policy
910

10-
This article explains the support policy for the language stacks supported by Azure Functions.
11+
This article explains the support policy for the language stacks supported by Azure Functions. Guidance is language-specific. Make sure to choose your preferred development language at the [top of the article](#top).
1112

1213
## Retirement process
1314

14-
The Azure Functions runtime includes the Azure Functions host and programming language-specific workers. To maintain full-support coverage when running your functions in Azure, Functions support aligns with end-of-life support for a given language. To help you keep your apps up-to-date and supported, Functions implements a phased reduction in support as language stack versions reach their end-of-life dates. Generally, the retirement date coincides with the community end-of-life date of the given language.
15+
The Functions runtime includes the Functions host and programming language-specific workers. To maintain full-support coverage when running your functions in Azure, Functions support aligns with end-of-life support for a given language. To help you keep your apps up-to-date and supported, Functions implements a phased reduction in support as language stack versions reach their end-of-life dates. Generally, the retirement date coincides with the community end-of-life date of the given language.
1516

1617
+ **Notification phase**:
1718

@@ -22,54 +23,106 @@ The Azure Functions runtime includes the Azure Functions host and programming la
2223
After the language end-of-life date, function apps that use retired language versions can still be created and deployed, and they continue to run on the platform. However, these apps aren't eligible for new features, security patches, and performance optimizations until after you upgrade them to a supported language version.
2324

2425
> [!IMPORTANT]
25-
>If you're running function apps using an unsupported runtime or language version, you may encounter issues and performance implications and are required to upgrade before receiving support for your function app. Because of this, you're highly encouraged to upgrade the language version of such an app to a supported version. TO learn how, see [Update language stack versions in Azure Functions](./update-language-versions.md).
26+
>If you're running function apps using an unsupported runtime or language version, you might encounter issues and performance implications and are required to upgrade before receiving support for your function app. As such, you're highly encouraged to upgrade the language version of such an app to a supported version. TO learn how, see [Update language stack versions in Azure Functions](./update-language-versions.md).
2627
2728
## Retirement policy exceptions
2829

2930
Any Functions-supported exceptions to language-specific retirement policies are documented here:
3031

3132
> There are currently no exceptions to the general retirement policy.
3233
33-
## Language version support timeline
34+
## Language support-related resources
3435

35-
To learn more about specific language version support policy timeline, visit the following external resources:
36-
* .NET - [dotnet.microsoft.com](https://dotnet.microsoft.com/platform/support/policy/dotnet-core)
37-
* Node - [github.com](https://github.com/nodejs/Release#release-schedule)
38-
* Java - [Microsoft technical documentation](/azure/developer/java/fundamentals/java-support-on-azure)
39-
* PowerShell - [Microsoft technical documentation](/powershell/scripting/powershell-support-lifecycle#powershell-end-of-support-dates)
40-
* Python - [devguide.python.org](https://devguide.python.org/#status-of-python-branches)
36+
Use these resources to better understand and plan for language support-related changes in your function apps.
37+
::: zone pivot="programming-language-csharp"
38+
39+
| Resource | Details |
40+
| --- | --- |
41+
| **Language version support timelines** | [.NET support policy page](https://dotnet.microsoft.com/platform/support/policy/dotnet-core)|
42+
| **Configuring language versions** | [Isolated worker model](./dotnet-isolated-process-guide.md#supported-versions)<br/>[In-process model](./functions-dotnet-class-library.md#supported-versions)|
43+
| **Retired runtime versions**<sup>*</sup> | **v2.x**: .NET Core 2.1<br/>**v3.x**: .NET Core 3.1 & .NET 5<sup>**</sup> |
4144

42-
## Configuring language versions
45+
::: zone-end
46+
::: zone pivot="programming-language-javascript,programming-language-typescript"
4347

44-
|Language stack | Configuration guides |
45-
|-----------------------------------------|-----------------|
46-
|C# (isolated worker model) |[link](./dotnet-isolated-process-guide.md#supported-versions)|
47-
|C# (in-process model) |[link](./functions-dotnet-class-library.md#supported-versions)|
48-
|Java |[link](./update-language-versions.md#update-the-stack-configuration)|
49-
|Node |[link](./functions-reference-node.md#setting-the-node-version)|
50-
|PowerShell |[link](./functions-reference-powershell.md#changing-the-powershell-version)|
51-
|Python |[link](./functions-reference-python.md#python-version)|
48+
| Resource | Details |
49+
| --- | --- |
50+
| **Language version support timelines** | [Node.js release page on GitHub](https://github.com/nodejs/Release#release-schedule)|
51+
| **Configuring language versions** | [Setting the Node version](./functions-reference-node.md#setting-the-node-version)|
52+
| **Retired runtime versions**<sup>*</sup> | **v2.x**: Node.js 10 & 8<br/>**v3.x**: Node.js 14, 12, & 10 |
5253

53-
## Retired runtime versions
54+
::: zone-end
55+
::: zone pivot="programming-language-java"
5456

55-
This historical table shows the highest language stack level for no-longer-supported versions of the Functions runtime:
57+
| Resource | Details |
58+
| --- | --- |
59+
| **Language version support timelines** | [Java support on Azure and Azure Stack](/azure/developer/java/fundamentals/java-support-on-azure)|
60+
| **Configuring language versions** | [Update the stack configuration](./update-language-versions.md#update-the-stack-configuration)|
61+
| **Retired runtime versions**<sup>*</sup> | **v2.x**: Java 8<br/>**v3.x**: Java 11 & 8 |
5662

57-
|Language stack |2.x | 3.x |
58-
|-----------------------------------------|---| --- |
59-
|[C#](functions-dotnet-class-library.md)|GA (.NET Core 2.1)| GA (.NET Core 3.1 & .NET 5<sup>*</sup>) |
60-
|[JavaScript/TypeScript](functions-reference-node.md?tabs=javascript)|GA (Node.js 10 & 8)| GA (Node.js 14, 12, & 10) |
61-
|[Java](functions-reference-java.md)|GA (Java 8)| GA (Java 11 & 8)|
62-
|[PowerShell](functions-reference-powershell.md) |N/A|N/A|
63-
|[Python](functions-reference-python.md#python-version)|GA (Python 3.7)| GA (Python 3.9, 3.8, 3.7)|
64-
|[TypeScript](functions-reference-node.md?tabs=typescript) |GA| GA |
63+
::: zone-end
64+
::: zone pivot="programming-language-powershell"
65+
66+
| Resource | Details |
67+
| --- | --- |
68+
| **Language version support timelines** | [PowerShell Support Lifecycle](/powershell/scripting/powershell-support-lifecycle#powershell-end-of-support-dates)|
69+
| **Configuring language versions** | [Changing the PowerShell version](./functions-reference-python.md#python-version)|
70+
71+
::: zone-end
72+
::: zone pivot="programming-language-python"
73+
74+
| Resource | Details |
75+
| --- | --- |
76+
| **Language version support timelines** | [Python developer's guide](https://devguide.python.org/#status-of-python-branches)|
77+
| **Configuring language versions** | [Changing Python version](functions-reference-python.md#changing-python-version)|
78+
| **Retired runtime versions**<sup>*</sup> | **v2.x**: Python 3.7<br/>**v3.x**: Python 3.9, 3.8, 3.7 |
79+
80+
::: zone-end
81+
<sup>*</sup>Indicates the highest language stack level for no-longer-supported versions of the Functions runtime, such as runtime version 2.x.
82+
::: zone pivot="programming-language-csharp"
83+
<sup>**</sup>.NET 5 was only supported for C# apps running in the [isolated worker model](dotnet-isolated-process-guide.md).
84+
:::zone-end
6585

66-
<sup>*</sup>.NET 5 was only supported for C# apps running in the [isolated worker model](dotnet-isolated-process-guide.md).
6786

6887
For the language levels currently supported by Azure Functions, see [Languages by runtime version](supported-languages.md#languages-by-runtime-version).
6988

70-
## Next steps
89+
## Frequently asked questions
90+
91+
This section provides you with answers to questions that are frequently asked about language support policies.
92+
93+
### Which versions of my preferred language does Functions currently support?
94+
95+
For the up-to-date list of supported language stack versions, see [Supported languages in Azure Functions](supported-languages.md#languages-by-runtime-version).
96+
97+
### How long will Functions continue to support my language version?
98+
99+
Functions support aligns with the end-of-life date published by the community for a given language stack. For the expected end-of-life date of currently supported versions, see [Supported languages in Azure Functions](supported-languages.md#languages-by-runtime-version).
100+
101+
### What happens when my runtime version reaches the end of support?
102+
103+
After a previously supported Functions runtime version reaches its end-of-support, Microsoft no longer provides bug fixes, security updates, or patches. Apps using retired versions may also face performance degradation. You must upgrade to a supported version to maintain security and stability.
104+
105+
### Can I continue to use an unsupported language stack or runtime version?
106+
107+
You can continue to use previously supported language stacks and Functions runtime versions beyond the end-of-support date. However, you must take into account that unsupported runtime versions don't receive updates, security patches, or official support from Microsoft. Your apps might also face performance degradation when using retired runtime versions.
108+
109+
### How do I upgrade my function app to a newer supported language stack or runtime version?
110+
111+
To make sure that your app is compatible with both the latest supported Functions runtime version and the latest version of your language stack, see [Update language stack versions in Azure Functions](update-language-versions.md)
112+
113+
### How do I check which language stack and runtime version is being used by my function app?
114+
115+
Azure provides these methods to check the current runtime version used by your function app:
116+
117+
+ [Using the Azure portal](set-runtime-version.md?tabs=azure-portal#view-the-current-runtime-version)
118+
+ [Using the Azure CLI](set-runtime-version.md?tabs=azure-cli#view-the-current-runtime-version)
119+
+ [Using Azure PowerShell](set-runtime-version.md?tabs=azure-powershell#view-the-current-runtime-version)
120+
121+
The language stack used by your function app is determined based on the value of the `FUNCTIONS_WORKER_RUNTIME` application setting. For more information, see [Work with application settings](functions-how-to-use-azure-function-app-settings.md#settings).
122+
123+
## Related articles
71124

72-
To learn more about how to upgrade your functions apps language versions, see the following resources:
125+
To learn more about how to upgrade your function app's language version, see these articles:
73126

74127

75128
+ [Update language stack versions](./update-language-versions.md)

0 commit comments

Comments
 (0)