Supabasesteve_chavezAnnouncement
What is new in PostgREST v11.1?
Summary
PostgREST v11.1 is available on the Supabase platform with configuration and querying improvements, plus a small set of documented breaking changes from v10. It lets JWT-authenticated impersonated roles such as anon, authenticated, and service_role receive ALTER ROLE settings, including statement timeouts, pg_plan_filter statement cost limits, and configurable transaction isolation levels. The release also supports bulk JSON inserts that preserve column defaults when defaultToNull is false, and adds any/all modifiers for several filters, including eq, like, ilike, and comparison filters. For HTTP clients outside Supabase libraries, Range is now ignored on non-GET requests and RPC requests no longer use the deprecated Prefer: params=multiple-objects header; existing Supabase projects can upgrade by pausing and unpausing.
Context
PostgREST v11.1 adds configuration and querying improvements for Supabase projects. The release addresses query-resource controls, transaction isolation configuration, bulk JSON inserts that honor column defaults, filter shortcuts, and compatibility changes affecting some non-Supabase HTTP clients.
Approach / What changed
The release applies PostgreSQL role settings to JWT-authenticated impersonated roles through ALTER ROLE, with a configuration-cache reload using NOTIFY pgrst, 'reload config'. It adds statement timeouts, pg_plan_filter planning cost limits, and configurable transaction isolation; supports default-preserving bulk inserts through defaultToNull: false; adds any/all filter modifiers; and changes handling of Range and the deprecated RPC Prefer header.
Takeaways
Statement timeouts terminate queries after execution has run for the configured duration, while pg_plan_filter can reject queries during planning; cost limits require tuning because they can invalidate legitimate queries.
Bulk JSON inserts with defaultToNull: false allow omitted columns such as identity and defaulted fields to receive their database defaults while other supplied values are retained.
The v11.1 breaking changes are limited: Range is ignored for non-GET methods, and RPC requests no longer consider Prefer: params=multiple-objects, which was already deprecated in v10.1.0.
Source and freshness
- Source
- supabase.com
- Published
- Added to Yomu
- Last updated
Summaries are generated from the original by a language model. Check the original before relying on it.
Keep reading
Related reading
The Good Stuff
Paid picks we use ourselves. Links carry a referral code — a subscription through one earns us a commission at no extra cost to you.
The best engineering reads, once a week
One useful email. Unsubscribe anytime.