What nhost/nhost shipped
Written by FoxPlug from the repository's own releases; not affiliated with Nhost. Paste your own repository in the box below and FoxPlug writes the same weekly update for your product. This page is an automatic summary of the releases, pull requests and commits in github.com/nhost/nhost; Nhost did not write it and does not use or endorse FoxPlug. Every line links to the change it describes.
Get a weekly update like this for your product, free
Week of November 2, 2026
What shipped
- WebAuthn step-up verification now binds the elevation proof to the user named in the bearer token instead of whichever user owned the challenge. Pull request #5324
- The configuration editor in project settings now matches the width of other settings pages, shows a short description with a help icon linking to the configuration reference, and moves Revert changes and Save to the top of the card. Pull request #5315
- The General page in project settings was redesigned with horizontal Project name and Delete project cards and a separate Availability card holding Pause and Transfer. Pull request #5303
- The blog on the landing site now has category tags, search, featured posts and an estimated read time preview. Pull request #5276
- New beta release clarifies default-role admission and token confinement, requiring tokens limited to
user_mcpbefore promising roles. Release - The landing site's security contact now points to GitHub Security. Pull request #5338
Why it matters
The most consequential change is the fix that ties a WebAuthn elevation proof to the user in the bearer token, closing a gap where the assertion could be checked against the wrong user. Settings work in the dashboard makes the configuration editor and General page easier to navigate, and the landing blog gains categories and search for readers.
Changelog entry
- Bind WebAuthn elevation proofs to the bearer-token user during verify. Pull request #5324
- Redesign the configuration editor in project settings with matching width, help link and top actions. Pull request #5315
- Redesign the General page in project settings with Project name, Delete project and Availability cards. Pull request #5303
- Add category tags, search, featured posts and read time preview to the landing blog. Pull request #5276
- Release mcp@0.4.0-beta2 clarifying default-role admission and token confinement. Release
- Update the landing security contact to GitHub Security. Pull request #5338
This week: WebAuthn elevation proofs are now bound to the bearer-token user. Dashboard settings got a redesigned General page and a configuration editor that matches other settings pages. The landing blog now has categories and search, and a new beta clarifies token confinement.
This week's changes to the repository: WebAuthn step-up verification now binds the elevation proof to the user named in the bearer token, rather than whichever user owned the challenge. In the dashboard, the General page of project settings was redesigned into clear Project name, Delete project and Availability cards, and the configuration editor now matches the width of other settings pages with a description, a help icon to the configuration reference, and Revert changes and Save at the top of the card. The landing blog gained category tags, search, featured posts and an estimated read time preview, the security contact now points to GitHub Security, and a new beta release clarifies default-role admission and token confinement.
Week of October 26, 2026
What shipped
- Added a shared, database-backed reversible migration library so services can move PostgreSQL schemas to the target version of the image, including rolling back on older images. Pull request #5262
- Storage now uses the shared migration bundle to bring its schema to the target version, supporting upgrades and downgrades on startup. Pull request #5263
- Auth now uses the shared migrator so it converges to the image target from either direction while keeping migration SQL in PostgreSQL. Pull request #5264
- The AI service now uses the shared target-based migrator with catalog locking and hydration instead of an up-only runner. Pull request #5265
- Auth sessions can be elevated with SMS OTP behind a new flag, giving phone-only accounts a second factor for sensitive operations. Pull request #4831
- Auth session elevation now supports TOTP and email OTP flows plus an elevate endpoint, so users without a security key can satisfy elevated requests. Pull request #4665
- The dashboard Deployments page gained a New deployment button that schedules a branch, tag or commit SHA as the signed-in user. Pull request #5232
- Constellation added support for Hasura v2 PostgreSQL computed fields, preserving definitions and grants through metadata loading and export. Pull request #5273
- Constellation now coalesces concurrent parsing and validation of identical uncached queries per role and metadata state. Pull request #5309
- Added documentation for native queries, including logical models and a worked example. Pull request #5173
Why it matters
This week the services moved onto a shared migration library that can move schemas forward and back, which matters when a deployment uses an older image whose migration files the database has never seen. Auth added SMS OTP and TOTP and email OTP for session elevation, and Constellation gained computed-field support and deduplicated query parsing. The dashboard also picked up branch, tag and commit deployments and several consistency fixes.
Changelog entry
- Add a shared database-backed reversible migration library. Pull request #5262
- Storage migrates to the embedded bundle target, including downgrades from newer cataloged states. Pull request #5263
- Auth migrations converge to the image target in both directions with catalog hydration. Pull request #5264
- AI service adopts the shared target-based migrator. Pull request #5265
- Auth sessions can be elevated with SMS OTP behind AUTH_OTP_SMS_ENABLED. Pull request #4831
- Auth adds TOTP and email OTP session elevation and an elevate endpoint. Pull request #4665
- Constellation supports Hasura v2 PostgreSQL computed fields. Pull request #5273
- Constellation coalesces concurrent parsing and validation of identical queries. Pull request #5309
- Dashboard can schedule a deployment of a branch, tag or commit from the Deployments page. Pull request #5232
- Dashboard adds a multi-column unique constraint editor to table forms. Pull request #5095
- Storage keeps the original filename when replace metadata omits name. Pull request #5271
- Storage lists S3 before Hasura when finding orphan files. Pull request #5267
This week: shared reversible migrations land in the services, Auth adds SMS OTP, TOTP and email OTP session elevation, Constellation supports computed fields and coalesces query parsing, and the dashboard can deploy a branch, tag or commit.
This week the services moved onto a shared, database-backed migration library that moves PostgreSQL schemas to an image's target version and can roll back when an older image is deployed. Storage, Auth, AI and the shared library all adopted it. Auth sessions can now be elevated with SMS OTP behind a flag, and TOTP and email OTP elevation flows plus an elevate endpoint were added so accounts without a security key can still satisfy elevated requests. Constellation added Hasura v2 PostgreSQL computed-field support and now coalesces concurrent parsing and validation of identical queries. The dashboard gained a New deployment button for a branch, tag or commit SHA, a multi-column unique constraint editor, and a round of consistency work on settings cards, popups, icon buttons and copy buttons.
Week of October 19, 2026
What shipped
- Auth can now elevate an existing session with a TOTP code through the new elevate/totp endpoint, returning a session whose JWT carries the elevated claim. Pull request #4612
- The dashboard now supports creating, editing, introspecting and tracking composite foreign keys. Pull request #4494
- The refresh middleware in nhost-js now skips the auth client's own token endpoint instead of matching any URL ending in v1/token, so recursion no longer happens with a custom auth URL. Pull request #5243
- The CLI strips psql-only restrict and unrestrict wrapper lines from generated initial migrations before sending them to PostgreSQL. Pull request #5181
- Storage transformation now uses the source file's modification time for date conditional requests, so If-Modified-Since and If-Unmodified-Since revalidation of transformed images no longer errors. Pull request #5204
- Storage skips decoding and transforming images when a conditional request can be answered with a bodyless 304 or 412 response. Pull request #5205
- The functions release updates Node.js to the latest versions, serves example greetings as plain text to prevent reflected XSS, and updates vulnerable dependencies. Release
- The CLI release filters psql guards from initial migrations and bumps referenced package versions. Release
- The auth env example now lists the generic webhook SMS provider settings alongside Twilio and Modica. Pull request #5251
- Foreign keys in the dashboard can again reference columns covered by a standalone unique index. Pull request #5065
Why it matters
This week brings a TOTP session elevation endpoint to auth and composite foreign key support to the dashboard, alongside several storage and CLI fixes. Users with custom auth URLs, self-hosted auth setups and initial migrations generated for cloud projects get specific bugs resolved.
Changelog entry
- Auth: add POST /elevate/totp to elevate a session with a TOTP code and return a session with the elevated JWT claim. Pull request #4612
- Dashboard: add support for composite foreign keys, including create, edit, introspection and tracking. Pull request #4494
- Dashboard: parse all four foreign key constraint shapes when reading relationships. Pull request #5061
- Dashboard: allow unique indexes as referenced foreign key keys. Pull request #5065
- Nhost-js: refresh middleware skips the configured auth token URL rather than any URL ending in v1/token. Pull request #5243
- Storage: use the source file modification time for date conditionals on transformed images. Pull request #5204
- Storage: skip transforms for conditional image responses answered with 304 or 412. Pull request #5205
- Cli: filter psql restrict and unrestrict guards from generated initial migrations. Pull request #5181
- Functions: update Node.js to latest versions, serve example greetings as plain text and update vulnerable dependencies. Release
- Auth: add generic SMS provider settings to the env example. Pull request #5251
- Dashboard 3.8.0: composite foreign keys, v3 dialogs and sheets, and gated native queries on old graphql engine versions. Release
- Dashboard: merge outline-emboss and secondary buttons into a single outline button. Pull request #5187
This week: auth sessions can be elevated with TOTP, the dashboard supports composite foreign keys, nhost-js no longer recurses on custom auth URLs, storage handles date conditionals on transformed images, and the CLI filters psql guards from initial migrations.
This week's changes to the project: Auth: new elevate/totp endpoint verifies a TOTP code and returns a session whose JWT carries the elevated claim. Dashboard: composite foreign keys can be created, edited, introspected and tracked; foreign keys can reference columns covered by a standalone unique index. nhost-js: the refresh middleware recognises the auth client's own token request whatever authUrl is configured, avoiding recursive refresh. Storage: conditional requests on transformed images use the source file's modification time, and bodyless 304 and 412 responses skip decoding and transforming. CLI: psql-only restrict and unrestrict lines are removed from generated initial migrations. Functions ship latest Node.js versions and fix reflected XSS in example greetings.
Week of October 12, 2026
What shipped
- Released @nhost/dashboard@3.7.0, which brings a new dashboard design. Release
- Merged the new dashboard design, including reworked breadcrumb navigation, header notifications, the account menu, and a command palette moved to the header. Pull request #5137
- Released @nhost/dashboard@3.7.1 with a bug fix. Release
- Added a CA flag in the dashboard. Pull request #5175
- Released cli@1.52.0, exposing WAL and extension configuration for Postgres and adding support for the ca-central-1 region. Release
- Added cli support for the ca-central-1 region. Pull request #5171
- Updated certificates in the CLI. Pull request #5174
- Gated the native queries pages in the dashboard when a project runs a GraphQL engine version older than v2.33.0, where create and update calls previously failed. Pull request #5121
- Aligned field-array row controls with their inputs in dashboard forms. Pull request #5115
- Changed MultiSelect to toggle values from the controlled value prop. Pull request #4983
Why it matters
This week brought a new dashboard design alongside a follow-up patch release and certificate and region updates in the CLI. Users on older GraphQL engine versions also get native queries gated, so pages no longer let them attempt create or update calls that were failing. Smaller fixes align field-array controls and make MultiSelect follow its controlled value.
Changelog entry
- @nhost/dashboard@3.7.0: new dashboard design. Release
- Dashboard: reworked breadcrumbs, header notifications, account menu and command palette in the header. Pull request #5137
- @nhost/dashboard@3.7.1: bug fixes. Release
- Dashboard: added CA flag. Pull request #5175
- Cli@1.52.0: expose WAL and extension configuration, add ca-central-1 support, use spec-compliant annotations for MCP resources. Release
- CLI: added support for ca-central-1. Pull request #5171
- CLI: updated certificates. Pull request #5174
- Dashboard: gate native queries when the GraphQL engine is older than v2.33.0. Pull request #5121
- Dashboard: aligned field-array row controls with their inputs. Pull request #5115
- Dashboard: MultiSelect toggles values from the controlled value prop. Pull request #4983
New dashboard design shipped this week, with reworked breadcrumbs, header notifications, account menu and command palette in the header. Also released: CLI 1.52.0 with WAL and extension config plus ca-central-1 support, and a dashboard fix that gates native queries on older Graph
This week the new dashboard design went out, covering reworked breadcrumb navigation, header notifications, the account menu and a command palette moved into the header. A patch release followed it. The CLI reached 1.52.0, exposing WAL and extension configuration for Postgres and adding support for the ca-central-1 region, with updated certificates. The dashboard now gates native queries when a project runs a GraphQL engine older than v2.33.0, where create and update calls were failing. Smaller fixes align field-array row controls with their inputs and make MultiSelect toggle from its controlled value.
Week of October 5, 2026
What shipped
- OAuth sign-in errors now return the real reason instead of internal-server-error when a user is unverified, disabled, or uses a blocked email domain. Pull request #5058
- The PostgreSQL image allows the bundled
pg_squeezelogical-decoding output plugin without preloading the library or adding a configurable allowlist. Pull request #5118 - The functions example greetings are served as plain text to prevent reflected XSS. Pull request #5160
- The CLI's MCP server now uses spec-compliant annotations for its resources. Pull request #5138
- The Reference landing page now links every top-level group from the Reference sidebar, including the Auth and Storage API. Pull request #5040
- Personal access tokens are readable in dark mode and toasts are styled correctly in the dashboard. Pull request #5124
- The docs JWT verification example now parses the config JSON and uses the signing key for symmetric verification. Pull request #5112
- New issues and pull requests from external authors are automatically labeled external. Pull request #5120
- A glama.json was added and the MCP server is mentioned in the README so the Nhost MCP server can be claimed on Glama. Pull request #5060
- The CLI generates bindings from production instead of staging for stability. Pull request #5119
Why it matters
This week fixes error reporting so OAuth users see the actual reason for a failed sign-in instead of a vague internal error. It also expands what the PostgreSQL image can do with the bundled pg_squeeze output plugin. Documentation and dashboard fixes make the Reference pages and personal access tokens easier to use.
Changelog entry
- Auth: return the actual OAuth error instead of internal-server-error for unverified, disabled, or blocked-domain users Pull request #5058
- Postgres: allow the bundled
pg_squeezelogical-decoding output plugin Pull request #5118 - Functions: serve example greetings as plain text to prevent reflected XSS Pull request #5160
- Cli: use spec-compliant annotations for MCP resources Pull request #5138
- Docs: link every Reference sidebar group from the Reference page Pull request #5040
- Dashboard: fix PAT token contrast in dark mode and unstyled toasts Pull request #5124
- Docs: use the signing key for symmetric JWT verification in the example Pull request #5112
- Ci: add a job to label issues and pull requests from external authors Pull request #5120
- Mcp: add glama.json and mention the MCP server in the README Pull request #5060
- Cli: use production to generate bindings instead of staging Pull request #5119
- Ci: fix container access after changes in the base image Pull request #5136
This week: OAuth sign-in returns the real error instead of internal-server-error, bundled pg_squeeze is allowed in the Postgres image, functions greetings are served as plain text, CLI MCP resources use spec-compliant annotations, and the Reference page links every sidebar group.
This week in Nhost: OAuth sign-in now returns the actual error (unverified-user, disabled-user, or blocked email domain) instead of internal-server-error. The PostgreSQL image allows the bundled pg_squeeze logical-decoding output plugin without preloading the library. The functions example greetings are served as plain text to prevent reflected XSS. The CLI MCP server uses spec-compliant annotations for its resources. The Reference landing page links every top-level sidebar group, including the Auth and Storage API. Personal access tokens are readable in dark mode, and the JWT verification docs example uses the signing key for symmetric verification.
Week of September 28, 2026
What shipped
- Dashboard 3.6.0 adds a last sign-in method badge, lets users manage logical models and native queries, and manage permissions for logical models and native queries. Release
- Nhost-js 4.9.0 adds SMS deanonymization and phone number changes to auth, and emits nullable schemas correctly in the TypeScript codegen plugin. Release
- PostgreSQL image now exposes WAL and extension configuration settings at startup and in project configuration for tuning retention, compression, checkpoints, diagnostics, and preloaded libraries. Pull request #5080
- PostgreSQL now ships
pg_durable0.2.8 to enable SQL-native durable workflows and HTTP steps that persist across database restarts and failovers. Pull request #5072 - PostgreSQL extensions are upgraded with validation for upgrade paths, supporting both fresh installs and in-place upgrades including TimescaleDB. Pull request #5071
- Dashboard now preserves user-entered values when cloning rows instead of clearing primary-key and unique-column values. Pull request #5081
- Dashboard adds recovery for stale metadata conflicts during mutations. Pull request #5078
- PostgreSQL container now handles SIGTERM gracefully throughout startup, first-boot SQL, collation repair, and normal operation. Pull request #5026
- PostgreSQL startup, point-in-time recovery, and collation repair are hardened to fail safely without disrupting normal startup or deleting data. Pull request #5025
- CI now checks and builds the nhost.toml configuration-reference generator in Nix CI, triggering documentation checks when generator changes. Pull request #5104
Why it matters
Dashboard 3.6.0 brings native queries and logical models to full operational capability with relationship and permission management. PostgreSQL gets production-grade durability features and safer extension upgrades. The auth SDK adds phone number management while the CLI and supporting packages receive stability improvements and dependency updates.
Changelog entry
- Dashboard 3.6.0: manage logical models, native queries, relationships, and permissions; add last sign-in method badge Release
- Nhost-js 4.9.0: SMS deanonymization and phone number changes in auth; fix nullable schema emission in TypeScript codegen Release
- PostgreSQL: expose WAL retention, compression, checkpoint, diagnostic, and extension settings in image startup and project configuration Pull request #5080
- PostgreSQL: include
pg_durable0.2.8 extension for SQL-native durable workflows and HTTP steps Pull request #5072 - PostgreSQL: upgrade bundled extensions with validation for safe upgrade paths including TimescaleDB Pull request #5071
- Dashboard: preserve user-entered values when cloning rows instead of clearing primary-key and unique-column values Pull request #5081
- Dashboard: add recovery for stale metadata conflicts Pull request #5078
- PostgreSQL: handle SIGTERM gracefully throughout startup and normal operation Pull request #5026
- PostgreSQL: harden startup, point-in-time recovery, and collation repair to fail safely Pull request #5025
- CI: simplify approval handling with per-workflow
safe_to_testworkflow and per-commit approval tracking Pull request #5083 - CI: add nhost.toml configuration-reference generator to Nix CI checks Pull request #5104
- CLI 1.51.2 released Release
Weekly digest: Dashboard 3.6.0 with native queries, logical models, and permissions. PostgreSQL adds pg_durable for durable workflows. nhost-js with SMS deanonymization. Multiple packages updated.
This week's digest: Dashboard 3.6.0 ships native queries and logical models with full relationship and permission management UI. PostgreSQL adds pg_durable 0.2.8 for SQL-native durable workflows, WAL configuration tuning, and safer extension upgrades. Auth SDK gains SMS deanonymization and phone number management. CLI, storage, constellation, and functions packages updated with dependency and infrastructure improvements.
Week of September 21, 2026
What shipped
- Functions now pin npm 11 in the shared dependency installer to prevent execution of untrusted code during deploy when using file: or git dependencies. Pull request #5014
- Dashboard permission editing no longer unintentionally broadens access when modifying compound permissions. Pull request #5062
- Auth 0.52.1-beta1 released with AUTH_SMS_PASSWORDLESS_ENABLED renamed to AUTH_OTP_SMS_ENABLED for general use. Release
- PostgreSQL updated to 17.11. Pull request #5070
- Nix flake now validates the overlay it publishes to prevent unintended exports from shadowing nixpkgs toolchains. Pull request #5069
- Old PostgreSQL versions have been restored. Pull request #5066
- Dashboard tests now use jsdom's native PointerEvent instead of mocks. Pull request #5068
- CI configuration updated to allow dependabot to trigger builds. Pull request #5055
Why it matters
Security improvements in function deployments prevent unintended code execution, dashboard fixes prevent accidental permission escalation, and infrastructure updates bring better stability and tooling validation.
Changelog entry
- Functions: pin npm 11 in shared dependency installer to prevent untrusted code execution during deploy Pull request #5014
- Dashboard: fix permission editing to prevent unintended access broadening Pull request #5062
- Auth: 0.52.1-beta1 released with AUTH_OTP_SMS_ENABLED variable renaming Release
- PostgreSQL updated to 17.11 Pull request #5070
- Nix: validate overlay exports and remove deprecated stdenv checks Pull request #5069
- Restore old PostgreSQL versions Pull request #5066
- Dashboard: use jsdom native PointerEvent in tests Pull request #5068
This week: npm 11 pinning prevents untrusted code execution in functions, permission editing fixes prevent unintended access broadening, and Nix validation hardens overlay exports.
This week's updates focus on security and reliability. Function deployments now pin npm 11 to prevent untrusted code execution when using file or git dependencies. Dashboard permission editing has been fixed to prevent unintentional access broadening. Infrastructure improvements include PostgreSQL 17.11 support, Nix flake overlay validation, and better CI automation with dependabot integration.
Week of September 14, 2026
What shipped
- MCP service version 0.3.0 released with unauthenticated /healthz endpoint for probes and publication to the official MCP Registry. Release
- PostgreSQL upgraded to 18.6 with support for versions 16 and 17 dropped. Pull request #5020
- Auth version 0.52.0 released with generic SMS support, SMS deanonymization, and phone number change capabilities. Release
- Dashboard project settings sidebar redesigned with docked layout and independent scrolling content. Pull request #4993
- Dashboard Events page migrated to new layout pattern. Pull request #4965
- Auth settings migrated to new dashboard layout with dedicated Auth settings route. Pull request #4933
- Functions development runtime image fixed to include glibc dynamic loader for dynamically linked ELF binaries. Pull request #5006
- Constellation fixed to resolve
foreign_key_constraint_onrelationships against the exact constraint. Pull request #5028 - Sign-in page now displays a LAST USED badge on the sign-in method used previously. Pull request #4984
- CI pipeline enhanced with betterleaks secret scanning on pull requests. Pull request #4962
Why it matters
This week brought significant upgrades to core infrastructure with PostgreSQL 18.6 and continued dashboard modernization across multiple settings sections. Auth gained SMS capabilities and the development experience improved with fixes to functions runtime and constraint resolution.
Changelog entry
- Mcp@0.3.0: Added unauthenticated /healthz endpoint for probes, published MCP service to official MCP Registry Release
- PostgreSQL: Upgraded to 18.6, dropped support for versions 16 and 17 Pull request #5020
- PostgreSQL CI: Retired version 16 and 17 image jobs Pull request #5021
- Auth@0.52.0: Added generic SMS support, SMS deanonymization, and phone number changes Release
- Functions@2.3.0: Fixed Yarn Classic pinning, normalized dependency installation, added chokidar polling for hot-reload Release
- Functions@2.3.1: Added glibc dynamic loader to dev runtime image Release
- Cli@1.51.1: Released with reference updates and provenance check fixes Release
- Dashboard: Project settings sidebar now docked with independent scrolling content Pull request #4993
- Dashboard: Auth settings migrated to new layout with dedicated route Pull request #4933
- Dashboard: GraphQL settings migrated to new layout Pull request #4932
- Dashboard: Storage settings migrated to new layout Pull request #4934
- Dashboard: Functions settings migrated to new layout Pull request #4935
- Dashboard: Run settings migrated to new layout Pull request #4936
- Dashboard: Deployments settings migrated to new layout Pull request #4937
- Dashboard: Metrics settings migrated to new layout Pull request #4938
- Dashboard: Events page migrated to new layout Pull request #4965
- Dashboard: AI pages migrated to new layout Pull request #4964
- Dashboard: Sign-in page shows LAST USED badge for previously used sign-in method Pull request #4984
- Constellation: Fixed
foreign_key_constraint_onresolution against exact constraint Pull request #5028 - Dashboard: Fixed unscheduled deployments hiding live deployment Pull request #5023
Week 32: MCP 0.3.0 published, PostgreSQL 18.6 upgrade, auth gains SMS features, dashboard settings redesigned, and secret scanning added to CI.
This week's updates focus on infrastructure and developer experience. PostgreSQL upgraded to 18.6, MCP service published to official registry, auth adds SMS deanonymization and phone number changes, dashboard continues modernization with docked settings sidebar, and CI gains automated secret scanning. Functions runtime fixed for dynamically linked binaries.