Skip to content

NimBus v4.7.0

Choose a tag to compare

@akakaule akakaule released this 09 Oct 12:02
· 40 commits to master since this release
0058ae5

NimBus 4.7.0 replaces the Admin page with separate Operations, Topology and Settings pages, and fixes several bugs in the WebApp, the Resolver, the CLI and the Cosmos DB store.

Highlights

  • Changed the Admin page into three site-Owner pages under Manage: Operations, Topology and Settings. Each tab, setting and operation has its own URL, and /Admin redirects to Operations.
  • Added a status strip and an Endpoints table to Operations. The table puts each endpoint's Receive and Send switches beside its failed, dead-lettered and pending counts. Operations open one at a time from a grouped list, pre-filled for the chosen endpoint, and the sidebar shows how many endpoints are paused.
  • Added live status, a one-line summary and safe quick actions to each Settings row. Each feature's settings open in a tabbed panel that counts unsaved changes and asks before discarding them.
  • Added Pages, Operations and Settings sections to the Ctrl K command palette for site Owners. The Heartbeat, Audit Log and Simulate pages gain links to their settings.
  • Changed Delete single event to ask for the event ID to be typed, like every other delete. Confirm buttons now name their action.
  • Fixed the Failed page sometimes not moving to the next page when Next was pressed on the last loaded failure.
  • Fixed Settings → MCP access presenting the MCP resource app ID as the client ID to sign in with. The connection instructions now explain the separate client registration and its redirect port.
  • Fixed a fresh local Aspire session failing every WebApp request with IDW10106. A WebApp with no sign-in method configured now stops at startup with a message naming the settings to set.
  • Fixed CLI deployments placing new resources in West Europe instead of the resource group's region.
  • Fixed the Resolver crashing at startup when the Service Bus namespace setting holds a connection string whose SharedAccessKey is not written in that exact case.
  • Fixed a dead-lettered message losing the handler's exception when a failure-disposition classifier returned an unknown value.
  • Fixed the Cosmos DB subscription store writing notification types and timestamps that depend on the server's culture, for example under Turkish.

Compatibility

The Admin page and its tabs are gone. /Admin redirects to /Operations, so update bookmarks and runbooks that point at a specific Admin tab. A WebApp with no sign-in method configured (no Entra client ID, Identity or local development authentication) now fails at startup instead of returning 500 on every request. When locationParam is not set, deploy.core.bicep and deploy.webapp.bicep now default to the resource group's region instead of westeurope. The CLI still keeps existing resources in their current region, but raw-Bicep deployments to a resource group outside West Europe should set locationParam. An unknown failure disposition now raises InvalidOperationException, with the handler's exception as InnerException, instead of ArgumentOutOfRangeException. An invalid subscription type or email in the Cosmos DB subscription store raises ArgumentException instead of Exception. The repository's solution file is now src/NimBus.slnx, and every project now runs the .NET analyzers; their warnings are not errors. No public API addition, schema migration, topology change or wire change.

This release was validated at commit 0058ae5 with the full .NET Release build and 3,647 tests in CI (2 skipped), live Cosmos DB and SQL Server conformance suites with no skipped tests, and Service Bus emulator compatibility checks. The frontend production build and 715 frontend tests passed against the release commit's sources. The new Settings panels were checked against a mock API only, not a real deployment.

PRs: #217, #218, #219, #223, #226, #227, #229, #230, #231, #232, #233, #234, #235, #236, #237, #238

Commits: v4.6.0...v4.7.0