Upgrading Volo.Abp.Http.Client 9 to 10
Breaking9.3.7 → 10.7.0Breaking8Security18Deprecated1New138Changed226Fixed179Other619
BreakingUpgrade verdict
8 breaking changes and 18 security fixes.
In plain terms
- 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`.
Must act 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.
What you must change
Breaking8
Removes Operation Rate Limiting from the framework.
Removes StaticTemplateDefinitionChangedEventHandler.
StaticTemplateDefinitionChangedEventHandlerSets includeDetails default to false in repository methods.
includeDetailsRemoves
JSRuntime from MauiBlazorCachedApplicationConfigurationClient.JSRuntimeMauiBlazorCachedApplicationConfigurationClientUses HttpPost for PermissionIntegrationController.IsGrantedAsync.
PermissionIntegrationControllerIsGrantedAsyncHttpPostRefactors BasicAggregateRoot to use nullable collections for distributed and local events.
BasicAggregateRootChanges model properties from init to set.
Refactors TocHeading and TocItem from records to classes.
TocHeadingTocItemSecurity18
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_idUpgrades vulnerable NuGet packages to patched versions.
Bumps Scriban and System.Security.Cryptography.Xml to patched versions.
ScribanSystem.Security.Cryptography.XmlRestricts dynamic sorting selectors to property or field access in DDD.
Upgrades Scriban to 7.2.1 to fix GHSA-24c8-4792-22hx.
ScribanBumps 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.jsonPrevents 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.
AutoMapperMaxDepthHTML-encodes TagHelper titles and texts for security.
TagHelperChecks user authentication before providing an access token.
Uses a safe redirect after registration in the Account Module.
Updates
Vulnerability packages to the latest versions.Deprecations to plan for
Deprecated1
Adds AsyncLocalizationPipe and deprecates LazyLocalizationPipe.
AsyncLocalizationPipeLazyLocalizationPipeAPI changes
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