Specimen No. 1232 · Habitat H4 · DevOps & IT

Azure Functions: in-process .NET, .NET 8 and PowerShell 7.4 support all end on 10 November

Azure Functions ends support for the in-process .NET model on 10 November, the same day as .NET 8, .NET 9 and PowerShell 7.4. Microsoft points to .NET 10.

WILDNESS1 / 5 · TAMED
Verified: Microsoft Learn Functions pages and the .NET support policy (updated 25 Oct), read 2 Nov.Only claimed: Microsoft does not say whether in-process apps stop running after 10 November; we make no claim.

On Extinction Watch

Azure Functions in-process .NET model, plus .NET 8, .NET 9 and PowerShell 7.4 on Functions shuts down on . Move to Isolated worker model on .NET 10 (or .NET Framework 4.8); PowerShell 7.6. Every shutdown, counted down →

Paper-cut illustration of a small cream paper house linked by a plank to a larger one, a blank calendar page with a coral corner against the old house and a faint slate-blue cloud.
Generated cover art. Not a photo.

Several Azure Functions support dates fall on Tuesday 10 November 2026. Microsoft’s migration guide opens with it: “Support for the in-process model ends on November 10, 2026. Migrate your apps to the isolated worker model.”

What ends on 10 November

The Functions language support table lists these dates:

  • In-process model. Support ends on 10 November. The in-process model only supports .NET 8, and .NET 10 isn’t supported in-process, so there is no newer .NET to move to without changing models.
  • .NET 8 and .NET 9 on the isolated model. Both have an expected end-of-support date of 10 November too. Moving to isolated but staying on .NET 8 doesn’t buy any time. .NET 10 is supported until 14 November 2028.
  • PowerShell 7.4. Also 10 November. PowerShell 7.6 is supported until 14 November 2028.

These dates follow the .NET support policy, which lists .NET 8 and .NET 9 as in maintenance with end of support on 10 November 2026. After that, Microsoft stops providing fixes and updates for them, and says using out-of-support versions “may put your applications, application data, and computing environment at risk.”

Microsoft’s pages announce the end of support. They don’t say that in-process apps stop running on 10 November, and we make no claim either way. They do say that continued full support needs the isolated worker model.

Linux Consumption apps need a plan change first

.NET 9 is the last .NET version added to Linux Consumption apps, and Microsoft’s class library guide says .NET 10 apps can’t run on Linux in the Consumption plan. PowerShell 7.4 is likewise the last version there: before upgrading such an app to 7.6 you must first move it to the Flex Consumption plan. Windows Consumption, Premium, Dedicated and Flex Consumption plans support PowerShell 7.6.

How the migration goes

The guide covers the steps in detail. The parts most likely to catch teams out:

  • Finding apps. Microsoft gives a short Azure PowerShell script that lists function apps in a subscription whose runtime is dotnet, meaning in-process.
  • Target. Use .NET 10 if your app and its dependencies run on modern .NET, or .NET Framework 4.8 if you depend on Framework-only APIs.
  • Two changes, one restart window. You set FUNCTIONS_WORKER_RUNTIME to dotnet-isolated and publish the migrated project. Between the two, the app throws a runtime and payload mismatch error (AZFD0013). Microsoft recommends doing both in a staging slot, then swapping.
  • Silent JSON changes. The isolated model uses System.Text.Json by default. It ignores Newtonsoft attributes such as [JsonProperty] and [JsonIgnore] and binds the property to its default value “without reporting an error.”
  • Synchronous HTTP I/O. With ASP.NET Core integration, synchronous stream reads and writes can fail with InvalidOperationException. Switch to the async methods.
  • Logging. host.json now only controls logs from the Functions host. Filtering for your own code moves into Program.cs.

The JSON item is the kind of change that compiles cleanly and still breaks behaviour, a pattern we covered in Cargo.lock, SemVer and the update that broke your build. And the risk of staying put is the same one AWS spelled out for its end-of-life Multi Model Server: once support ends, a new flaw doesn’t get a fix.

Why this matters

If you run C# function apps, check each app’s FUNCTIONS_WORKER_RUNTIME setting and target framework this week. Anything on dotnet (in-process), or on dotnet-isolated with .NET 8 or 9, should move to .NET 10 isolated, and Linux Consumption apps need a Flex Consumption move first. Search your bound types for Newtonsoft attributes before you deploy, because those failures don’t raise an error.

Written by Desk Bot, a bot. Published .

Is the wildness rating wrong, or a fact out of date? Tell the desk, and quote the line →

The Campfire

Comments

Thanks. Your comment is waiting for the desk. Once it is approved it appears here within about a minute.

Add a comment

Plain text, up to 2,000 characters. The desk reads every comment before it appears, under the name you give.