---
title: "Changelog | Netlify"
description: "Stay updated with the latest features, fixes, and improvements. Realize the speed, agility and performance of a scalable, composable web architecture with Netlify. Explore the composable web platform now!"
source: "https://www.netlify.com/changelog/page/10/"
last_updated: "2026-07-02T20:43:52.000Z"
---
# Changelog

All Tags Agent-runners AI Ai-gateway Angular Astro AX Build CLI Database Design Devtools Domains E-commerce Extensions Forms Framework Functions Logs Next.js Nuxt.js Remix SDK Security Updates Workflow  [Subscribe to feed](https://www.netlify.com/changelog/feed.xml)

-   [
    
    ## Claude Opus 4.5 now live in AI Gateway, plus latest Claude Code via Agent Runners
    
    ](/changelog/claude-opus-4-5-ai-gateway-agent-runners/)
    
    November 24, 2025
    
    -   [ai gateway](/changelog/tag/ai-gateway/)
    -   [agent runners](/changelog/tag/agent-runners/)
    
    Anthropic’s Claude Opus 4.5 model is now available through Netlify’s AI Gateway with zero configuration required.
    
    Use the Anthropic SDK directly in your Netlify Functions without managing API keys or authentication. The AI Gateway handles everything automatically. Here’s an example using the Claude Opus 4.5 model:
    
    ```
    import Anthropic from "@anthropic-ai/sdk";
    export default async () => {  const anthropic = new Anthropic();
      const response = await anthropic.messages.create({    model: "claude-opus-4-5-20251101",    max_tokens: 4096,    messages: [      {        role: "user",        content: "Give me pros and cons of using claude-opus-4-5-20251120 over other models."      },    ],  });
      return new Response(JSON.stringify(response), {    headers: { "Content-Type": "application/json" }  });}
    ```
    
    Claude Opus 4.5 is available across Background Functions, Scheduled Functions, and Edge Functions. You get automatic access to Netlify’s caching, rate limiting, and authentication infrastructure.
    
    Learn more in the [AI Gateway documentation](https://docs.netlify.com/build/ai-gateway/overview/).
    
    You can also access the newest Claude Code capabilities via Agent Runners, including expanded tool use and support for long-running agent workflows. Learn more in the [Agent runner documentation](https://docs.netlify.com/build/agent-runners/).
    
    [Permalink to Claude Opus 4.5 now live in AI Gateway, plus latest Claude Code via Agent Runners Permalink](/changelog/claude-opus-4-5-ai-gateway-agent-runners/)
    
-   [
    
    ## Projects deployed using a zip file via API now support branch deploys
    
    ](/changelog/2025-11-21-deploy-with-zip-file-supports-branch-deploys/)
    
    November 21, 2025
    
    -   [build](/changelog/tag/build/)
    
    When you deploy a project using a ZIP file and the Netlify API, you can now also create branch deploys using the new `branch` parameter.
    
    While it was always possible to pass a `branch` parameter to the `https://api.netlify.com/api/v1/sites/{site_id}/builds` endpoint, it previously had no effect for deploys made programmatically using the API. Now, when creating a ZIP-based deploy via the API, including the `branch` parameter will properly create a branch deploy instead of a production deploy.
    
    This means teams using ZIP-based workflows through our API can now take full advantage of Netlify’s branch deploy features like preview URLs, and isolated testing environments for different branches.
    
    To create a branch deploy for a ZIP-based site, simply include the `branch` parameter in your API request:
    
    ```
    curl -X POST \  -H "Authorization: Bearer YOUR_TOKEN" \  -F "zip=@your-site.zip" \  -F "branch=feature-branch" \  https://api.netlify.com/api/v1/sites/{site_id}/builds
    ```
    
    Learn more about the [Netlify API builds endpoint](https://open-api.netlify.com/#tag/build/operation/createSiteBuild) in the documentation.
    
    [Permalink to Projects deployed using a zip file via API now support branch deploys Permalink](/changelog/2025-11-21-deploy-with-zip-file-supports-branch-deploys/)
    
-   [
    
    ## Angular v21 is now supported
    
    ](/changelog/2025-11-20-support-for-angular-v21/)
    
    November 20, 2025
    
    -   [framework](/changelog/tag/framework/)
    -   [angular](/changelog/tag/angular/)
    
    Angular v21 [was released today](https://blog.angular.dev/announcing-angular-v21-57946c34f14b) and it is supported on Netlify on day one.
    
    To upgrade, follow the [Angular upgrade steps](https://angular.dev/update-guide?v=20.0-21.0&l=1) and update `@netlify/angular-runtime` to v3.0.1 or later.
    
    Learn more:
    
    -   [Angular v21 Release](https://angular.dev/events/v21)
    -   [Angular on Netlify](https://docs.netlify.com/build/frameworks/framework-setup-guides/angular/)
    -   [Angular Runtime](https://github.com/netlify/angular-runtime)
    
    [Permalink to Angular v21 is now supported Permalink](/changelog/2025-11-20-support-for-angular-v21/)
    
-   [
    
    ## Gemini 3 now available in AI Gateway and Agent Runners
    
    ](/changelog/gemini-3-ai-gateway-agent-runners/)
    
    November 18, 2025
    
    -   [ai gateway](/changelog/tag/ai-gateway/)
    -   [agent runners](/changelog/tag/agent-runners/)
    
    Google’s Gemini 3 Pro Preview model is now available through Netlify’s AI Gateway and Agent Runners with zero configuration required.
    
    Use the Google GenAI SDK directly in your Netlify Functions without managing API keys or authentication. The AI Gateway handles everything automatically. Here’s an example using the Gemini 3 Pro Preview model:
    
    ```
    import { GoogleGenAI } from "@google/genai";
    export default async (request: Request, context: Context) => {  const ai = new GoogleGenAI({});
      const response = await ai.models.generateContent({    model: "gemini-3-pro-preview",    contents: "Explain why gemini 3 is better than other models",  });
      return new Response(JSON.stringify({ answer: response.text }), {    headers: { "Content-Type": "application/json" }  });};
    ```
    
    Gemini 3 is available across Background Functions, Scheduled Functions, and Agent Runners. You get automatic access to Netlify’s caching, rate limiting, and authentication infrastructure.
    
    Learn more in the [AI Gateway documentation](https://docs.netlify.com/build/ai-gateway/overview/) and [Agent Runners documentation](https://docs.netlify.com/build/build-with-ai/agent-runners/overview/).
    
    [Permalink to Gemini 3 now available in AI Gateway and Agent Runners Permalink](/changelog/gemini-3-ai-gateway-agent-runners/)
    
-   [
    
    ## Add DNS records across teams in your organization
    
    ](/changelog/2025-11-17-cross-team-dns-records/)
    
    November 17, 2025
    
    -   [domains](/changelog/tag/domains/)
    
    If you have a Netlify Organization, you can now add a DNS record that has a DNS zone from a different team in your Netlify organization.
    
    Previously, DNS records could only be added to DNS zones in the Netlify team that managed them, limiting those with Netlify Organizations. With this new change it is easier than ever for your organization to share DNS zones across Netlify Teams and projects.
    
    Learn more about [managing DNS records](https://docs.netlify.com/domains-https/netlify-dns/dns-records/) in the Netlify documentation.
    
    [Permalink to Add DNS records across teams in your organization Permalink](/changelog/2025-11-17-cross-team-dns-records/)
    
-   [
    
    ## Skew protection available for CLI workflows
    
    ](/changelog/2025-11-13-skew-protection-cli-deploys/)
    
    November 14, 2025
    
    -   [cli announcement](/changelog/tag/cli-announcement/)
    
    Skew protection is now available for deploys triggered from the CLI starting with the Netlify CLI version 23.11.0 and above. Previously, skew protection did not work with CLI workflows.
    
    To upgrade your Netlify CLI version:
    
    ```
    npm update -g netlify-cli
    ```
    
    Note that if you use `npx` when you run your Netlify CLI commands, you will always use the latest Netlify CLI version.
    
    Learn more about the benefits of skew protection, including more stable user experiences and preventing server-client version mismatch errors in our [docs](https://docs.netlify.com/deploy/deploy-overview/#skew-protection).
    
    [Permalink to Skew protection available for CLI workflows Permalink](/changelog/2025-11-13-skew-protection-cli-deploys/)
    
-   [
    
    ## New top-level domains available
    
    ](/changelog/2025-11-13-expanded-domain-tld-support/)
    
    November 13, 2025
    
    -   [domains](/changelog/tag/domains/)
    
    Now you can purchase domains with the following top-level domains (TLDs) for even more flexibility when buying and registering a domain through Netlify:
    
    -   `.place`
    -   `.be`
    -   `.pl`
    -   `.dk`
    -   `.co.uk`
    
    For help buying a new domain, check out our docs on [registering and buying a domain](https://docs.netlify.com/manage/domains/configure-domains/register-and-buy-a-domain/).
    
    For even more help setting up a domain, check out our [domains setup wizard](https://docs.netlify.com/manage/domains/get-started-with-domains/#domains-and-dns-navigator).
    
    [Permalink to New top-level domains available Permalink](/changelog/2025-11-13-expanded-domain-tld-support/)
    
-   [
    
    ## GPT-5.1 model now available in AI Gateway
    
    ](/changelog/gpt-5-1-ai-gateway/)
    
    November 13, 2025
    
    -   [ai gateway](/changelog/tag/ai-gateway/)
    
    OpenAI’s latest GPT-5.1 model (`gpt-5.1`) is now available through Netlify’s AI Gateway. This model brings enhanced performance and efficiency with no additional setup required.
    
    Use the OpenAI SDK directly in your Netlify Functions without managing API keys. The AI Gateway handles authentication, rate limiting, and caching automatically. Here’s an example using the GPT-5.1 model:
    
    ```
    import { OpenAI } from "openai";
    export default async () => {  const openai = new OpenAI();
      const response = await openai.chat.completions.create({    model: "gpt-5.1",    messages: [      {        role: "user",        content: "Compare GPT-5.1's improvements over GPT-5 Pro"      }    ]  });
      return new Response(JSON.stringify(response), {    headers: { "Content-Type": "application/json" }  });};
    ```
    
    The GPT-5.1 model works seamlessly across Edge Functions, Background Functions, and Scheduled Functions. You also get access to Netlify’s advanced caching primitives and built-in rate limiting.
    
    Learn more in the [AI Gateway documentation](https://docs.netlify.com/build/ai-gateway/overview/).
    
    [Permalink to GPT-5.1 model now available in AI Gateway Permalink](/changelog/gpt-5-1-ai-gateway/)
    
-   [
    
    ## React Router 7 apps can now be deployed to Edge Functions
    
    ](/changelog/react-router-7-apps-can-now-be-deployed-to-edge-functions/)
    
    November 10, 2025
    
    -   [framework](/changelog/tag/framework/)
    -   [remix](/changelog/tag/remix/)
    
    React Router 7 apps on Netlify are deployed to Serverless Functions by default. Now, you can choose to deploy your app to [Edge Functions](https://docs.netlify.com/build/edge-functions/overview/) instead, bringing your page renders, data loaders, and actions closer to your users while lowering cold start times.
    
    ## How to use it
    
    1.  Ensure you’re on version 7.9.0 or later of React Router:
    
    ```
    npm install react-router@latest @react-router/node@latest @react-router/dev@latest
    ```
    
    2.  Update to the latest version of the Netlify React Router plugin:
    
    ```
    npm install @netlify/vite-plugin-react-router@latest
    ```
    
    3.  Enable the new `edge` option in your `vite.config.ts` (or `.js`):
    
    ```
    export default defineConfig({  plugins: [    reactRouter(),    netlifyReactRouter({ edge: true }), // <- deploy to Edge Functions    netlify(),  ],})
    ```
    
    4.  Finally, create a file at `app/entry.server.tsx` (or `.jsx`) containing this single line:
    
    ```
    export { default } from 'virtual:netlify-server-entry'
    ```
    
    On your next deploy, page renders, loaders, and actions will all run in an edge function.
    
    ## When to use it
    
    _Choose Edge Functions when:_
    
    -   You need **minimal latency** for your **globally distributed users** (edge functions run on the node closest to the user)
    -   You need to **optimize cold starts** (initialization is faster with the slim Deno edge runtime)
    -   Your data loaders and actions make requests to **databases and APIs that are also globally distributed**, or none at all
    -   You need to support very large request or response bodies (Serverless Functions have a 6 MB limit)
    
    _Choose Serverless Functions when:_
    
    -   Your data loaders and actions make requests to **databases or APIs that are centrally located** (canceling out much of the benefit of edge compute)
    -   Your server-side code is **CPU-intensive** (Serverless Functions run on more powerful machines)
    -   You need **longer execution times** (Functions allow up to 30s clock time, while Edge Functions are limited to 50ms CPU time)
    -   You cannot use Edge Functions due to their [runtime constraints](https://docs.netlify.com/build/edge-functions/api/#runtime-environment) or [limitations](https://docs.netlify.com/build/edge-functions/limits/#feature-limitations)
    
    ## Next steps
    
    -   Create a new React Router 7 project with [our template](https://github.com/netlify/react-router-template/)
    -   Read the [Netlify React Router plugin docs](https://github.com/netlify/remix-compute/tree/main/packages/vite-plugin-react-router#react-router-adapter-for-netlify) for more details on deploying to the edge
    
    [Permalink to React Router 7 apps can now be deployed to Edge Functions Permalink](/changelog/react-router-7-apps-can-now-be-deployed-to-edge-functions/)
    

[Previous page](/changelog/page/9) [Next page](/changelog/page/11)