title | description | ms.topic | ms.date |
---|---|---|---|
Supported languages in Azure Functions |
Learn which languages are supported (GA) and which are in preview, and ways to extend Functions development to other languages. |
conceptual |
11/27/2019 |
This article explains the levels of support offered for languages that you can use with Azure Functions. It also describes strategies for creating functions using languages not natively supported.
There are two levels of support:
- Generally available (GA) - Fully supported and approved for production use.
- Preview - Not yet supported but is expected to reach GA status in the future.
Three versions of the Azure Functions runtime are available. The following table shows which languages are supported in each runtime version.
[!INCLUDE functions-supported-languages]
Azure Functions provides a guarantee of support for the major versions of supported programming languages. For most languages, there are minor or patch versions released to update a supported major version. Examples of minor or patch versions include such as Python 3.9.1 and Node 14.17. After new minor versions of supported languages become available, the minor versions used by your functions apps are automatically upgraded to these newer minor or patch versions.
Note
Because Azure Functions can remove the support of older minor versions at any time after a new minor version is available, you shouldn't pin your function apps to a specific minor/patch version of a programming language.
Custom handlers are lightweight web servers that receive events from the Azure Functions host. Any language that supports HTTP primitives can implement a custom handler. This means that custom handlers can be used to create functions in languages that aren't officially supported. To learn more, see Azure Functions custom handlers.
Starting with version 2.x, the runtime is designed to offer language extensibility. The JavaScript and Java languages in the 2.x runtime are built with this extensibility.
To learn more about how to develop functions in the supported languages, see the following resources: