Skip to content

Bump the nuget-minor-patch group with 64 updates - #196

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/nuget/nuget-minor-patch-ae3cb65a52
Closed

dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/nuget/nuget-minor-patch-ae3cb65a52

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 26, 2026 •

Copy link
Copy Markdown
Contributor

⚠️ Dependabot is rebasing this PR ⚠️

Rebasing might not happen immediately, so don't worry if this takes some time.

Note: if you make any changes to this PR yourself, they will take precedence over the rebase.


Updated AngleSharp from 1.5.2 to 1.8.6.

Release notes

Sourced from AngleSharp's releases.

1.8.6

Released on Sunday, October 25 2026

What's Changed

  • Removed temporary copies when serializing text that needs no HTML escaping @​perfloop-agent in Avoid rebuilding unescaped text during HTML serialization AngleSharp/AngleSharp#1388
  • Fixed INode.Equals (isEqualNode) to compare what the DOM spec compares: character data, doctype identifiers, processing instructions, element prefixes and attribute local names, no longer base URLs, without overflowing the stack on deep trees
  • Fixed IAttr.Equals comparing the prefix instead of the local name
  • Fixed IDocument.Import (importNode) returning nodes owned by the source document instead of the importing one
  • Fixed IDocument.Import accepting a shadow root instead of throwing NotSupported
  • Fixed INode.Clone and Import overflowing the stack on deeply nested trees and templates
  • Fixed a shallow clone of a <template> copying its contents
  • Fixed serializing < and > in attribute values unescaped, which let markup break out when reparsed under different rules (mutation XSS); they are now written as &lt; and &gt; like browsers do since the HTML spec change of May 2025
  • Fixed IRange.CopyContent and ExtractContent overflowing the stack on deeply nested ranges
  • Fixed Dispatch (dispatchEvent) returning true for a canceled event
  • Fixed MutationObserver not observing a document itself and throwing for one without a root element
  • Fixed MutationObserver.Disconnect keeping the previous targets for a later Connect
  • Fixed a failing navigation or submission from DoClick crashing the process; it is reported as a context error
  • Fixed URLSearchParams treating non-ASCII values as single bytes and leaving + undecoded @​NotAFlightRisk in Decode URLSearchParams as UTF-8 and treat + as a space AngleSharp/AngleSharp#1390
  • Added the IHtmlSelectElement.SelectedIndex setter
  • Added HtmlParserOptions.MaximumDepth (default 512) to stop deeply nested markup from building trees that overflow the stack
  • Added focusing of elements with a tabindex and blurring of any focused element
  • Added DoClickAsync to await a click's navigation or form submission
  • Added toggling the parent <details> when clicking its <summary>
  • Added declarative shadow DOM: the parser attaches <template shadowrootmode="open"> (or closed) as the shadow root of its parent
  • Added :host(<compound>), and selectors in a shadow tree reaching its host (only through :host)
  • Released 1.8.6 by @​FlorianRappl in Release 1.8.6 AngleSharp/AngleSharp#1391

New Contributors

Full Changelog: AngleSharp/AngleSharp@v1.8.5...v1.8.6

1.8.5

Released on Thursday, October 15 2026

What's Changed

  • Fixed select selectedness and option dirtiness across mutations, reset and cloning (#​1384) @​PrzemyslawKlys
  • Fixed fragment parsing losing the context document's quirks and limited-quirks modes (#​1382) @​PrzemyslawKlys
  • Fixed :lang() inheritance and namespace precedence in HTML and foreign content (#​1379) @​PrzemyslawKlys
  • Fixed URLSearchParams cutting values at a second = such as token=abc== (#​1385) @​NotAFlightRisk
  • Released 1.8.5 by @​FlorianRappl in Release 1.8.5 AngleSharp/AngleSharp#1386

Full Changelog: AngleSharp/AngleSharp@v1.8.4...v1.8.5

1.8.4

Released on Wednesday, October 7 2026

What's Changed

  • Improved selection when parsing <select> (#​1364) @​PrzemyslawKlys
  • Updated constraint validation eligibility of fieldset and output elements (breaking behavior change) (#​1373) @​PrzemyslawKlys
  • Fixed change of <select> value (IsSelected) (#​1365) @​PrzemyslawKlys
  • Fixed indeterminate input state when cloning (#​1367) @​PrzemyslawKlys
  • Fixed <select> form submission including unselected options and options in disabled groups (#​1366) @​PrzemyslawKlys
  • Fixed option indexes inside option groups (#​1368) @​PrzemyslawKlys
  • Fixed selecting an option leaving other single-select options selected (#​1372) @​PrzemyslawKlys
  • Fixed validity checks for controls excluded from validation (#​1370) @​PrzemyslawKlys
  • Fixed template content document when adopting a subtree (#​1374) @​PrzemyslawKlys
  • Fixed checking a radio leaving other group members checked (#​1371) @​PrzemyslawKlys
  • Fixed parsed radio checkedness depending on attribute order @​PrzemyslawKlys
  • Fixed SVG annotation-xml elements being treated as HTML integration points @​NotAFlightRisk
  • Fixed required radio validation across group members (#​1369) @​PrzemyslawKlys
  • Released 1.8.4 by @​FlorianRappl in Release 1.8.4 AngleSharp/AngleSharp#1377

New Contributors

Full Changelog: AngleSharp/AngleSharp@v1.8.3...v1.8.4

1.8.3

Released on Wednesday, September 30 2026

What's Changed

  • Improved cancellation of queued timer callbacks (#​1357) @​PrzemyslawKlys
  • Improved configuration / setup performance (#​1360) @​PrzemyslawKlys
  • Fixed form submission ignoring sandbox restrictions (#​1358) @​PrzemyslawKlys
  • Fixed <base> elements not following frozen document base URL and tree-order mutation rules (#​1355, #​1362)
  • Fixed native Unloading handlers subscribing to unloading instead of beforeunload (#​1354) @​PrzemyslawKlys
  • Added OnReset event to inform script hosts of native listener removals (#​1356) @​PrzemyslawKlys
  • Added pull-based HTML serialization stream (#​1361) @​PrzemyslawKlys
  • Released 1.8.3 by @​FlorianRappl in Release 1.8.3 AngleSharp/AngleSharp#1363

New Contributors

Full Changelog: AngleSharp/AngleSharp@v1.8.2...v1.8.3

1.8.2

Released on Friday, September 18 2026

What's Changed

  • Improved attribute selector serialization to write only the case-sensitivity modifier that was specified (#​1351)
  • Improved id/name lookup on collections (document.forms["x"], form.elements["x"], ...) to enumerate the underlying sequence once instead of twice
  • Improved performance of form.elements / fieldset.elements by walking the tree directly (#​1350)
  • Improved GetElementsByTagName / GetElementsByClassName traversal to stop double-scanning each element's children
  • Improved selector specificity (Selectors.Specificity, ComplexSelector.Specificity) to be computed once instead of recomputed on every read
  • Improved ListSelector.GetMatchingSelector to sort its selectors once instead of on every call
  • Improved performance of HTML tree construction by keeping mutation logic out of it (#​1347)
  • Improved performance of DOM mutations by building a mutation record only when an observer will consume it (#​1347)
  • Improved performance of parser attribute duplication check
  • Fixed Document.Forms allocating a new collection instance per read, contradicting its own [DomSameObject] contract
  • Fixed classList and the other reflected token lists writing their content attribute without running the attribute change steps or queueing a mutation record
  • Fixed clearing a reflected boolean attribute such as disabled removing it without running the attribute change steps or queueing a mutation record
  • Fixed vulnerability via SVG style serialization (GHSA-cgp3-27rh-pcp2)
  • Fixed a StackOverflowException when parsing a document with deeply nested unclosed <template> elements
  • Added Document.MutationVersion, a synchronous counter of DOM mutations that a parse leaves unchanged (#​1344, #​1347)
  • Released 1.8.2 by @​FlorianRappl in Release 1.8.2 AngleSharp/AngleSharp#1353

New Contributors

Full Changelog: AngleSharp/AngleSharp@v1.8.1...v1.8.2

1.8.1

Released on Thursday, September 10 2026

What's Changed

  • Updated DoFocus and DoBlur to apply to form elements
  • Improved explicit form ownership to take precedence over ancestor forms for connected controls (#​1323) @​sebastienros
  • Fixed HTML hyperlink pseudo-classes omitting empty href and matching link elements (#​1337) @​sebastienros
  • Fixed HTML-namespace element creation losing local-name case (#​1327) @​sebastienros
  • Fixed :enabled incorrectly matching HTML links with nonempty href (#​1324) @​sebastienros
  • Fixed changing focus of elements
  • Released 1.8.1 by @​FlorianRappl in Release 1.8.1 AngleSharp/AngleSharp#1343

New Contributors

Full Changelog: AngleSharp/AngleSharp@v1.8.0...v1.8.1

1.8.0

Released on Saturday, September 5 2026

What's Changed

  • Improved AngleSharp's test website
  • Fixed script data escaped state potentially not bouncing back correctly
  • Added the DomSameObject annotation for the respective IDL members (#​1314) @​lahma
  • Added the DomReturnType annotation for methods returning a different IDL type (#​1318)
  • Released 1.8.0 by @​FlorianRappl in Release 1.8.0 AngleSharp/AngleSharp#1317

Full Changelog: AngleSharp/AngleSharp@v1.7.3...v1.8.0

1.7.3

Released on Thursday, September 3 2026

What's Changed

  • Improved tracking of parse exceptions in the HtmlParser (#​1315) @​lahma
  • Fixed tokenizer buffer overrun on encoding change (#​1290) @​jafin
  • Fixed selector text dropping the nth-child of clause (#​1292) @​jafin
  • Fixed selector text dropping the case-insensitive (#​1291) @​jafin
  • Fixed selector specificity carrying between fields instead of saturating (#​1300) @​meziantou
  • Fixed condition check for disposed state in ReturnToPool (#​1296) @​meziantou
  • Fixed ArgumentOutOfRangeException CSS escapes (#​1299) @​meziantou
  • Fixed whitespace around An+B CSS selector notations (#​1297)
  • Fixed unsupported pseudo-classes matching everything (#​1295)
  • Fixed DomException for invalid foreign attribute names such as xml:lang[ (#​1294)
  • Fixed script data escaped state leaving escaped mode too early (#​1298)
  • Fixed CurrentScript not indicating the currently executing script (#​1308) @​lahma
  • Fixed returned missing attribute-properties to use empty string instead of null (#​1313) @​lahma
  • Fixed removal of data-* attributes (#​1310) @​lahma
  • Added missing DomName/DomAccessor annotations (#​1301) @​meziantou
  • Added missing DomLiterals attribute to AdjacentPosition (#​1311) @​lahma
  • Released 1.7.3 by @​FlorianRappl in Release 1.7.3 AngleSharp/AngleSharp#1302

Full Changelog: AngleSharp/AngleSharp@v1.7.2...v1.7.3

1.7.2

Released on Sunday, August 23 2026

What's Changed

  • Fixed matching of annotation-xml encoding to be case-insensitive (#​1284) @​arpitjain099
  • Fixed <xmp> usage in <select> elements
  • Added ability to parse immutable byte buffers without a stream (#​1286) @​dv00d00
  • Released 1.7.2 by @​FlorianRappl in Release 1.7.2 AngleSharp/AngleSharp#1288

New Contributors

Full Changelog: AngleSharp/AngleSharp@1.7.1...v1.7.2

1.7.1

Released on Wednesday, August 5 2026

  • Migrated the build system from NUKE to Fallout by @​jafin in Migrate the build system from NUKE to Fallout AngleSharp/AngleSharp#1275
  • Improved WHATWG Url specification (#​802) @​jafin
  • Improved tokenizer read performance (#​1274) @​dv00d00
  • Fixed auxiliary browsing context lifetime (#​1278) @​jafin
  • Fixed duplicated DomName attributes on DOM geometry
  • Fixed document.open() destroying the DOM tree in case of encoding problems (#​1276)
  • Fixed source references having wrong line (#​1280)
  • Released 1.7.1 by @​FlorianRappl in Release 1.7.1 AngleSharp/AngleSharp#1281

Full Changelog: AngleSharp/AngleSharp@1.7.0...v1.7.1

1.7.0

Released on Friday, July 31 2026

  • Improved CSS selector performance (#​1270, #​929) @​lahma
  • Added support for the :host pseudo selector (#​1271)
  • Added support for the DomGeometry spec (#​1193)

1.6.0

Released on Sunday, July 26 2026

  • Improved performance for text tokenization (#​1262) @​dv00d00
  • Improved CSS selector performance
  • Improved observer dispatch during HTML parsing (#​1266) @​dv00d00
  • Improved declaration of unsupported pseudo elements
  • Fixed inconsistent behavior and segfaults on Android Release build (#​1252) @​DevGitPit
  • Fixed CSS attribute selector modifier handling for i / I (case-insensitive) and s / S (case-sensitive)
  • Added API enhancements to expose asynchronous HTML token source (#​1265) @​dv00d00
  • Added bounded stream parsing mode (#​1263) @​dv00d00
  • Added canonicalization of decimal, octal, or hexadecimal IPv4 literals in Url
  • Added parsing of / checks for IPv6 literals in Url
  • Added support for the CSS column combinator (||) selector syntax
  • Added correct identification of CurrentSource in CssMediaElement

Commits viewable in compare view.

Updated Aspire.Hosting.PostgreSQL from 13.1.0 to 13.6.4.

Release notes

Sourced from Aspire.Hosting.PostgreSQL's releases.

13.6.4

What's New in Aspire 13.6.4

Patch release for Aspire 13.6 that improves resource startup reliability, fixes Azure publishing with parameterized enum properties in TypeScript AppHosts, and tightens CLI diagnostic log permissions on Unix.

🐛 Fixes

  • 🖥️ Resources could fail to start after a DCP create request timed out — AppHost now checks whether a resource was created before retrying a timed-out or HTTP 504 request, avoiding a premature FailedToStart state when DCP completed the operation. API operations default to a 40-second timeout with an additional 20-second allowance before the first successful operation, and resource creation has a two-minute recovery budget. These limits can be configured through DcpPublisher:KubernetesApiTimeout, DcpPublisher:KubernetesInitializationAdditionalTimeout, and DcpPublisher:KubernetesCreateRecoveryTimeout. Established watch and log streams are not limited by these operation timeouts. Addresses startup timeouts reported in 13.6. Fixes #​20691. (#​20868, backport of #​20752, @​danegsta)

  • ☁️ TypeScript AppHosts could fail to publish parameterized Azure enum properties — Assigning a bicep().parameter(...) expression to an enum-valued provisioning property, such as an Azure Storage SKU name, now works instead of failing with a type-assignment error. Type checking for literal values and incompatible expression types is preserved. Fixes a scenario introduced with the Azure provisioning proxy feature in 13.6. (#​20767, backport of #​20557, @​sebastienros)

  • 🔒 CLI diagnostic logs now use owner-only permissions on Unix — Log files are restricted to owner read/write access (0600), including reused files, and the dedicated Aspire logs directory uses owner-only access (0700), repairing existing permissions when needed. Newly created custom log directories also use 0700; existing custom parent directories and Windows permission behavior are unchanged. Diagnostic logs can contain sensitive data, including dashboard login URLs, so review them before sharing. (#​21282, backport of #​21276, @​mitchdenny)


Full Changelog: v13.6.3...v13.6.4

Full commit: c89352703f78ae46de90fbf751ed8b52b77b89bf

13.6.3

What's New in Aspire 13.6.3

Patch release for Aspire 13.6 that improves resource orchestration reliability by preventing unread resource watches from stalling resource updates and operations.

🐛 Fixes

  • 🖥️ Resource operations could stall when a watch stopped being read — AppHost now closes abandoned watch connections when setup is canceled and keeps reading resource events even when event handlers are slow. Resource event ordering, lifecycle callback dispatch, and the existing periodic reconnection safeguard are preserved. (#​21002, backport of #​20972, @​danegsta)

  • 🔄 Slow watchers could block other resource updates or watcher shutdown — The bundled Developer Control Plane (DCP) is updated to 0.26.6, which keeps internal lifecycle watches draining and uses bounded, asynchronous watch delivery to prevent unread watches from blocking resource-change publication and unrelated watcher shutdown. (#​21215, @​danegsta; includes microsoft/dcp#​307)


Full Changelog: v13.6.2...v13.6.3

Full commit: 38294b1b31552dae42a516cffa0cbc737ec08976

13.6.2

Full commit: af07e33f8d1ef733645138b3f8e36067d073148d

What's Changed

Full Changelog: microsoft/aspire@v13.6.1...v13.6.2

13.6.1

What's New in Aspire 13.6.1

Patch release for Aspire 13.6 that reduces dashboard CPU usage during sustained metric ingestion, restores scrolling in the Metrics tree, improves dashboard navigation, fixes container exec watch failures, and ensures session-scoped containers are cleaned up when stopping .NET AppHosts on Windows.

🐛 Fixes

  • 📊 Dashboard CPU usage could increase during long-running metric ingestion — Metric retention repeatedly scanned retained history on every insertion, causing steadily increasing CPU usage even with a fixed workload. Cleanup now skips dimensions below capacity and removes only the oldest surplus points when needed. Existing retention limits and exemplar behavior are unchanged, and no configuration changes are required. Regression introduced in 13.6. Fixes #​20725. (#​20747, backport of #​20736, @​JamesNK)

  • 📈 The Metrics tree could not be scrolled — The meter and instrument tree now scrolls when it exceeds the viewport, allowing you to reach and select instruments below the fold. Regression introduced in 13.6. Fixes #​20728. (#​20762, backport of #​20758, @​heyysiri)

  • 🧭 Dashboard navigation could fail after a browser disconnect — Pending page-state updates now persist session state before navigating and skip navigation when the browser has disconnected, avoiding an unhandled navigation failure. The navigation rail's overflow button also has consistent sizing, icon alignment, and hover styling in expanded and collapsed layouts and both light and dark themes. (#​20545, backport of #​20527, @​JamesNK)

  • 🖥️ Container exec watches could terminate shortly after AppHost startup — A stalled DCP watch connection could produce a critical Watch task over Kubernetes ContainerExec resources terminated unexpectedly error and stop subsequent terminal state and log updates from being observed. Watch connection attempts now retry after timeouts, and periodic restarts correctly recreate connections without swallowing unrelated cancellation. Regression introduced in 13.6.0. (#​20664, backport of #​20466, @​radical)

  • 🪟 Session-scoped containers could remain running after stopping a .NET AppHost on Windows — AppHosts launched through dotnet run or dotnet watch now allow DCP to finish resource cleanup during shutdown, including existing Ctrl+C and aspire stop flows. Persistent resources remain unaffected, while direct .NET launches and TypeScript/polyglot AppHosts retain their existing process protection. Fixes #​20495. (#​20514, backport of #​20494, @​danegsta)


Full Changelog: v13.6.0...v13.6.1

Full commit: 3751e615ad660621f2a7aa4c390ef48e08a0eed8

13.6.0

Aspire 13.6.0

Aspire 13.6 brings persistent application history, a refreshed and more interactive dashboard, first-party Java and Rust hosting, and new Azure deployment options. Coordinated .NET builds, portable volume paths, sharper CLI workflows, and more capable editor tooling make it easier to build, debug, and deploy applications across languages.

Highlights

  • 🗃️ Persistent, refreshed dashboard — SQLite-backed telemetry and resource snapshots let you revisit up to ten application runs, with read-only access to completed runs and default retention limits of 100,000 console log messages, structured logs, and traces each. The dashboard now ships as Native AOT and adopts Fluent UI v5 with a collapsible navigation rail.
  • 🖥️ AppHost-owned terminals and database REPLs — Experimental terminal APIs let AppHosts create interactive sessions in a dashboard dock, dialog, or separate window. Opt-in WithRepl() commands open bundled clients for PostgreSQL, MySQL, MongoDB, SQL Server, Redis, and Valkey, while aspire terminal ps and aspire terminal tape play support discovery and repeatable terminal interactions.
  • 🌐 First-party Java and Rust hosting — New Aspire.Hosting.Java and Aspire.Hosting.Rust packages bring Maven, Gradle, Spring Boot, Quarkus, and Cargo applications into the app model, with generated container builds and VS Code debugging. These integrations build on work that originated in the Aspire Community Toolkit.
  • 🛠️ More flexible AppHosts — The prerelease Aspire.Hosting.Dotnet integration coordinates compatible projects into shared restore and build groups and supports .NET SDK container publishing. Portable volume-path environment variables work across local execution and deployment, while TypeScript AppHosts gain standard appsettings.json configuration and Deno runtime support.
  • ⌨️ Sharper CLI workflows — Select launch profiles with aspire run and aspire start, update repository-local CLI manifests with aspire update, create file-based C# AppHosts with aspire init --language csharp --file-based, and export TypeScript API data with aspire sdk export. Terminal commands no longer need a feature flag, Linux certificate trust includes Firefox NSS databases, and aspire stop --force --volumes adds explicit cleanup of Aspire-owned volumes.
  • 💻 More capable VS Code tooling — Coding agents can start and stop AppHosts through the extension, and the Aspire pane exposes deploy, publish, and pipeline actions. Multi-root discovery, worktree-scoped lifecycle operations, preserved launch arguments, clearer debug logs, and missing-debugger guidance make complex workspaces more predictable.
  • ☁️ New Azure options in preview — Azure Connector Namespace models external-service connections and managed MCP server configurations. Azure Container Apps Sandboxes adds isolated sandbox deployments with configurable resource tiers and lifecycle policies, while Azure Container Apps Express offers a simplified environment option for rapid provisioning.
  • ☸️ More expressive, reliable deployments — Experimental Azure Provisioning SDK proxies let polyglot AppHosts customize infrastructure. Deployment state is isolated under ASPIRE_HOME, Kubernetes preserves inherited hostnames and embedded parameter values, and AKS gains persistent-volume provisioning and more reliable cleanup.
  • 🔌 Expanded integrations — Experimental Deno hosting and MongoDB replica sets join Foundry Toolboxes, remote Foundry Local endpoints, Blazor WebAssembly debugging, and configurable Dev Tunnel expiration. Azure Cosmos DB and AI Inference client integrations gain health checks, and the vNext Cosmos DB emulator sends its own telemetry to the dashboard.

⚠️ Breaking changes

Notable changes include automatic TLS for local MongoDB servers when a certificate is available, the Linux-based vNext Cosmos DB emulator becoming the default, new Azure Front Door origin names that can require cleanup of existing origins, portable connection-string environment-variable aliases on stricter deployment targets, and experimental terminal types moving from Aspire.Hosting.Terminals to Aspire.Hosting.ApplicationModel.

See the full list and migration guidance in the Aspire 13.6 breaking changes.

📖 Learn more

For complete details, examples, migration guidance, and everything new in this release, read What's new in Aspire 13.6.

Thank you to all the community contributors who helped make Aspire 13.6 possible! 💜


Full Changelog: v13.5.4...v13.6.0

Full commit: 56f3e9c0d216c0c7069dabb49dd0464e4827744f

13.5.4

What's New in Aspire 13.5.4

Patch release for Aspire 13.5 that fixes Kafka health-check resource leaks, DevTunnel errors with automatically selected regions, misleading Azure emulator dashboard entries, and unintended changes to generated starter apps, plus Homebrew compatibility and Radius API diagnostic updates.

🐛 Fixes

  • 📨 Kafka health checks leaked producers and polling threads — Each AppHost health-check execution created a new Kafka producer without disposing it, accumulating background threads over time. Health checks now reuse a producer per Kafka resource and dispose it with the AppHost, while keeping multiple Kafka resources independently configured. Fixes #​20091. (#​20094, backport of #​20092, @​davidfowl)

  • 🌐 DevTunnels could fail when the region was selected automatically — Tunnel setup and health checks now use the cluster-qualified tunnel ID returned by the DevTunnel CLI for port operations and access queries. This fixes failures when a bare tunnel ID cannot be resolved for those operations. Regression introduced in 13.3. Fixes #​18790. (#​19853, backport of #​19230, @​Vladipz)

  • ☁️ Emulator-only AppHosts showed an unused Azure environment — The dashboard now hides the azure-environment resource when no Azure resources require cloud provisioning, instead of leaving it visible in Not started. It remains visible for apps that combine local emulators with resources requiring Azure provisioning. No AppHost changes are needed. Fixes #​19617. (#​19998, backport of #​19843, @​eerhardt)

  • 🧩 Starter app generation could alter unrelated JavaScript values — Dynamic port replacement could also replace matching numeric literals in bundled JavaScript, including Bootstrap timing values. Port substitutions are now restricted to localhost: URLs, preserving the original library files while still configuring the requested ports. Fixes #​20030. (#​20110, backport of #​20031, @​bart-vmware, @​JamesNK)

  • 🍎 Updated the Aspire Homebrew cask for Homebrew 6.x — Replaced deprecated cask URL and post-install syntax with the supported equivalents, resolving compatibility issues with current Homebrew while preserving install-channel metadata. (#​20119, backport of #​19965, @​askpt, @​joperezr)

  • 🧪 Radius cloud-provider callback interfaces now carry the experimental diagnostic — IAwsRadiusProviderBuilder and IAzureRadiusProviderBuilder are now marked with ASPIRERADIUS003, matching the existing WithAwsProvider and WithAzureProvider methods. Code referencing these interfaces directly must now acknowledge the same experimental API diagnostic. (#​19874, @​sebastienros)


Full Changelog: v13.5.3...v13.5.4

Full commit: 9c1b401dd67746739044f68959cbf4d3d7af93a6

13.5.3

What's New in Aspire 13.5.3

Patch release for Aspire 13.5 that fixes Dashboard Graph view crashes for resources with multi-path icons and restores missing public URLs for DevTunnel resources.

🐛 Fixes

  • 📊 Dashboard Graph view could crash for Azure Blob resources — Resources such as those created with AddBlobs use icons containing multiple SVG paths, which caused an XML parsing exception and broke the dashboard circuit. The graph now combines multi-path icons correctly. Regression introduced in 13.5. Fixes #​19489. (#​19585, backport of #​19579, @​sebastienros)

  • 🌐 DevTunnel public URLs were missing from the Dashboard and MCP snapshots — DevTunnel port resources could report Running and Healthy while showing no public URLs. Proxyless port allocation is now limited to compute and container resources, allowing DevTunnels to publish their actual public endpoints. Regression introduced in 13.5. Fixes #​19496. (#​19625, backport of #​19590, @​karolz-ms, @​danegsta)

🏷️ Housekeeping

  • 🚀 Bumped branding to 13.5.3

Full Changelog: v13.5.2...v13.5.3

Full commit: b5f143315ffb6968ea939a9978797a5b20e4c688

13.5.2

What's New in Aspire 13.5.2

Patch release for Aspire 13.5 that removes an unused native helper binary from the Windows CLI archives so 13.5 servicing releases stay publishable to WinGet.

🐛 Fixes

  • 🪟 Windows CLI archives shipped an unused ~4.9 MB hex1bpty.exe — The Windows CLI archives (aspire-cli-win-{x64,arm64}-*.zip) bundled Hex1b's out-of-process PTY host, which Aspire never executes (DCP owns every pseudo-terminal Aspire surfaces). Besides the wasted download, the extra unexplained executable stalled the WinGet publish, since every binary in the archive goes through executable and malware validation. A build-only MSBuild target now drops the file from the CLI publish output; Unix native assets are unaffected. Regression new in 13.5. ([#​19557]([release/13.5] Exclude unused hex1bpty.exe from published CLI archives microsoft/aspire#19557), backport of #​19554, @​mitchdenny)

🏷️ Housekeeping

  • 🚀 Bumped branding to 13.5.2

Full Changelog: [v13.5.1...v13.5.2](microsoft/aspire@v13.5.1...v13.5.2)

Full commit: [a22cec24d76e764b3681977e314ab4a0aeed0240](microsoft/aspire@a22cec2)

13.5.1

What's New in Aspire 13.5.1

Patch release for Aspire 13.5 fixing a TypeScript/Java polyglot AppHost compatibility regression when running the 13.5 SDK under an older (13.4.x) CLI, plus a DCP update and release-pipeline housekeeping.

🐛 Fixes

  • 🍎 Polyglot AppHosts could crash on startup on macOS — On macOS, polyglot (TypeScript/Python/Java/Go/Rust) AppHosts could crash during startup due to an interaction between how DCP's Go runtime forks detached processes and how .NET Native AOT installs its signal handlers. Updated DCP (Developer Control Plane) to 0.25.13 to resolve the crash. ([#​19528]([release/13.5] [main] Update dependencies from microsoft/dcp microsoft/aspire#19528))

  • 🔗 Polyglot AppHosts on the 13.5 SDK crashed under an older CLI with MissingMethodException — A TypeScript or Java AppHost built with the 13.5 SDK failed to start when launched by an older (13.4.x) CLI, because the newer codegen called Aspire.TypeSystem members that don't exist in the CLI's older contract. Code generation now probes for these additive capabilities before using them, so older CLIs skip only the unsupported feature and startup succeeds. Regression introduced in 13.5 by #​19365. Fixes #​19503. ([#​19524]([release/13.5] Preserve TypeSystem compatibility with older CLIs microsoft/aspire#19524), backport of #​19506, @​adamint)

🏷️ Housekeeping

Full Changelog: [v13.5.0...v13.5.1](microsoft/aspire@v13.5.0...v13.5.1)

Full commit: [69db530a4816698cf1d5fa4557933e0ac4f127c6](microsoft/aspire@69db530)

13.5.0

Aspire 13.5.0

Aspire 13.5 is a developer-experience release focused on a richer, more interactive AppHost, closer C# and TypeScript parity, sharper tooling, more flexible deployment modeling, and a broad set of runtime-stability improvements.

Highlights

  • 💬 Richer AppHost interactions — The Interaction Service now works across C# and TypeScript AppHosts with stable prompts and dynamic inputs, file uploads, progress dialogs, notifications, and user-defined resource command arguments that surface as dashboard controls and CLI options.
  • 🖥️ Interactive terminal sessions — The experimental WithTerminal() API lets resources host REPLs, shells, TUIs, and other interactive programs directly in the dashboard, with an opt-in aspire terminal CLI command for attaching from your shell.
  • 🌐 TypeScript AppHost is generally available — Polyglot AppHosts no longer require the ASPIREATS001 experimental diagnostic and gain custom health checks, container file copying, HTTPS developer certificates, faster startup, and several reliability fixes that further close the gap with C#.
  • 🛠️ CLI installation and reliability — The Aspire CLI is available through npm and Nix alongside Homebrew, WinGet, mise, and NuGet. New C# AppHosts enable the CLI bundle by default, while aspire stop --force, aspire update --migrate, aspire doctor, docs search, signal handling, and stale-socket cleanup all improve day-to-day workflows.
  • 🎨 Refreshed dashboard — The dashboard adopts official Aspire branding and a new accessible design-token system, with timestamp and exact numeric telemetry filters, console-log text search, clearer reconnect and health-check experiences, and correct telemetry streaming while filters are active.
  • 💻 Rebranded VS Code extension — The extension is now named Aspire and adds an in-editor dashboard, Bun and MAUI debugging, resource commands in the tree view, discovered AppHosts, improved parameter handling, and more efficient workspace discovery.
  • ☸️ More expressive deployments — Kubernetes and AKS gain first-class persistent volumes, Azure Container Apps adds deterministic unique resource naming, Azure environments support delegated subnets, and Docker Compose can publish Blazor gateways and configure shared memory.
  • ☁️ Expanded hosting integrations — Azure resources can be referenced across resource groups, subscriptions, and tenants; the new Aspire.Hosting.Dotnet package models .NET projects by path; Radius deployment arrives in preview; and Foundry Local, Redis modules, dev tunnels, Go debugging, and other integrations gain new capabilities.

⚠️ Breaking changes

Notable changes include hosting context ServiceProvider properties being renamed to Services, PublishAsConnectionString becoming obsolete in favor of AddConnectionString, removal of aspire ps --resources and --include-hidden in favor of aspire describe, earlier proxyless endpoint port allocation, deprecation of the GitHub Models integration, removal of the dashboard AI Assistant, and opt-in rather than automatic dashboard launch from the VS Code extension.

See the full list and migration guidance in the Aspire 13.5 breaking changes.

📖 Learn more

For complete details, examples, migration guidance, and everything new in this release, read What's new in Aspire 13.5.

Thank you to all the community contributors who helped make Aspire 13.5 possible! 💜


Full Changelog: v13.4.6...v13.5.0

Full commit: e076d8e427cb3afb528dbd605acd74c3aea69f94

13.4.6

What's New in Aspire 13.4.6

Patch release for Aspire 13.4 fixing polyglot AppHost code generation binding when CLI and SDK versions diverge, resource service port collision in --isolated mode, and a MongoDB.Driver dependency update.

🐛 Fixes

  • 🔗 Polyglot AppHost code generation silently failed when CLI and SDK versions diverged — Aspire.TypeSystem used a floating strong-name AssemblyVersion that changed with every build. When the installed Aspire CLI was built at a different version than the AppHost's SDK, the CLR couldn't satisfy the strong-name bind and every code generator (TypeScript, Python, Java, Go, Rust) was silently dropped, surfacing as No code generator found for language: <lang>. The AssemblyVersion is now frozen at a stable constant so any compatible CLI/SDK pair on 13.4 binds successfully. Relates to #​18110 and #​17910. (#​18160, @​sebastienros)

  • 🔌 Multiple AppHosts started with --isolated collided on the resource service port — Both instances tried to bind to the same fixed port from ASPIRE_RESOURCE_SERVICE_ENDPOINT_URL, causing an "address already in use" error on the second instance. DashboardServiceHost now binds to port 0 on loopback when RandomizePorts is true (set by --isolated), letting the OS assign a unique port per instance. (#​18341, @​JamesNK)

  • 🍃 MongoDB.Driver updated to 3.9.0 — Removes a wrongly pinned SharpCompress transitive dependency and uses the corrected Snappier transitive. Fixes #​17981. (#​18279, @​Falco20019)

🏷️ Housekeeping


Full Changelog: v13.4.5...v13.4.6

Full commit: 87fe259e4fc244c599019a7b1304c85a1488f248

Generated by Generate release notes for a new stable Aspire release · 131 AIC · ⌖ 13.5 AIC · ⊞ 37.4K

13.4.5

What's New in Aspire 13.4.5

Patch release for Aspire 13.4 clearing a transitive MessagePack security advisory, tightening CLI validation for Playwright configuration, and adding coding-agent detection to CLI telemetry.

🐛 Fixes

  • 🛡️ Bumped StreamJsonRpc to 2.25.29 to clear the MessagePack GHSA-hv8m-jj95-wg3x (CVE-2026-48109) NU1903 advisory — The transitive MessagePack 2.5.192 dependency pulled in via StreamJsonRpc 2.22.23 fell within the advisory's vulnerable LZ4 decompression range. Aspire does not use MessagePackFormatter or LZ4 — all StreamJsonRpc calls use SystemTextJsonFormatter over local Unix sockets — so the vulnerability was not reachable in practice. The bump clears the NU1903 warning for consumers of the Aspire.Hosting package. (#​18204, @​mitchdenny)
  • 🎭 playwrightCliVersion values that are not valid SemVer 2.0 now fail fast with a clear diagnostic — Previously an invalid override (range expression, dist-tag like latest, or a v-prefixed string) would surface as a generic npm resolution failure. The value is now validated with strict SemVer parsing at startup; an error naming the configuration key and the offending value is emitted immediately. (#​18205, @​mitchdenny)
  • 🤖 CLI telemetry now detects and reports the calling coding agent — When the Aspire CLI is invoked from inside a known coding agent environment (GitHub Copilot CLI, VS Code Copilot agent, etc.) the agent name is included in the main CLI telemetry event. GitHub Copilot CLI is specifically identified as copilot-cli. (#​18240, @​damianedwards)

🏷️ Housekeeping

  • 📄 Refreshed the @​microsoft/aspire-cli npm package README to be TypeScript-only — updated examples to the current ts-starter template (apphost.mts / aspire.mjs), added a backing-services snippet showing aspire add for PostgreSQL and Redis, and documented aspire dashboard run as a standalone dashboard option. (#​18221, @​adamint)

Full Changelog: v13.4.4...v13.4.5

Full commit: 73114e86c64aeb9f3f3c7da8e37df1ae4281b27e

Generated by Generate release notes for a new stable Aspire release · ● 4.4M

13.4.4

What's New in Aspire 13.4.4

Patch release for Aspire 13.4 with improved DCP connection reliability during request execution and consistent ExcludeFromMcp() filtering across all CLI MCP tools.

🐛 Fixes

  • 🔌 DCP requests could fail permanently when the connection dropped mid-request — If the underlying DCP channel closed while a request was in flight, the error was surfaced directly instead of being retried. Reconnection is now attempted as part of the DCP request retry path so transient disconnections recover automatically without surfacing errors. (#​18096, @​karolz-ms)
  • 🔍 Resources marked with ExcludeFromMcp() were not consistently filtered from CLI MCP tools — Resources with the resource.excludeFromMcp property were not excluded uniformly from all CLI MCP tool results. list_resources, list_console_logs, execute_resource_command, list_structured_logs, list_traces, and list_trace_structured_logs all now honor the exclusion, preventing excluded resources and their telemetry from appearing in agent context. (#​18150, @​JamesNK)

🏷️ Housekeeping

  • 📦 Improved npm CLI package metadata and hardened npm publish validation in the release pipeline. (#​18093, @​adamratzman)

Full Changelog: v13.4.3...v13.4.4

Full commit: ccc566c5ab3285c9beb8f38ede34734bb477c029

13.4.3

What's New in Aspire 13.4.3

Patch release for Aspire 13.4 with a fix for persistent container endpoint allocation regressions introduced in 13.4.

🐛 Fixes

  • 🔌 Persistent container endpoints had incorrect default behavior — Persistent containers were defaulting to proxyless endpoint behavior instead of the proxied behavior used by normal containers. This caused integrations that depend on endpoint allocation before resource startup (such as the KeyVault emulator) to fail. Persistent containers now default to proxied endpoints matching normal container behavior; opt out with isProxied: false or WithEndpointProxySupport(false). Proxyless container endpoints with only a targetPort specified now also resolve immediately to that port instead of waiting for delayed allocation. (#​17960, @​danegsta)

🏷️ Housekeeping

  • 🛠️ Unblocked WinGet manifest publishing on locked-down 1ES agents and updated manifest tags (#​17958)

Full Changelog: microsoft/aspire@v13.4.2...v13.4.3

Full commit: 4f218933552e18ff2874d1b6d5dc3fe671e3b6d9

Generated by Generate release notes for a new stable Aspire release · ● 4.7M

13.4.2

What's New in Aspire 13.4.2

Patch release for Aspire 13.4 with a fix for Redis persistent container deadlock on startup when using TLS.

🐛 Fixes

  • 🔴 Redis with WithLifetime(ContainerLifetime.Persistent) could deadlock on startup — Redis TLS startup arguments used the public/allocated host ports instead of the internal target ports. When the public port differed from the target port (or was not yet allocated) the container would listen on an unexpected port and become unreachable. The TLS and non-TLS startup arguments now bind to target ports, matching what Redis expects internally. Fixes #​17822. (#​17827, backported via #​17850, @​danegsta)

🏷️ Housekeeping

  • 🚀 Bumped branding to 13.4.2 (#​17876)

Full Changelog: microsoft/aspire@v13.4.1...v13.4.2

Full commit: d7d0b6759ce4b936c76bc4775814d27db560dd6d

Generated by Generate release notes for a new stable Aspire release · ● 5M

13.4.1

What's New in Aspire 13.4.1

Patch release for Aspire 13.4 with fixes for explicit-start resource lifecycle callbacks, Redis persistent container startup, proxyless endpoint allocation, and a duplicated profiles block in the empty C# AppHost template.

🐛 Fixes

  • ⏱️ Explicit-start resources triggered lifecycle callbacks too early — Session-scoped resources marked with WithExplicitStart() were having their execution configuration callbacks (environment variables, arguments, certificates) evaluated at AppHost startup instead of at manual start. This meant user-interaction callbacks such as WithEnvironment(ctx => PromptForValueAsync(...)) were called before the user triggered the resource. DCP registration is now deferred until the user manually starts the resource; persistent explicit-start resources still register immediately but patch the existing DCP record to Start = true rather than deleting and recreating it. Fixes #​17813. (#​17825, backported via #​17826, @​danegsta)
  • 🔴 Redis with WithLifetime(ContainerLifetime.Persistent) could deadlock on startup — Redis TLS startup arguments used the public/allocated host ports instead of the internal target ports. When the public port differed from the target port (or was not yet allocated) the container would listen on an unexpected port and become unreachable. The TLS and non-TLS startup arguments now bind to target ports, matching what Redis expects internally. Fixes #​17822. (#​17827, backported via #​17850, @​danegsta)
  • 🔌 Proxyless container endpoint could hang when resolved before container creation — Referencing a proxyless container endpoint in an environment variable callback (before the container port spec was finalized) could deadlock. An on-demand allocation path now commits the target port as the fallback host port in that case; once BuildContainerPorts runs, normal DCP dynamic port assignment takes over for any later resolution. (#​17851, backported via #​17859, @​danegsta)
  • 📄 Empty C# AppHost template emitted duplicate profiles block — aspire new aspire-empty on 13.4 produced an aspire.config.json with a profiles block that duplicated the content already present in apphost.run.json, causing redundant launch configuration. The embedded template now contains only the required appHost.path binding; profile configuration lives exclusively in apphost.run.json. Fixes #​17660. (#​17781, backported via #​17820, @​mitchdenny)

🏷️ Housekeeping

  • 📦 Added Aspire CLI npm package to the release pipeline so the npm distribution is published as part of stable releases. (#​17297, backported via #​17766, @​adamint)
  • 🚀 Bumped branding to 13.4.1 (#​17819)

Full Changelog: microsoft/aspire@v13.4.0...v13.4.1

Full commit: cf985fa817dd5863e7f62eb74fa1725ab5069ed2

Generated by Generate release notes for a new stable Aspire release · ● 1.0.40

Generated by Generate release notes for a new stable Aspire release · ● 3.9M

13.4.0

Aspire 13.4.0

Aspire 13.4 brings major improvements to Foundry hosted agents, the Aspire skills system, CLI reliability, and TypeScript AppHost stability — with cross-compute-environment deployment now working end-to-end and TypeScript AppHost support — Aspire's polyglot story — reaching general availability (GA).

Highlights

  • 🎉 TypeScript AppHost is now GA — First introduced as a preview in an earlier version of Aspire, the TypeScript AppHost — Aspire's polyglot story — has reached the quality bar for general availability and is now officially supported for production use alongside C#. As part of GA, the experimental markers on the Azure TypeScript AppHost (ATS) APIs have been removed and the ATS surface area is stable for 13.4.
  • 🤖 Foundry hosted agents — Protocol selection (responses / invocations) is now configurable from both C# and TypeScript AppHosts. Cross-compute-environment deployments (e.g., a Foundry hosted agent + an AKS consumer) now wire up correctly: endpoint resolution and the required Azure AI User RBAC role assignment on the Foundry account are generated automatically — no manual az role assignment create steps needed.
  • 🛠️ Aspire skills catalog from bundle — aspire agent init now drives its installable skill catalog from the bundle manifest, surfacing all six bundled skills (previously only three were visible). An embedded snapshot means the full catalog is available even in airgapped / disconnected environments.
  • 🔧 CLI reliability — Multiple CLI fixes: implicit-channel discovery restored, aspire stop no longer falsely reports failure on Unix, aspire ps no longer includes raw resource data (use aspire describe for detailed state), aspire new prefers the current CLI template version, friendly error for aspire do --list-steps without a step argument, and improved --search option description with documentation link.
  • ⌨️ TypeScript AppHost — Fixed a deadlock that occurred when lazy options callbacks invoked async methods; dev-localhost resource service URLs are now accepted for local development without extra configuration.
  • 📊 Dashboard — Summary log formatting improved for readability, dotnet watch dashboard auto-launch signal restored, and dynamic-port handling fixed for DistributedApplicationTestingBuilder.
  • ☸️ Kubernetes — The Helm CLI minimum version (≥ 4.2.0) is now validated before a Kubernetes deploy, giving a clear error instead of a cryptic failure.
  • ⚠️ Aspire.Hosting.Blazor ships as preview in 13.4 — A packaging issue with the Blazor gateway scripts means the package is intentionally marked preview for this release. Full stable support is targeted for 13.5.

⚠️ Notable changes

  • aspire ps no longer includes raw resource data in its output. Use aspire describe <resource> to inspect detailed resource state.
  • Foundry hosted agent builder API shape updated — see #​17545 and #​17669 for the updated C# and TypeScript signatures.
  • Aspire.Hosting.Blazor is preview-versioned in 13.4 (SuppressFinalPackageVersion=true). A fix for the addBlazorGateway gateway script resolution error in TypeScript AppHosts is tracked in #​17685.

📖 Learn more

For the full details on everything in this release, check out the What's new in Aspire 13.4 documentation.

Thank you to all the community contributors who helped make Aspire 13.4 possible! 💜


Full Changelog: microsoft/aspire@v13.3.5...v13.4.0

Full commit: becb48e2d61099e35ae336d527d3875e928d6594

Generated by Generate release notes for a new stable Aspire release · ● 6.5M

13.3.5

What's New in Aspire 13.3.5

Patch release for Aspire 13.3 with fixes for the Azure provisioning location prompt and an Aspire CLI named-pipe timeout on Linux with .NET SDK 10.0.300.

🐛 Fixes

  • 📍 Azure provisioning location prompt not populated — Selecting an existing resource group during aspire publish now correctly populates dependent server-controlled fields (such as Location). Previously, server-provided values for disabled inputs were discarded, leaving those fields blank. (#​17278, backported via #​17291)
  • 🔧 Aspire CLI named-pipe timeout on Linux with .NET SDK 10.0.300 — The Aspire CLI was forcing DOTNET_CLI_USE_MSBUILD_SERVER=1 for all dotnet run/dotnet build invocations. On Linux with SDK 10.0.300 this caused a named-pipe timeout that prevented aspire run from building the AppHost. The forced override has been removed so the SDK chooses MSBuild server behavior. Fixes #​16849. (#​17313, backported via #​17314)

🏷️ Housekeeping

  • ⬆️ Skipped log publish for WinGet/Homebrew installer pipeline jobs to fix Prepare Installers stage failures (#​17134)
  • 🚀 Bumped branding to 13.3.5 (#​17315)

Full Changelog: microsoft/aspire@v13.3.4...v13.3.5

Full commit: 70b33bcb5f64c75e3ab6f57616545f35bd43dc81

Generated by Generate release notes for a new stable Aspire release · ● 4.3M

13.3.4

What's New in Aspire 13.3.4

Patch release for Aspire 13.3 with a fix for the Aspire skill description exceeding agent host limits.

🐛 Fixes

  • 📝 Aspire skill description too long for agent hosts — The SKILL.md generated by aspire agent init included a frontmatter description that exceeded the 1024-character limit enforced by agent hosts such as Codex and Copilot CLI, causing the Aspire skill to fail to load. The bundled skill description has been shortened to stay within the limit. (#​17183, backported via #​17188)

🏷️ Housekeeping

  • 🚀 Bumped branding to 13.3.4 (#​17215)

Full commit: 75080796af797483231a9da2d1642b5130617565

Generated by Generate release notes for a new stable Aspire release · ● 3.6M

13.3.3

What's New in Aspire 13.3.3

Patch release for Aspire 13.3 with fixes for debug log level leaking into user resources, Keycloak HTTPS endpoint token invalidation, and endpoint materialization in HostResourceWithEndpoints.

🐛 Fixes

  • 🔇 Debug log level leaking into user resources — Logging__LogLevel__Default=Debug set by the app host was being inherited by all user resources, silently changing their logging verbosity. The app host now uses ASPIRE_APPHOST_LOGLEVEL instead, which is scoped to Aspire processes only. (#​17071, backported via #​17078)
  • 🔑 Keycloak HTTPS primary endpoint — Fixed a regression where Keycloak tokens became invalid after an app host restart because the HTTPS endpoint port was dynamic. When developer certificates are enabled, Keycloak's primary endpoint is now upgraded to HTTPS directly, and the endpoint name is set to http to enable standard http+https:// service discovery URLs. (#​17058, backported via #​17063)
  • 🔌 Endpoint materialization in HostResourceWithEndpoints — Endpoints configured via HostResourceWithEndpoints are now correctly materialized, ensuring endpoint resolution and service discovery work as expected. (#​17091, backported via #​17092)

🏷️ Housekeeping

  • ⬆️ Bumped DCP (Microsoft.DeveloperControlPlane) from 0.23.5 → 0.23.6 — includes fixes for Kubernetes OpenAPI generator types that caused [SHOULD NOT HAPPEN] failed to update managedFields errors. (#​17070)
  • 🚀 Bumped branding to 13.3.3 (#​17088)

Full commit: a4615e7c6def6cba4703cdbd84009cd3da9a261b

13.3.2

What's New in Aspire 13.3.2

Patch release for Aspire 13.3 with a fix for container tunnel startup when tunnel-dependent containers use WaitFor().

🐛 Fixes

  • 🚇 Fix WaitFor() for tunnel-dependent containers — The container tunnel implementation that shipped in Aspire 13.3 deadlocked at startup when tunnel-using containers waited on other resources, because resource waits blocked ResourceStarting before the tunnel initialization could complete. Container and tunnel startup have been refactored to cooperate correctly, and additional tunnel-dependent containers can now be started at any point during the application lifecycle. Also improves error reporting for container tunnel failures. (#​16988, backported via #​16993)

🏷️ Housekeeping

  • 🚀 Bumped branding to 13.3.2 (#​17053)

13.3.1

Aspire 13.3.1

What's New in Aspire 13.3.1

Patch release for Aspire 13.3 with a regression fix for aspire run and a DCP bump.

🐛 Fixes

  • 🏃 aspire run compute environment validation — Skip compute environment validation in run mode so customers no longer hit Resource '<name>' is configured to publish as an Azure Container App, but there are no 'AzureContainerAppEnvironmentResource' resources. Ensure you have added one by calling 'AddAzureContainerAppEnvironment'. errors during local runs. The check is now only performed in publish mode, matching pre-13.3 behavior. (#​16945, backported via #​16952)

🏷️ Housekeeping

  • ⬆️ Bumped DCP (Microsoft.DeveloperControlPlane) from 0.23.4 → 0.23.5 (#​16944)
  • 🌐 Updated localization resources (#​16602)
  • 🚀 Bumped branding to 13.3.1 (#​16951)

13.3.0

Aspire 13.3.0

Aspire 13.3 is here! 🚀 This release is packed with new ways to deploy, debug, and build distributed apps — including aspire destroy, browser telemetry in the dashboard, Kubernetes deployment, first-class JavaScript publishing, and major TypeScript AppHost parity
improvements.

Highlights

  • 🧹 Clean teardown — New aspire destroy tears down Azure, Kubernetes, and Docker Compose deployments, and pipeline summaries make deploy/publish/destroy runs easier to follow.
  • 🔍 Frontend telemetry — Aspire.Hosting.Browsers captures browser console logs, network requests, and screenshots right in the Aspire dashboard.
  • ☸️ Kubernetes deploy preview — aspire deploy can now generate Helm-based Kubernetes deployments, with first-class Ingress and Gateway API routing.
  • 🟨 JavaScript publishing — New PublishAs* methods support static sites, Node servers, npm-script apps, Next.js, Vite, Bun, Yarn, and pnpm.
  • 🌐 TypeScript AppHost parity — Unified withEnvironment, Docker Compose hooks, endpoint expressions, Azure Container Apps domains, and more close the gap with C# AppHosts.
  • 🛠️ CLI upgrades — Run the standalone dashboard with aspire dashboard run, install the CLI as a NativeAOT `dotne...

Description has been truncated

Dependabot will resolve any conflicts with this PR as long as you don't alter it ...

Description has been truncated

Bumps AngleSharp from 1.5.2 to 1.8.6
Bumps Aspire.Hosting.PostgreSQL from 13.1.0 to 13.6.4
Bumps Aspire.Hosting.RabbitMQ from 13.1.0 to 13.6.4
Bumps Aspire.Hosting.Redis from 13.1.0 to 13.6.4
Bumps Aspire.Hosting.Testing from 13.1.0 to 13.6.4
Bumps Azure.Identity from 1.11.4 to 1.21.0
Bumps Azure.ResourceManager from 1.13.2 to 1.14.0
Bumps Azure.ResourceManager.KeyVault from 1.3.3 to 1.5.0
Bumps Azure.Security.KeyVault.Certificates from 4.6.0 to 4.9.2
Bumps Azure.Security.KeyVault.Keys from 4.7.0 to 4.10.2
Bumps Azure.Security.KeyVault.Secrets from 4.6.0 to 4.11.2
Bumps Discord.Net from 3.18.0 to 3.20.2
Bumps FluentAssertions from 8.3.0 to 8.11.0
Bumps FluentValidation from 12.1.1 to 12.2.0
Bumps FluentValidation.DependencyInjectionExtensions from 12.1.1 to 12.2.0
Bumps MailKit from 4.16.0 to 4.18.2
Bumps MassTransit from 8.3.6 to 8.5.12
Bumps MassTransit.EntityFrameworkCore from 8.3.6 to 8.5.12
Bumps MassTransit.RabbitMQ from 8.3.6 to 8.5.12
Bumps Microsoft.AspNetCore.Authentication.JwtBearer from 10.0.0 to 10.0.14
Bumps Microsoft.AspNetCore.Authentication.MicrosoftAccount from 10.0.0 to 10.0.14
Bumps Microsoft.AspNetCore.Identity.EntityFrameworkCore from 10.0.0 to 10.0.14
Bumps Microsoft.AspNetCore.Mvc.Testing from 10.0.0 to 10.0.14
Bumps Microsoft.AspNetCore.OpenApi from 10.0.0 to 10.0.14
Bumps Microsoft.EntityFrameworkCore from 10.0.0 to 10.0.14
Bumps Microsoft.EntityFrameworkCore.Design from 10.0.0 to 10.0.14
Bumps Microsoft.EntityFrameworkCore.InMemory from 10.0.0 to 10.0.14
Bumps Microsoft.EntityFrameworkCore.Relational from 10.0.0 to 10.0.14
Bumps Microsoft.EntityFrameworkCore.Sqlite from 10.0.0 to 10.0.14
Bumps Microsoft.Extensions.Compliance.Redaction from 10.2.0 to 10.11.0
Bumps Microsoft.Extensions.Configuration from 10.0.0 to 10.0.14
Bumps Microsoft.Extensions.DependencyInjection from 10.0.0 to 10.0.14
Bumps Microsoft.Extensions.Hosting from 10.0.0 to 10.0.14
Bumps Microsoft.Extensions.Hosting.WindowsServices from 10.0.0 to 10.0.14
Bumps Microsoft.Extensions.Http.Resilience from 10.2.0 to 10.11.0
Bumps Microsoft.Extensions.Logging.Abstractions from 10.0.0 to 10.0.14
Bumps Microsoft.Extensions.Logging.EventLog from 10.0.0 to 10.0.14
Bumps Microsoft.Extensions.Options.DataAnnotations from 10.0.0 to 10.0.14
Bumps Microsoft.Extensions.Telemetry from 10.2.0 to 10.11.0
Bumps Microsoft.Extensions.TimeProvider.Testing from 10.2.0 to 10.11.0
Bumps Microsoft.Graph from 5.78.0 to 5.105.0
Bumps Microsoft.IdentityModel.JsonWebTokens from 8.14.0 to 8.23.0
Bumps Microsoft.NET.Test.Sdk from 17.12.0 to 17.14.1
Bumps Microsoft.OpenApi from 2.7.6 to 2.13.0
Bumps Npgsql.EntityFrameworkCore.PostgreSQL from 10.0.0 to 10.0.3
Bumps OpenIddict.AspNetCore from 7.0.0 to 7.7.2
Bumps OpenIddict.EntityFrameworkCore from 7.0.0 to 7.7.2
Bumps OpenIddict.Validation.AspNetCore from 7.0.0 to 7.7.2
Bumps OpenTelemetry.Api from 1.15.3 to 1.20.1
Bumps OpenTelemetry.Exporter.OpenTelemetryProtocol from 1.15.3 to 1.20.1
Bumps OpenTelemetry.Extensions.Hosting from 1.15.3 to 1.20.1
Bumps OpenTelemetry.Instrumentation.AspNetCore from 1.14.0 to 1.20.1
Bumps OpenTelemetry.Instrumentation.Http from 1.14.0 to 1.20.1
Bumps OpenTelemetry.Instrumentation.Runtime from 1.14.0 to 1.20.1
Bumps OpenTelemetry.Instrumentation.StackExchangeRedis from 1.0.0-rc9.14 to 1.0.0-rc9.15
Bumps Scalar.AspNetCore from 2.12.20 to 2.18.3
Bumps Spectre.Console from 0.49.1 to 0.57.2
Bumps Spectre.Console.Cli from 0.49.1 to 0.57.2
Bumps SQLitePCLRaw.bundle_e_sqlite3 to 2.1.13, 2.1.14
Bumps StackExchange.Redis from 2.7.27 to 2.13.17
Bumps System.CommandLine from 2.0.0-beta4.22272.1 to 2.0.14
Bumps System.IdentityModel.Tokens.Jwt from 8.14.0 to 8.23.0
Bumps xunit from 2.9.2 to 2.9.3
Bumps Xunit.SkippableFact from 1.5.23 to 1.5.85

---
updated-dependencies:
- dependency-name: AngleSharp
  dependency-version: 1.8.6
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Aspire.Hosting.PostgreSQL
  dependency-version: 13.6.4
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Aspire.Hosting.RabbitMQ
  dependency-version: 13.6.4
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Aspire.Hosting.Redis
  dependency-version: 13.6.4
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Aspire.Hosting.Testing
  dependency-version: 13.6.4
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Azure.Identity
  dependency-version: 1.21.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Azure.ResourceManager
  dependency-version: 1.14.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Azure.ResourceManager.KeyVault
  dependency-version: 1.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Azure.Security.KeyVault.Certificates
  dependency-version: 4.9.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Azure.Security.KeyVault.Keys
  dependency-version: 4.10.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Azure.Security.KeyVault.Secrets
  dependency-version: 4.11.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Discord.Net
  dependency-version: 3.20.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: FluentAssertions
  dependency-version: 8.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: FluentValidation
  dependency-version: 12.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: FluentValidation.DependencyInjectionExtensions
  dependency-version: 12.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: MailKit
  dependency-version: 4.18.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: MassTransit
  dependency-version: 8.5.12
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: MassTransit.EntityFrameworkCore
  dependency-version: 8.5.12
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: MassTransit.RabbitMQ
  dependency-version: 8.5.12
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.AspNetCore.Authentication.JwtBearer
  dependency-version: 10.0.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.AspNetCore.Authentication.MicrosoftAccount
  dependency-version: 10.0.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.AspNetCore.Identity.EntityFrameworkCore
  dependency-version: 10.0.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.AspNetCore.Mvc.Testing
  dependency-version: 10.0.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.AspNetCore.OpenApi
  dependency-version: 10.0.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.EntityFrameworkCore
  dependency-version: 10.0.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.EntityFrameworkCore.Design
  dependency-version: 10.0.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.EntityFrameworkCore.InMemory
  dependency-version: 10.0.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.EntityFrameworkCore.Relational
  dependency-version: 10.0.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.EntityFrameworkCore.Sqlite
  dependency-version: 10.0.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: SQLitePCLRaw.bundle_e_sqlite3
  dependency-version: 2.1.13
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.Extensions.Compliance.Redaction
  dependency-version: 10.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.Extensions.Configuration
  dependency-version: 10.0.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.Extensions.DependencyInjection
  dependency-version: 10.0.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.Extensions.Hosting
  dependency-version: 10.0.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.Extensions.Hosting.WindowsServices
  dependency-version: 10.0.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.Extensions.Logging.EventLog
  dependency-version: 10.0.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.Extensions.Http.Resilience
  dependency-version: 10.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.Extensions.Logging.Abstractions
  dependency-version: 10.0.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.Extensions.Options.DataAnnotations
  dependency-version: 10.0.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.Extensions.Telemetry
  dependency-version: 10.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.Extensions.TimeProvider.Testing
  dependency-version: 10.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.Graph
  dependency-version: 5.105.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.IdentityModel.JsonWebTokens
  dependency-version: 8.23.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.NET.Test.Sdk
  dependency-version: 17.14.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Microsoft.OpenApi
  dependency-version: 2.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Npgsql.EntityFrameworkCore.PostgreSQL
  dependency-version: 10.0.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: OpenIddict.AspNetCore
  dependency-version: 7.7.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: OpenIddict.Validation.AspNetCore
  dependency-version: 7.7.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: OpenIddict.EntityFrameworkCore
  dependency-version: 7.7.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: OpenTelemetry.Api
  dependency-version: 1.20.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: OpenTelemetry.Exporter.OpenTelemetryProtocol
  dependency-version: 1.20.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: OpenTelemetry.Extensions.Hosting
  dependency-version: 1.20.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: OpenTelemetry.Instrumentation.AspNetCore
  dependency-version: 1.20.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: OpenTelemetry.Instrumentation.Http
  dependency-version: 1.20.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: OpenTelemetry.Instrumentation.Runtime
  dependency-version: 1.20.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: OpenTelemetry.Instrumentation.StackExchangeRedis
  dependency-version: 1.0.0-rc9.15
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: Scalar.AspNetCore
  dependency-version: 2.18.3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Spectre.Console
  dependency-version: 0.57.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: Spectre.Console.Cli
  dependency-version: 0.57.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: SQLitePCLRaw.bundle_e_sqlite3
  dependency-version: 2.1.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: StackExchange.Redis
  dependency-version: 2.13.17
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: System.CommandLine
  dependency-version: 2.0.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: System.IdentityModel.Tokens.Jwt
  dependency-version: 8.23.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-minor-patch
- dependency-name: xunit
  dependency-version: 2.9.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
- dependency-name: Xunit.SkippableFact
  dependency-version: 1.5.85
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-minor-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added .NET Pull requests that update .NET code dependencies labels Oct 26, 2026
@coderabbitai

coderabbitai Bot commented Oct 26, 2026

Copy link
Copy Markdown

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

Run configuration

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@dependabot @github

dependabot Bot commented on behalf of github Oct 26, 2026

Copy link
Copy Markdown
Contributor Author

Dependabot tried to update this pull request, but something went wrong. We're looking into it, but in the meantime you can retry the update by commenting @dependabot recreate.

Cadacious added a commit that referenced this pull request Oct 26, 2026
…Auth exchange (#212)

* ci(deps): stop Dependabot proposing static-web-apps-deploy

The action is only published as a moving v1 tag, which Dependabot
resolves to the 2021 tag commit and offers as an update (#207). Ignore
it and update the pin by hand.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014QCSL3vKBpaY5vx6epF7wE

* chore(deps): dotenv 18 in BetterAuth

Supersedes Dependabot #202 (17.4.2 -> 18.0.9). dotenv 18 adds a CLI and
an opt-in fast parser, drops .env.vault support and preloading, and moves
the "injected env" line to stderr. config() still logs unless quiet is
set, so env.js keeps config({ quiet: true }); only its comment changes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014QCSL3vKBpaY5vx6epF7wE

* fix(betterauth): rate-limit the exchange endpoint

Addresses CodeQL js/missing-rate-limiting on POST
/api/v1/betterauth/exchange, which does a session lookup, a DB query and
signs a token per request. express-rate-limit 8 now limits it per client
IP (default 30 per minute, EXCHANGE_RATE_LIMIT_MAX and
EXCHANGE_RATE_LIMIT_WINDOW_MS override) and answers 429
{ "error": "rate_limited" } with draft-8 RateLimit headers.

The client IP comes from a new TRUST_PROXY setting (unset = trust
nothing, integer = hop count, otherwise an address/subnet list). "true"
is refused at startup because it lets clients spoof X-Forwarded-For.
Behind the Gateway the deployment should set TRUST_PROXY=1.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014QCSL3vKBpaY5vx6epF7wE

* deploy(compose): trust the Gateway hop in BetterAuth

BetterAuth sits behind the Gateway, so without TRUST_PROXY every request
looks like it comes from the Gateway and the /exchange rate limit becomes
one bucket for all users. Trust one hop.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014QCSL3vKBpaY5vx6epF7wE

* chore(deps): bump astro to 7.4.2 and @astrojs/react to 7.1.1 in Panel and ShoppingCart

Resolves Dependabot #203, #204, #205 and #206. @astrojs/react 7 moves to
@vitejs/plugin-react 6 (Oxc) and drops the `babel` option; neither site
passes options to react(), so no config change is needed. Adds
engines.node >=22.23.4 to match Scope and the new astro/@astrojs/react
engine floor.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014QCSL3vKBpaY5vx6epF7wE

* chore(deps): bump @astrojs/react to 7.1.1 in Scope

Keeps Scope on the same @astrojs/react major as Panel and ShoppingCart.
Scope passes no options to react(), so the removed `babel` option does
not affect it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014QCSL3vKBpaY5vx6epF7wE

* chore(deps): move Scope linting to ESLint 10

Resolves Dependabot #162 (eslint 9 -> 10; takes 10.13.0, the newest 10.x).

- eslint 10.13.0, plus @eslint/js 10.0.1 as an explicit devDependency
  (eslint 10 no longer pulls it in).
- eslint-plugin-react 7.37.5 -> @eslint-react/eslint-plugin 5.28.8.
  eslint-plugin-react crashes on ESLint 10 (removed context.getFilename)
  and its maintainer says it is not yet supported
  (jsx-eslint/eslint-plugin-react#3977). Uses recommended-typescript, with
  the old recommended rules it only warns on or omits raised to error
  (no-missing-component-display-name, jsx-no-comment-textnodes,
  jsx-no-children-prop, dom-no-unsafe-target-blank,
  dom-no-unknown-property). Its duplicate hook rules are turned off so
  eslint-plugin-react-hooks stays the only source of hooks checks.
- eslint-plugin-jsx-a11y 6.10.2 -> eslint-plugin-jsx-a11y-x 0.2.0, the
  maintained drop-in fork that declares ESLint 10 support; the same 31
  recommended rules, now under the jsx-a11y-x/ prefix.
- eslint-plugin-security 3.0.1 -> 4.2.0: 3.x calls context.getSourceCode()
  and crashes on ESLint 10. 4.x adds detect-invisible-characters (warn).

No --force, --legacy-peer-deps, overrides or compat shims. Lint: 0 errors,
22 warnings (12 new warnings from @eslint-react recommended rules).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014QCSL3vKBpaY5vx6epF7wE

* chore(deps): NuGet minor/patch group and coverlet 10.1

Applies the target versions from Dependabot #196 (nuget-minor-patch
group) and #197 (coverlet.collector) on top of current main, and
regenerates the lock files.

Notable bumps:
- Aspire.Hosting.* and Aspire.Hosting.Testing 13.5.3 -> 13.6.4, with the
  AppHost SDK moved to 13.6.4 to match (MessagePack stays 3.1.12)
- OpenTelemetry core, exporter and AspNetCore/Http/Runtime
  instrumentation 1.18.0 -> 1.20.1
- coverlet.collector 10.0.1 -> 10.1.0
- AngleSharp 1.8.6, MailKit 4.18.2, OpenIddict 7.7.2,
  Microsoft.Extensions.* (Resilience/Telemetry/Redaction/TimeProvider)
  10.11.0, IdentityModel 8.23.0, Azure KeyVault patches,
  Azure.ResourceManager.KeyVault 1.5.0, FluentValidation 12.2.0,
  FluentAssertions 8.11.0, Microsoft.OpenApi 2.13.0, Scalar 2.18.3,
  Spectre.Console.Cli 0.57.2, Discord.Net 3.20.2, SQLitePCLRaw 2.1.14

Held back:
- MassTransit stays 8.3.6 (deliberate hold, #195)
- System.CommandLine stays 2.0.0-beta4 (the group's 2.0.14 is the
  stable line with a different API)

The group's extra csproj edits (VersionOverride on StackExchange.Redis,
direct FluentValidation/Jwt references in Identity) were not needed and
are left out; no code changes were required.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014QCSL3vKBpaY5vx6epF7wE

* chore(deps): bump MassTransit to 8.5.12 and System.CommandLine to 2.0.14

MassTransit, MassTransit.EntityFrameworkCore and MassTransit.RabbitMQ
go from 8.3.6 to 8.5.12. The 8.5.12 nuspecs declare Apache-2.0, so this
stays on the open-source v8 line; the hold on v9 (commercial) remains.
MassTransit 8.5 registers a usage tracker that only implements
IAsyncDisposable, so the messaging credential tests now dispose their
ServiceProvider with await using, as the generic host does.

System.CommandLine moves from 2.0.0-beta4.22272.1 to the 2.0.14 stable
release. The CLI is migrated to the GA API:
- SetHandler/InvocationContext -> SetAction with ParseResult.GetValue;
  commands that set an exit code now return it from the action
- AddCommand/AddOption/AddArgument -> Subcommands/Options/Arguments.Add
- descriptions move to the Description property, IsRequired -> Required,
  getDefaultValue -> DefaultValueFactory
- option validators use Validators.Add and AddError
- root.InvokeAsync(args) -> root.Parse(args).InvokeAsync()
- the ping command forwards the action's cancellation token (CA2016)
- the commands listing handles Option.Name now carrying the "--" prefix
  and ArgumentHelpName becoming HelpName

Help, validation and error output is unchanged except that root help
lists --help before --version and some blank lines move.

Lock files regenerated with --force-evaluate.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014QCSL3vKBpaY5vx6epF7wE

* fix(betterauth): close the direct-port bypass and log rate-limit hits

- Bind BetterAuth's compose host port to 127.0.0.1. With TRUST_PROXY=1, a
  caller reaching port 5130 directly could set X-Forwarded-For per request
  and get a fresh bucket each time.
- Log when the exchange limit rejects a request.
- Parse TRUST_PROXY and the limit settings before loading secrets and
  running migrations, so a bad value fails fast.
- README: per-client limits need Cloudflare in front of the Gateway, and
  the count is per process.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014QCSL3vKBpaY5vx6epF7wE

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
@Cadacious

Copy link
Copy Markdown
Contributor

Superseded by #212, which shipped this update.

@Cadacious Cadacious closed this Oct 26, 2026
@dependabot @github

dependabot Bot commented on behalf of github Oct 26, 2026

Copy link
Copy Markdown
Contributor Author

This pull request was built based on a group rule. Closing it will not ignore any of these versions in future pull requests.

To ignore these dependencies, configure ignore rules in dependabot.yml

@dependabot
dependabot Bot deleted the dependabot/nuget/nuget-minor-patch-ae3cb65a52 branch October 26, 2026 23:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment