Partilhar via


Compare versões de runtime do Funções do Azure

Atualmente, o Funções do Azure suporta duas versões do host em tempo de execução. A tabela seguinte detalha as versões de runtime atualmente suportadas, o seu nível de suporte e quando as deve usar:

Versão Nível de suporte Descrição
4.x disponibilidade geral Versão de tempo de execução recomendada para funções em todos os idiomas.Consulte Versões linguísticas suportadas.
1,x GA* Suportado apenas para aplicações C# que têm de usar o .NET Framework. Esta versão está em modo de manutenção, com melhorias fornecidas apenas em versões posteriores. O suporte para a versão 1.x termina a 14 de setembro de 2026.Migre as suas aplicações para a versão 4.x. Para mais informações, consulte versões linguísticas suportadas.

* O suporte termina a 14 de setembro de 2026. Para mais informações, consulte o anúncio de suporte à versão 1.x.

O Funções do Azure atualmente suporta apenas a versão 4.x do host de runtime.

Importante

As versões 2.x e 3.x do runtime do Funções do Azure já não são suportadas. Para obter mais informações, consulte Versões desativadas.

Migrar aplicações da versão Funções do Azure 3.x para a versão 4.x.

Níveis de apoio

Existem dois níveis de apoio:

  • Geralmente disponível (GA) - Totalmente suportado e aprovado para uso em produção.
  • Pré-visualização - Ainda não é suportada, mas espera-se que alcance o estado de Disponibilidade Geral no futuro.

Idiomas

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

Certifique-se de selecionar sua linguagem de desenvolvimento preferida na parte superior do artigo.

A tabela seguinte mostra as versões .NET suportadas pelo Funções do Azure.

A versão suportada do .NET depende tanto da versão de runtime das Funções como do modelo de execução selecionado.

O código da tua aplicação de funções corre num processo de trabalho .NET separado. Use com versões suportadas de .NET e .NET Framework. Para mais informações, consulte Guia para executar C# Funções do Azure no modelo de trabalhador isolado.

Versão suportada Nível de suporte Data prevista para o fim do suporte
.NET 10 disponibilidade geral 14 de novembro de 2028
.NET 9 disponibilidade geral novembro 10, 20261
.NET 8 disponibilidade geral 10 de novembro de 2026
.NET Framework 4.8.1 disponibilidade geral Ver .NET Framework Política de Suporte

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

Observação

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

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

O .NET 7 chegou ao fim do apoio oficial em 14 de maio de 2024.

Para mais informações, consulte Guia para executar C# Funções do Azure no modelo de trabalhador isolado.

A tabela seguinte mostra as versões da linguagem suportadas para aplicações de funções Java:

Versão suportada Nível de suporte Supported until: Suportado até:
Java 25 Preview Pendente*
Java 21 disponibilidade geral Ver roteiro de lançamento e manutenção
Java 17 disponibilidade geral Ver roteiro de lançamento e manutenção
Java 11 disponibilidade geral Ver roteiro de lançamento e manutenção
Java 8 disponibilidade geral Consulte a página de suporte do Temurin

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

Observação

Java 21 é a última versão em Java suportada para aplicações do plano Linux Consumption. As versões mais recentes do Java não são adicionadas à Plataforma de Consumo do Linux. Para obter mais informações, consulte Migrar aplicativos do plano de consumo para o plano Flex Consumption.

Para mais informações sobre o desenvolvimento e execução de aplicações Java funções, consulte Funções do Azure Java developer guide.

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

Versão suportada Nível de suporte Data prevista para o fim do suporte
24Node.js Preview 30 de abril de 2028
22Node.js disponibilidade geral 30 de abril de 2027
20Node.js disponibilidade geral 30 de abril de 2026

TypeScript é suportado através de transpilação para JavaScript. Para mais informações, consulte Funções do Azure Node.js guia para desenvolvedores.

Observação

O Node.js 22 é a última versão Node.js suportada para aplicações do plano Linux Consumption. Versões Node.js mais recentes não são adicionadas ao Linux Consumption. Para obter mais informações, consulte Migrar aplicativos do plano de consumo para o plano Flex Consumption.

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

Versão suportada Nível de suporte Data prevista para o fim do suporte
PowerShell 7.4 disponibilidade geral 10 de novembro de 2026

Observação

O PowerShell 7.4 é a última versão do PowerShell suportada para aplicações do plano Linux Consumption. Versões mais recentes do PowerShell não são adicionadas ao Linux Consumption. Para obter mais informações, consulte Migrar aplicativos do plano de consumo para o plano Flex Consumption.

Para mais informações, consulte Funções do Azure PowerShell developer guide.

A tabela seguinte mostra as versões da linguagem suportadas para aplicações de funções Python:

Versão suportada Nível de suporte Data prevista para o fim do suporte
Python 3.142 Preview Pendente 1
Python 3.13 disponibilidade geral Outubro de 2029
Python 3.12 disponibilidade geral Outubro de 2028
Python 3.11 disponibilidade geral Outubro de 2027
Python 3.10 disponibilidade geral Outubro de 2026

1 A data de fim de apoio para Python 3.14 é determinada quando é declarada disponibilidade geral (GA). 2 O suporte remoto para compilações Python 3.14 ainda não está disponível quando se executa num plano Flex Consumption.

Observação

Python 3.12 é a última versão de Python suportada para aplicações do plano de consumo do Linux. Versões mais recentes de Python não são adicionadas ao modo de consumo no Linux. Para obter mais informações, consulte Migrar aplicativos do plano de consumo para o plano Flex Consumption.

Para mais informações, consulte Funções do Azure Python guia para desenvolvedores.

Para informações sobre alterações planeadas ao suporte de línguas, consulte as atualizações do roteiro Azure.

Para informações sobre versões linguísticas das versões de runtime das Funções anteriormente suportadas, veja Versões de runtime retiradas.

Executar em uma versão específica

A definição de aplicação FUNCTIONS_EXTENSION_VERSION determina a versão do runtime de Funções que as aplicações publicadas usam em Azure. Em alguns casos e para certas línguas, podem aplicar-se outras configurações.

Por defeito, as aplicações de funções criadas no portal do Azure, pela CLI do Azure ou pelas ferramentas do Visual Studio estão definidas para a versão 4.x. Você pode modificar esta versão, se necessário. Você só pode fazer o downgrade da versão de tempo de execução para 1.x depois de criar seu aplicativo de função, mas antes de adicionar quaisquer funções. Podes atualizar para uma versão maior posterior mesmo com aplicações que já tenham funções.

Migrar aplicações funcionais existentes

Quando seu aplicativo tiver funções existentes, você deve tomar precauções antes de passar para uma versão de tempo de execução principal posterior. Os artigos a seguir detalham as alterações disruptivas entre as versões principais, incluindo modificações significativas específicas à linguagem. Eles também fornecem instruções passo a passo para uma migração bem-sucedida do seu aplicativo de função existente.

Alterar a versão das aplicações no Azure

Os seguintes valores principais de versão de tempo de execução são usados:

Valor Alvo de tempo de execução
~4 4.x
~1 1,x

Importante

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

Fixar numa versão menor específica

Para resolver problemas que seu aplicativo de função poderia ter ao ser executado na versão principal mais recente, você deve fixar temporariamente seu aplicativo em uma versão secundária específica. A anexação dá-lhe tempo para a sua aplicação ser executada corretamente na versão principal mais recente. A forma como fixas uma versão menor difere entre Windows e Linux. Para saber mais, veja Como direcionar as versões em tempo de execução do Funções do Azure.

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

Versões de extensão mínima

Tecnicamente, não há uma correlação entre as versões das extensões de vinculação e a versão de tempo de execução do Functions. No entanto, a partir da versão 4.x, o runtime das Funções impõe uma versão mínima para todas as extensões de trigger e binding.

Se você receber um aviso sobre um pacote que não atende a uma versão mínima necessária, atualize esse pacote NuGet para a versão mínima como faria normalmente. Encontre os requisitos mínimos de versão para extensões usadas nas Funções v4.x em o ficheiro de configuração ligado.

Para o script C#, atualize a referência do bundle de extensões 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 do pacote de extensão e a versão de tempo de execução do Functions. No entanto, a partir da versão 4.x, o runtime de Funções impõe uma versão mínima para pacotes de extensão.

Se você receber um aviso sobre sua 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

Importante

O suporte terminará para a versão 1.x do runtime Funções do Azure a 14 de setembro de 2026. É altamente recomendável que você migre seus aplicativos para a versão 4.x para obter suporte completo.

Estas versões do tempo de execução das Funções atingiram o fim do suporte estendido a 13 de dezembro de 2022.

Versão Nível de suporte atual Nível de suporte anterior
3.x Sem apoio disponibilidade geral
2,x Sem apoio disponibilidade geral

Migre as suas aplicações para a versão 4.x o mais rápido possível para obter suporte total. Para um conjunto completo de instruções de migração específicas da língua, veja Migrar aplicações para Funções do Azure 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 seu pipeline de DevOps de CI/CD, e todos os aplicativos existentes continuam a ser executados sem alterações ininterruptas. Mas as suas aplicações não são elegíveis para novas funcionalidades, patches de segurança e otimizações de desempenho. Você só pode obter suporte de serviço relacionado depois de atualizar seus aplicativos para a versão 4.x.

As versões 2.x e 3.x já não são suportadas porque o .NET Core 3.1, uma dependência do núcleo, atingiu o fim do suporte. Este requisito afeta todas as linguagens suportadas por Funções do Azure.

Versões de aplicativos desenvolvidas localmente

Faça as seguintes atualizações nas aplicações funcionais para alterar localmente as versões alvo.

Versões de runtime do Visual Studio

No Visual Studio, selecionas a versão em tempo de execução quando crias um projeto. As ferramentas Funções do Azure para Visual Studio suportam as duas principais versões de runtime. A versão correta é usada durante a depuração e publicação 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 estiveres a usar o modelo de trabalhador isolado , podes escolher net9.0, net8.0ou net48 como estrutura-alvo. Também pode optar por utilizar suporte para pré-visualização para net10.0. Se estiver a usar o modelo in-process, pode escolher net8.0 ou net6.0, e deve incluir a extensão Microsoft.NET.Sdk.Functions definida para pelo menos 4.4.0. .NET 10 não é suportado pelo modelo em processo; se estiver no modelo em processo e quiser usar .NET 10, migre a sua aplicação para o modelo de trabalhador isolado.

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

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

Visual Studio Code e Funções do Azure Core Tools

Funções do Azure Core Tools é usado para desenvolvimento de linha de comandos e também pela extensão Funções do Azure para Visual Studio Code. Para mais informações, consulte Install the Funções do Azure Core Tools.

Para o desenvolvimento no Visual Studio Code, pode ser necessário também atualizar as configurações do utilizador para o azureFunctions.projectRuntime para corresponder à versão das ferramentas instaladas. Essa configuração também atualiza os modelos e idiomas usados durante a criação do aplicativo de função.