Compartilhar via


Comparar versões de runtime do Azure Functions

Azure Functions atualmente dá suporte a duas versões do host de runtime. A tabela a seguir detalha as versões de runtime com suporte no momento, seu nível de suporte e quando usá-las:

Versão Nível de suporte Descrição
4.x GA Versão de runtime recomendada para funções em todos os idiomas. Confira as versões de idioma com suporte.
1.x GA* Com suporte apenas para aplicativos C# que devem usar .NET Framework. Esta versão está no modo de manutenção, com aprimoramentos fornecidos somente em versões posteriores. O suporte termina para a versão 1.x em 14 de setembro de 2026.Migre seus aplicativos para a versão 4.x. Para obter mais informações, consulte versões de idioma com suporte.

* O suporte termina em 14 de setembro de 2026. Para obter mais informações, consulte o comunicado de suporte da versão 1.x.

Azure Functions atualmente dá suporte apenas à versão 4.x do host de runtime.

Importante

As versões 2.x e 3.x do Azure Functions runtime não têm mais suporte. Para saber mais, confira Versões desativadas.

Importante

Os Aplicativos de Função ainda executando o runtime de fim de vida v3 no Linux em um plano de consumo pararão de funcionar após 30 de setembro de 2026. Para evitar a interrupção do serviço, migre seu aplicativo para o runtime v4.

A opção de hospedar aplicativos de funções no Linux em um plano de consumo será desativada em 30 de setembro de 2028. O plano de consumo do Linux não está recebendo novos recursos ou versões de idioma. Os aplicativos em execução em Windows em um plano de consumo não são afetados no momento. Migre seus aplicativos para o plano de Consumo Flex antes da data de aposentadoria.

Migrar aplicativos do Azure Functions versão 3.x para versão 4.x.

Níveis de suporte

Há dois níveis de suporte:

  • Geralmente disponível (GA) – com suporte total e aprovado para uso em produção.
  • Versão prévia: ainda não tem suporte, mas espera-se que alcance o status de GA no futuro.

Languages

Todas as funções em um aplicativo de funções devem compartilhar a mesma linguagem de programação. Escolha o idioma das funções em seu aplicativo de funções ao criar o aplicativo. O idioma do seu aplicativo de funções é mantido na configuração FUNCTIONS_WORKER_RUNTIME e não pode ser alterado quando há funções existentes.

Selecione seu idioma de desenvolvimento preferido na parte superior do artigo.

A tabela a seguir mostra as versões .NET compatíveis com Azure Functions.

A versão com suporte do .NET depende da versão do runtime do Functions e do modelo de execução selecionado.

O código do aplicativo de funções é executado em um processo de trabalho .NET separado. Use com versões suportadas de .NET e .NET Framework. Para obter mais informações, consulte Guide para executar Azure Functions C# no modelo de trabalho isolado.

Versão com suporte Nível de suporte Data de fim do suporte esperada
.NET 10 GA 14 de novembro de 2028
.NET 9 GA 10 de novembro de 20261
.NET 8 GA 10 de novembro de 2026
.NET Framework 4.8.1 GA Consulte .NET Framework Support Policy

1 .NET 9 anteriormente tinha uma data de fim de suporte esperada para 12 de maio de 2026. Durante a janela de serviço do .NET 9, a equipe do .NET estendeu o suporte para versões STS para 24 meses, começando com o .NET 9. Para obter mais informações, consulte a postagem no blog.

Observação

.NET 9 é a última versão .NET com suporte para aplicativos de plano de consumo do Linux. Versões de .NET mais recentes não são adicionadas ao Consumo do Linux. Para obter mais informações, consulte Migrar aplicativos de plano de consumo para o plano de Consumo Flexível.

.NET 6 chegou ao fim do suporte oficial em 12 de novembro de 2024.

.NET 7 chegou ao fim do suporte oficial em May 14, 2024.

Para obter mais informações, consulte Guide para executar Azure Functions C# no modelo de trabalho isolado.

A tabela a seguir mostra as versões de idioma com suporte para aplicativos de funções Java:

Versão com suporte Nível de suporte Com suporte até
Java 25 Preview Pendente*
Java 21 GA Consulte o roteiro de liberação e manutenção
Java 17 GA Consulte o roteiro de liberação e manutenção
Java 11 GA Consulte o roteiro de liberação e manutenção
Java 8 GA Consulte a página de suporte do Temurin

*A data de fim do suporte para Java 25 é determinada quando a GA (disponibilidade geral) é declarada.

Observação

Java 21 é a última versão Java com suporte para aplicativos do plano de consumo do Linux. Versões mais recentes do Java não são adicionadas ao Plano de Consumo do Linux. Para obter mais informações, consulte Migrar aplicativos de plano de consumo para o plano de Consumo Flexível.

Para obter mais informações sobre como desenvolver e executar aplicativos de funções Java, consulte Azure Functions Java guia do desenvolvedor.

A tabela a seguir mostra as versões com suporte para aplicativos de função Node.js:

Versão com suporte Nível de suporte Data de fim do suporte esperada
Node.js 24 Preview 30 de abril de 2028
Node.js 22 GA 30 de abril de 2027
Node.js 20 GA 30 de abril de 2026

TypeScript tem suporte por meio de transposição para JavaScript. Para obter mais informações, consulte Azure Functions Node.js guia do desenvolvedor.

Observação

Node.js 22 é a última versão Node.js com suporte para aplicativos de plano de consumo do Linux. Versões mais recentes do Node.js não são adicionadas ao plano de Consumo do Linux. Para obter mais informações, consulte Migrar aplicativos de plano de consumo para o plano de Consumo Flexível.

A tabela a seguir mostra a versão com suporte para aplicativos de função PowerShell:

Versão com suporte Nível de suporte Data de fim do suporte esperada
PowerShell 7.4 GA 10 de novembro de 2026

Observação

O PowerShell 7.4 é a última versão do PowerShell com suporte para aplicativos de plano de consumo do Linux. Versões mais recentes do PowerShell não são adicionadas ao Ambiente de Consumo do Linux. Para obter mais informações, consulte Migrar aplicativos de plano de consumo para o plano de Consumo Flexível.

Para obter mais informações, consulte Azure Functions guia do desenvolvedor do PowerShell.

A tabela a seguir mostra as versões de idioma com suporte para aplicativos de funções Python:

Versão com suporte Nível de suporte Data de fim do suporte esperada
Python 3.142 Preview Pendente1
Python 3.13 GA outubro de 2029
Python 3.12 GA Outubro de 2028
Python 3.11 GA Outubro de 2027
Python 3.10 GA Outubro de 2026

1 A data de fim do suporte para Python 3.14 é determinada quando a GA (disponibilidade geral) é declarada. 2 O suporte para compilação remota no Python 3.14 ainda não está disponível quando executado em um plano de consumo Flex.

Observação

Python 3.12 é a última versão Python com suporte para aplicativos de plano de consumo do Linux. Versões de Python mais recentes não são adicionadas ao Consumo do Linux. Para obter mais informações, consulte Migrar aplicativos de plano de consumo para o plano de Consumo Flexível.

Para obter mais informações, consulte Azure Functions Python guia do desenvolvedor.

Para obter informações sobre alterações planejadas no suporte ao idioma, consulte as atualizações de roteiro Azure.

Para saber mais sobre versões de idioma de versões de runtime do Functions com suporte anterior, confira Versões de runtime desativadas.

Executar em uma versão específica

A configuração do aplicativo FUNCTIONS_EXTENSION_VERSION determina a versão do runtime do Functions que os aplicativos publicados usam no Azure. Em alguns casos e em determinados idiomas, outras configurações podem se aplicar.

Por padrão, os aplicativos de funções criados no portal do Azure, pelo CLI do Azure ou pelas ferramentas do Visual Studio são configurados para a versão 4.x. É possível modificar essa versão se necessário. Só é possível fazer downgrade da versão de runtime para a 1.x depois de criar seu aplicativo de funções, mas antes de adicionar quaisquer funções. Você pode atualizar para uma versão principal posterior mesmo com aplicativos que têm funções existentes.

Migrar aplicativos de funções existentes

Quando seu aplicativo tiver funções existentes, você deverá tomar precauções antes de mudar para uma versão principal de runtime posterior. Os artigos a seguir detalham as alterações interruptivas entre as versões principais, incluindo alterações interruptivas específicas da linguagem. Eles também fornecem instruções passo a passo para uma migração bem-sucedida do seu aplicativo de funções existente.

Alterar a versão dos aplicativos no Azure

Os seguintes valores de versão de runtime principal são usados:

Valor Destino de runtime
~4 4.x
~1 1.x

Importante

Não altere essa configuração de aplicativo arbitrariamente, pois podem ser necessárias outras alterações de configuração de aplicativo e alterações em seu código de função. Para aplicativos de funções existentes, siga as instruções de migração.

Fixar em uma versão secundária específica

Para resolver problemas que seu aplicativo de funções pode ter ao executar na versão principal mais recente, você deve fixar temporariamente seu aplicativo em uma versão secundária específica. A fixação proporciona tempo para que seu aplicativo seja executado corretamente na versão principal mais recente. A maneira como você fixa uma versão secundária difere entre Windows e Linux. Para saber mais, consulte Como direcionar versões de runtime do Azure Functions.

Versões secundárias mais antigas são removidas periodicamente do Functions. Para obter as últimas notícias sobre lançamentos de versões do Azure Functions, incluindo a remoção de versões secundárias mais antigas e específicas, monitore os anúncios do Serviço de Aplicativo do Azure.

Versões de extensão mínimas

Tecnicamente, não há uma correlação entre as versões de extensão de associação e a versão de runtime do Functions. No entanto, a partir da versão 4.x, o runtime do Functions impõe uma versão mínima para todas as extensões de gatilho e associação.

Se receber um aviso sobre um pacote não atender a uma versão mínima necessária, você deverá atualizar esse pacote NuGet para a versão mínima como faria normalmente. Encontre os requisitos mínimos de versão para extensões usadas no Functions v4.x em o arquivo de configuração vinculado.

Para script C#, atualize a referência do pacote de extensão no host.json:

{
    "version": "2.0",
    "extensionBundle": {
        "id": "Microsoft.Azure.Functions.ExtensionBundle",
        "version": "[4.0.0, 5.0.0)"
    }
}

Tecnicamente, não há uma correlação entre as versões de extensão de pacote e a versão de runtime do Functions. No entanto, a partir da versão 4.x, o runtime do Functions impõe uma versão mínima para pacotes de extensão.

Se você receber um aviso sobre a versão do pacote de extensão não atender a uma versão mínima necessária, atualize sua referência de pacote de extensão existente no host.json da seguinte maneira:

{
    "version": "2.0",
    "extensionBundle": {
        "id": "Microsoft.Azure.Functions.ExtensionBundle",
        "version": "[4.0.0, 5.0.0)"
    }
}

Para saber mais sobre pacotes de extensão, consulte pacotes de extensão.

Versões desativadas

Essas versões do runtime do Functions chegaram ao fim do suporte estendido em 13 de dezembro de 2022.

Versão Nível de suporte atual Nível de suporte anterior
3.x Sem suporte GA
2. x Sem suporte GA

Migre seus aplicativos para a versão 4.x o mais rápido possível para obter suporte completo. Para obter um conjunto completo de instruções de migração específicas do idioma, consulte Migrar aplicações para Azure Functions versão 4.x.

Os aplicativos que usam as versões 2.x e 3.x ainda podem ser criados e implantados a partir do pipeline ci/CD DevOps, e os aplicativos existentes continuam a ser executados sem alterações significativas, exceto para aplicativos v3 no Consumo do Linux, que deixarão de ser executados após 30 de setembro de 2026. Seus aplicativos não são qualificados para novos recursos, patches de segurança e otimizações de desempenho. Você só pode obter suporte ao serviço relacionado depois de atualizar os aplicativos para a versão 4.x.

Versões do aplicativo desenvolvidas localmente

Faça as seguintes atualizações nos aplicativos de funções para alterar localmente as versões de destino.

Versões de runtime do Visual Studio

Em Visual Studio, você seleciona a versão de runtime ao criar um projeto. Ferramentas do Azure Functions para Visual Studio dão suporte às duas principais versões de tempo de execução. A versão correta é usada ao depurar e publicar com base nas configurações do projeto. As configurações de versão são definidas no arquivo .csproj nas seguintes propriedades:

<TargetFramework>net8.0</TargetFramework>
<AzureFunctionsVersion>v4</AzureFunctionsVersion>

Se você estiver usando o modelo de trabalho isolado, poderá escolher, net9.0ou net8.0net48 como a estrutura de destino. Você também pode optar por usar o suporte de visualização para net10.0. Se você estiver usando o modelo in-process, poderá escolher net8.0 ou net6.0 e deve incluir a extensão Microsoft.NET.Sdk.Functions definida como pelo menos 4.4.0. .NET 10 não é compatível com o modelo em processo; se você estiver no modelo em processo e desejar usar .NET 10, migrate seu aplicativo para o modelo de trabalho isolado.

.NET 6 tinha suporte anteriormente no modelo de trabalho isolado e no modelo em processo, mas chegou ao fim do suporte oficial em 12 de novembro de 2024.

.NET 7 era anteriormente suportado no modelo de trabalhador isolado, mas chegou ao fim do suporte oficial em 14 de maio de 2024.

ferramentas principais Visual Studio Code e Azure Functions

Azure Functions Core Tools é usado para desenvolvimento de linha de comando e também pela extensão Azure Functions para Visual Studio Code. Para obter mais informações, consulte Instale o Azure Functions Core Tools.

Para o desenvolvimento no Visual Studio Code, talvez você também precise atualizar a configuração do usuário para que o azureFunctions.projectRuntime corresponda à versão das ferramentas instaladas. Essa configuração também atualiza os modelos e linguagens utilizados durante a criação do aplicativo de funções.