<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <id>https://www.windmill.dev/changelog</id>
    <title>Windmill Blog</title>
    <updated>2026-03-30T00:00:00.000Z</updated>
    <generator>https://github.com/jpmonette/feed</generator>
    <link rel="alternate" href="https://www.windmill.dev/changelog"/>
    <subtitle>Windmill Blog</subtitle>
    <icon>https://www.windmill.dev/img/favicon.ico</icon>
    <entry>
        <title type="html"><![CDATA[DB Health Diagnostic Dashboard]]></title>
        <id>https://www.windmill.dev/changelog/db-health-dashboard</id>
        <link href="https://www.windmill.dev/changelog/db-health-dashboard"/>
        <updated>2026-03-30T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[New on-demand database diagnostic dashboard for superadmins. Surfaces database size, job retention health, large job results, connection pool status, vacuum/bloat stats, slow queries, and datatable sizes — all from within Instance Settings.]]></summary>
        <category label="Instance Settings" term="Instance Settings"/>
        <category label="Monitoring" term="Monitoring"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[IAM authentication for RDS PostgreSQL resources]]></title>
        <id>https://www.windmill.dev/changelog/iam-rds-auth</id>
        <link href="https://www.windmill.dev/changelog/iam-rds-auth"/>
        <updated>2026-03-30T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[PostgreSQL resources can now use AWS IAM authentication instead of static passwords. Workers generate short-lived tokens automatically using IRSA, EKS Pod Identity, or EC2 Instance Profiles.]]></summary>
        <category label="PostgreSQL" term="PostgreSQL"/>
        <category label="Resources" term="Resources"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Shared runners for dedicated workers]]></title>
        <id>https://www.windmill.dev/changelog/shared-runners</id>
        <link href="https://www.windmill.dev/changelog/shared-runners"/>
        <updated>2026-03-30T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Dedicated worker scripts sharing the same workspace dependency and language now automatically run in a single long-lived subprocess.]]></summary>
        <category label="Enterprise" term="Enterprise"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[R language support]]></title>
        <id>https://www.windmill.dev/changelog/r-language-support</id>
        <link href="https://www.windmill.dev/changelog/r-language-support"/>
        <updated>2026-03-28T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Windmill now supports R scripts with automatic CRAN package dependency management.]]></summary>
        <category label="R" term="R"/>
        <category label="Script editor" term="Script editor"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Workflows as code v2]]></title>
        <id>https://www.windmill.dev/changelog/workflows-as-code-v2</id>
        <link href="https://www.windmill.dev/changelog/workflows-as-code-v2"/>
        <updated>2026-03-15T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Workflows as code v2 introduces checkpoint-based orchestration with <code>workflow()</code>, <code>task()</code>, <code>step()</code>, <code>sleep()</code>, <code>waitForApproval()</code>, and <code>parallel()</code> primitives. The workflow fully suspends between tasks, releasing its worker slot, eliminating deadlocks and enabling unlimited parallelism on any number of workers. Also adds script modules (<code>__mod/</code> folders), CLI sync support, and a timeline UI for visualizing task execution.]]></summary>
        <category label="Script editor" term="Script editor"/>
        <category label="Flow editor" term="Flow editor"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Self-managed GitHub App support]]></title>
        <id>https://www.windmill.dev/changelog/github-enterprise-app</id>
        <link href="https://www.windmill.dev/changelog/github-enterprise-app"/>
        <updated>2026-03-13T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Self-managed GitHub App support for GitHub.com and GitHub Enterprise Server instances, enabling Git sync without relying on the Windmill-managed GitHub App.]]></summary>
        <category label="Git Sync" term="Git Sync"/>
        <category label="Enterprise" term="Enterprise"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Unified generate-metadata CLI command]]></title>
        <id>https://www.windmill.dev/changelog/unified-generate-metadata</id>
        <link href="https://www.windmill.dev/changelog/unified-generate-metadata"/>
        <updated>2026-03-13T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[The new `wmill generate-metadata` command consolidates metadata and lockfile generation for scripts, flows, and apps into a single unified command. The previous commands `wmill script generate-metadata`, `wmill flow generate-locks`, and `wmill app generate-locks` are now deprecated.]]></summary>
        <category label="CLI" term="CLI"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Volumes, sandbox annotation, and AI sandbox]]></title>
        <id>https://www.windmill.dev/changelog/volumes-sandbox-annotation-ai-sandbox</id>
        <link href="https://www.windmill.dev/changelog/volumes-sandbox-annotation-ai-sandbox"/>
        <updated>2026-03-06T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Persistent volumes for scripts via code annotations, per-script sandbox annotation for Python and TypeScript, and AI sandbox for running coding agents with isolation and persistent state.]]></summary>
        <category label="Script editor" term="Script editor"/>
        <category label="Enterprise" term="Enterprise"/>
        <category label="Security" term="Security"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Variables and resources in flow env]]></title>
        <id>https://www.windmill.dev/changelog/flow-env-variables-resources</id>
        <link href="https://www.windmill.dev/changelog/flow-env-variables-resources"/>
        <updated>2026-03-05T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Flow environment variables now support resources and variables.]]></summary>
        <category label="Flow editor" term="Flow editor"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Token expiration notifications]]></title>
        <id>https://www.windmill.dev/changelog/token-expiration-notifications</id>
        <link href="https://www.windmill.dev/changelog/token-expiration-notifications"/>
        <updated>2026-03-05T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Windmill now monitors API token expiration and notifies owners via email 7 days before expiry and upon deletion. A new instance setting controls critical alerts for token expiry.]]></summary>
        <category label="Core" term="Core"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Private registries for npm, Maven, and Cargo]]></title>
        <id>https://www.windmill.dev/changelog/private-registries-npm-maven-cargo</id>
        <link href="https://www.windmill.dev/changelog/private-registries-npm-maven-cargo"/>
        <updated>2026-02-21T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Configure private package registries for npm, Maven, and Cargo from instance settings. Supports .npmrc for npm/Bun/Deno, settings.xml for Maven/Java, and config.toml for Cargo/Rust.]]></summary>
        <category label="Enterprise" term="Enterprise"/>
        <category label="Script editor" term="Script editor"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Native mode for workers]]></title>
        <id>https://www.windmill.dev/changelog/native-mode</id>
        <link href="https://www.windmill.dev/changelog/native-mode"/>
        <updated>2026-02-18T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[New <code>NATIVE_MODE</code> environment variable to simplify native worker configuration. When enabled, it automatically spawns 8 subworkers and restricts the worker to only accept native jobs (bunnative, nativets, SQL queries, GraphQL) and flow handling. Can be set on any worker group and toggled from the UI.]]></summary>
        <category label="Workers" term="Workers"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Infrastructure as code]]></title>
        <id>https://www.windmill.dev/changelog/infrastructure-as-code</id>
        <link href="https://www.windmill.dev/changelog/infrastructure-as-code"/>
        <updated>2026-02-16T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Manage Windmill instance configuration declaratively with YAML files, a Kubernetes operator, or the CLI. Version-control, review, and reproduce your setup across environments.]]></summary>
        <category label="Kubernetes" term="Kubernetes"/>
        <category label="CLI" term="CLI"/>
        <category label="Enterprise" term="Enterprise"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Native triggers]]></title>
        <id>https://www.windmill.dev/changelog/native-triggers</id>
        <link href="https://www.windmill.dev/changelog/native-triggers"/>
        <updated>2026-02-16T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Trigger scripts and flows in real-time from Nextcloud, Google Drive, and Google Calendar events via push notifications.]]></summary>
        <category label="Triggers" term="Triggers"/>
        <category label="Nextcloud" term="Nextcloud"/>
        <category label="Google" term="Google"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Force sandboxing]]></title>
        <id>https://www.windmill.dev/changelog/force-sandboxing</id>
        <link href="https://www.windmill.dev/changelog/force-sandboxing"/>
        <updated>2026-02-12T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Instance-level setting to enforce nsjail sandboxing across all jobs, and per-script <code>#sandbox</code> annotation for bash scripts.]]></summary>
        <category label="Self-hosting" term="Self-hosting"/>
        <category label="Security" term="Security"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Health endpoints]]></title>
        <id>https://www.windmill.dev/changelog/health-endpoints</id>
        <link href="https://www.windmill.dev/changelog/health-endpoints"/>
        <updated>2026-02-12T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Unauthenticated and authenticated health endpoints for monitoring Windmill instances. Includes Prometheus metrics, Kubernetes readiness probe support, and detailed diagnostics.]]></summary>
        <category label="Self-hosting" term="Self-hosting"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Anthropic AI improvements]]></title>
        <id>https://www.windmill.dev/changelog/anthropic-ai-improvements</id>
        <link href="https://www.windmill.dev/changelog/anthropic-ai-improvements"/>
        <updated>2026-02-11T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Support for 1M context window and prompt caching for Anthropic models.]]></summary>
        <category label="Windmill AI" term="Windmill AI"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Protection Rulesets]]></title>
        <id>https://www.windmill.dev/changelog/protection-rulesets</id>
        <link href="https://www.windmill.dev/changelog/protection-rulesets"/>
        <updated>2026-02-10T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Enforce governance policies on workspaces by disabling direct deployments or workspace forking. Configure bypass permissions for specific users or groups.]]></summary>
        <category label="Enterprise" term="Enterprise"/>
        <category label="Workspace Settings" term="Workspace Settings"/>
        <category label="Governance" term="Governance"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Claude Code skills for wmill init]]></title>
        <id>https://www.windmill.dev/changelog/claude-skills-wmill-init</id>
        <link href="https://www.windmill.dev/changelog/claude-skills-wmill-init"/>
        <updated>2026-02-05T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[The wmill init command now generates Claude Code skills for modular, on-demand AI guidance instead of a single monolithic AGENTS.md file.]]></summary>
        <category label="Developer" term="Developer"/>
        <category label="CLI" term="CLI"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Assets page improvements]]></title>
        <id>https://www.windmill.dev/changelog/assets-improvements</id>
        <link href="https://www.windmill.dev/changelog/assets-improvements"/>
        <updated>2026-02-04T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[The <a href="/docs/core_concepts/assets">assets page</a> now includes a workspace exploration view with data tables, Ducklakes, and object storages. Column-level tracking detects which columns are read or written in DuckDB and data table queries. Individual tables can be starred as favorites for quick access.]]></summary>
        <category label="Script editor" term="Script editor"/>
        <category label="Database" term="Database"/>
    </entry>
</feed>