Compartilhar via


Comparar versões de tempo de execução 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.

Migrar aplicativos da 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 as versões com suporte do .NET e do .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 as 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 mais recentes do .NET não são adicionadas ao Linux Consumption. 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. As versões mais recentes do Java não são adicionadas ao Consumo em 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 de build remoto para Python 3.14 ainda não se encontra disponível quando executado em um plano de Consumo Flexível.

Observação

Python 3.12 é a última versão Python com suporte para aplicativos de plano de consumo do Linux. As versões mais recentes do Python não são adicionadas ao Consumo em 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, pela CLI do Azure ou pelas ferramentas do Visual Studio estã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 fixação de uma versão secundária é diferente entre o Windows e o 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 os lançamentos das versões do Azure Functions, incluindo a remoção de versões secundárias mais antigas 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 instruções completas de migração específicas da linguagem, consulte Migrar aplicativos para o Azure Functions versão 4.x.

Os aplicativos usando versões 2.x e 3.x ainda podem ser criados e implantados a partir do pipeline de DevOps de CI/CD, e todos os aplicativos existentes continuam sendo executados sem alterações interruptivas. Mas 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.

As versões 2.x e 3.x não têm mais suporte porque .NET Core 3.1, uma dependência principal, atingiu o fim do suporte. Esse requisito afeta todos os languages compatíveis com Azure Functions.

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. As ferramentas do Azure Functions para Visual Studio suportam as 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 tinha suporte anteriormente no modelo de trabalho 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 ajustar a configuração do usuário do azureFunctions.projectRuntime para corresponder à 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.