Modal 1.2.3
- CPU Functions can now be configured to run on non-preemptible capacity by setting nonpreemptible=True in the @app.function() or @app.cls() decorator. This feature is not currently available when requesting a GPU. Note that non-preemptibility incurs a 3x multiplier on CPU and memory pricing. See the Guide for more information on preemptions.
Also shipped Nov 20, 2025Modal in November 2025 →
Data Connectors
Replit Enterprise now includes native data warehouse connectors for Snowflake, Databricks, and BigQuery, allowing secure connectivity for data applications.
Auth0 for AI Agents is generally available
We are thrilled to announce a major milestone: the General Availability (GA) of **Auth0 for AI Agents!** [Auth0 for AI Agents](https://auth0.com/ai) is a suite of features to empower developers to build secure agentic applications and experiences.
Cloudflare Fundamentals, Terraform - Terraform v5.13.0 now available
Earlier this year, we announced the launch of the new Terraform v5 Provider. We are aware of the high number of issues reported by the Cloudflare community related to the v5 release. We have committed to releasing improvements on a 2-3 week cadence ↗ to ensure its stability and reliability, including the v5.13 release.
Angular v21 is now supported
Angular v21 was released today and it is supported on Netlify on day one. To upgrade, follow the Angular upgrade steps and update @netlify/angular-runtime to v3.0.1 or later. Learn more: Angular v21 Release Angular on Netlify Angular Runtime
GitLab 18.6 release notes
On November 20, 2025, GitLab 18.6 was released with the following features. In addition, we want to thank all of our contributors, including this month’s notable contributor. This month’s Notable Contributor: Samaksh Agarwal Every developer using the GitLab Development Kit (GDK) benefits from Samaksh’s contribution to improve the readability of gdk status .
Form templates
Form templates are a new type of issue template that support form fields. Use these templates to collect specific issue details upfront so work is actionable from the start.
More from ModalEvery Modal release →
Modal 1.2.4
- Fixed a bug in modal.Sandbox.exec when using stderr=StreamType.STDOUT (introduced in v1.2.3). Added a new h2_enabled option in modal.forward, which enables HTTP/2 advertisement in TLS establishment.
Modal 1.2.2
- modal.Image.run_commands now supports modal.Volume mounts. This can be helpful for accelerating builds by keeping a package manager cache on the Volume: python cache_vol = modal.Volume.from_name("cache-mount") cmd_using_cache = "..." image = modal.Image.debian_slim().run_commands(cmd_using_cache, volumes={"/cache": cache_vol}) All Modal objects now accept...
Modal 1.2.5
- It is now possible to set a custom name= for a Function without using serialized=True. This can be useful when decorating a function multiple times, e.g. applying multiple Modal configurations to the same implementation. It is now possible to start modal shell with a Modal Image ID (modal shell im-abc123).
Modal 1.2.6
- Fixed bug where iterating on a modal.Sandbox.exec output stream could raise unauthenticated errors.
Modal 1.3.0
Modal now supports Python 3.14. Python 3.14t (the free-threading build) support is currently a work in progress, because we are waiting for dependencies to be updated with free-threaded support. Additionally, Modal no longer supports Python 3.9, which has reached end-of-life.
Modal 1.2.1
- It's now possible to override the default -dev suffix applied to the autogenerated URLs for ephemeral Apps (i.e., when using modal serve) via a new dev_suffix field in the .modal.toml config file, or equivalently with the MODAL_DEV_SUFFIX environment variable.
Modal 1.2.0
In this release, we're introducing the concept of "App tags", which are simple key-value metadata that can be included to provide additional organizational context.
Modal 1.3.1
- We've improved our experimental support for Python 3.14t (free-threaded Python) inside Modal containers. The container environment will now use the Python implementation of the Protobuf runtime rather than the incompatible upb implementation.