{
  "slug": "azure-app-service-python-on-windows-retirement",
  "title": "Azure App Service and Azure Functions: Python on Windows retirement",
  "summary": "From 31 Mar 2027, Python applications hosted on Azure App Service on Windows and Azure Functions on Windows no longer run. Microsoft supports Python on the Linux versions of both services.",
  "cloud": "azure",
  "service": "Azure App Service",
  "service_slug": "app-service",
  "category": "runtime",
  "type": "retirement",
  "announced_date": "2026-04-02",
  "effective_date": "2027-03-31",
  "effective_precision": "day",
  "impact": "From 31 Mar 2027, Python applications hosted on Azure App Service on Windows and Azure Functions on Windows no longer run. After that date, application configuration and content remain intact, but the apps stop running and technical support for these workloads is no longer available. Microsoft states that Python on App Service for Windows has not been supported since December 2021 and that this change formally retires the runtime.",
  "migration_path": "1. Create a new Linux based application on Azure App Service on Linux or Azure Functions on Linux.\n2. Redeploy your Python workloads to the Linux application before the retirement date.",
  "replacement": "Azure App Service on Linux and Azure Functions on Linux",
  "affected_versions": [],
  "source_url": "https://azure.microsoft.com/updates?id=558027",
  "extra_source_urls": [],
  "vendor_ref": "558027",
  "last_checked_at": "2026-11-12T09:55:19.345Z",
  "created_at": "2026-11-13T13:36:44.208Z",
  "updated_at": "2026-11-13T13:36:44.208Z",
  "url": "https://eolwatch.dev/items/azure-app-service-python-on-windows-retirement",
  "short_url": "https://eolwatch.dev/i/56",
  "markdown_url": "https://eolwatch.dev/items/azure-app-service-python-on-windows-retirement.md",
  "json_url": "https://eolwatch.dev/items/azure-app-service-python-on-windows-retirement.json",
  "estate_check": {
    "resource_types": [
      "azurerm_windows_web_app"
    ],
    "fields": [
      "site_config.application_stack.current_stack"
    ],
    "inputs": [
      "Terraform state or plan (JSON)"
    ]
  }
}
