Skip to content

Upgrading Volo.Abp.Http.Client 9 to 10

Breaking9.3.7 → 10.7.0Breaking8Security18Deprecated1New138Changed226Fixed179Other619

BreakingUpgrade verdict

8 breaking changes and 18 security fixes.

  • The built-in operation rate limiting feature is no longer part of the framework.
  • Removes StaticTemplateDefinitionChangedEventHandler.
  • Repository methods no longer load related details by default, so you must opt in when you need them.
  • Removes `JSRuntime` from `MauiBlazorCachedApplicationConfigurationClient`.
Top 5 of 27 that need code or config changes

Target frameworks requirement changed in 10.0.0-rc.1: .NETStandard2.0, .NETStandard2.1, net8.0, net9.0 → .NETStandard2.0, .NETStandard2.1, net10.0, net8.0, net9.0.

Breaking8
Removes Operation Rate Limiting from the framework.
Removes StaticTemplateDefinitionChangedEventHandler.
StaticTemplateDefinitionChangedEventHandler
Sets includeDetails default to false in repository methods.
includeDetails
Removes JSRuntime from MauiBlazorCachedApplicationConfigurationClient.
JSRuntimeMauiBlazorCachedApplicationConfigurationClient
Uses HttpPost for PermissionIntegrationController.IsGrantedAsync.
PermissionIntegrationControllerIsGrantedAsyncHttpPost
Refactors BasicAggregateRoot to use nullable collections for distributed and local events.
BasicAggregateRoot
Changes model properties from init to set.
Refactors TocHeading and TocItem from records to classes.
TocHeadingTocItem
Security18
Hashes the connection string in unit of work API keys.
Keeps tenant connection strings out of the audit logs.
Validates blob names in the file system provider and blogging file service.
Prevents the OpenIddict client_id from leaking into the interactive auth cookie.
client_id
Upgrades vulnerable NuGet packages to patched versions.
Bumps Scriban and System.Security.Cryptography.Xml to patched versions.
ScribanSystem.Security.Cryptography.Xml
Restricts dynamic sorting selectors to property or field access in DDD.
Upgrades Scriban to 7.2.1 to fix GHSA-24c8-4792-22hx.
Scriban
Bumps Microsoft.*/System.* packages to 10.0.7 addressing CVE-2026-40372.
Requires delete permission for blog posts.
Sanitizes package.json and prevents command injection in ABP CLI.
package.json
Prevents privilege escalation by adding assignment restrictions for roles and permissions.
Fixes vulnerable npm packages.
Sets default MaxDepth for all AutoMapper maps to mitigate GHSA-rvv3-g6hj-g44x.
AutoMapperMaxDepth
HTML-encodes TagHelper titles and texts for security.
TagHelper
Checks user authentication before providing an access token.
Uses a safe redirect after registration in the Account Module.
Updates Vulnerability packages to the latest versions.
Deprecated1
Adds AsyncLocalizationPipe and deprecates LazyLocalizationPipe.
AsyncLocalizationPipeLazyLocalizationPipe

Generated by DepDelta from published .NET assemblies. Not mixed with prose notes.

  • added: protected method ClientProxyBase.AddAcceptHeaders(ActionApiDescriptionModel action, HttpRequestMessage requestMessage, ApiVersionInfo apiVersion): void
  • added: protected method ClientProxyBase.GetAcceptForActionReturn(ActionApiDescriptionModel action): string
  • added: protected method ClientProxyBase.RequestAsyncEnumerable<T>(string methodName, ClientProxyRequestTypeValue arguments = …): IAsyncEnumerable<T>
  • added: protected method ClientProxyBase.UnwrapStringResponse(string body, string contentType): string
  • added: protected property ClientProxyBase.SystemTextJsonSerializerOptions: IOptions<AbpSystemTextJsonSerializerOptions> { get; }
  • added: protected static method ClientProxyBase.NormalizeMediaType(string mediaType): string