docs/en/release-info/migration-guides/abp-5-2.md
//[doc-seo]
{
"Description": "Upgrade your ABP v5.x solutions to v5.2 with this comprehensive migration guide, covering key changes for MongoDB and Blazor UI."
}
This document is a guide for upgrading ABP v5.x solutions to ABP v5.2. Please read them all since v5.2 has some changes you should take care.
If you are using one of the open-source startup templates, then you can check the following sections to apply the related breaking changes:
IMongoDbRepositoryFilterer.AddGlobalFilters() method is replaced with async one IMongoDbRepositoryFilterer.AddGlobalFiltersAsync()If you use Blazor WASM or Blazor Server UI, you should follow this section.
We've upgraded to Blazorise 1.0 stable version. So there is some breaking changes that you have to apply in your project.
Also You can review that pull request #11649 - Blazorise 1.0 Migration
NumericEdit is now made around the native input type="number" so a lot of its formatting features are moved to the new NumericPicker component. Replace NumericEdit with NumericPicker.DecimalsSeparator to DecimalSeparator on the DataGridColumn and NumericPicker.MaxMessageSize to MaxChunkSize.Fullscreen parameter on <ModalContent> and replace it with Size="ModalSize.Fullscreen" parameter.NotificationType, Message, and Title parameter from <NotificationAlert> component.RightAligned parameter from <BarDropdownMenu> to <BarDropdown> component.ChangeTextOnKeyPress parameter into Immediate.DelayTextOnKeyPress parameter into Debounce and DelayTextOnKeyPressInterval into DebounceInterval.Left and Right enums with Start and End for the following enum types: Direction, Float, Placement, NotificationLocation, Side, SnackbarLocation, SnackbarStackLocation, TabPosition, and TextAlignment.FromLeft, FromRight, RoundedLeft, and RoundedRight enums with FromStart, FromEnd, RoundedStart, and RoundedEnd for the Border utilities.FromLeft and FromRight with FromStart, FromEnd for the Margin and Padding utilities.AddLabel with AddLabels method on chart instance.None to Default for the following enum types: Color, Background, TextColor, Alignment, BorderRadius, BorderSize, Direction, DisplayDirection, FigureSize, IconSize, JustifyContent, OverflowType, SnackbarColor, Target, TextAlignment, TextOverflow, TextTransform, TextWeight, VerticalAlignment, Visibility, Size, and SnackbarLocation.Alignment, Color, Transform, and Weight are removed in favor of TextAlignment, TextColor, TextTransform, and TextWeight.<InlineField>.Direction parameter has now been removed. Instead, please use the SortDirection parameter if you weren't already..<Tabs> Mode parameter into RenderMode.Check out Blazorise Release Notes for more information.
If you use MVC Razor Pages UI, you should follow this section.
The libs folder no longer exists in templates after v5.2. That change greatly reduced the size of templates and brought some other advantages.
You can use abp install-libs command for installing or updating client libraries. You should run this command after updating v5.2.
If you're creating a new project, you don't have to be concerned about it, ABP CLI installs client libraries after automatically.
Please check the Open-Source (Framework) section before reading this section. The listed topics might affect your application and you might need to take care of them.
If you are a paid-license owner and using the ABP's paid version, then please follow the following sections to get informed about the breaking changes and apply the necessary ones:
Payment Module has some breaking changes. If you're using payment module, applying following steps carefully is highly recommended.
After all of those changes, the biggest change is Payment Module will work properly if you're using Tiered solution.
Currency parameter is a required parameter for One Time payment requests. You have to pass that parameter for each PaymentRequestCreateDto.
await _paymentRequestAppService.CreateAsync(new PaymentRequestCreateDto
{
Currency = "USD", // Must be 3 letter ISO name.
// ...
});
Volo.Payment.Stripe.HttpApi package is no longer exists. All requests & webhooks are handled by Volo.Payment.HttpApi.
Volo.Payment.Stripe.HttpApi package from your project.Volo.Payment.Stripe.Domain to your Domain layer.Move your configurations to the HttpApi.Host in tiered solutions.
The web Layer doesn't contain the entire logic from now. So, you need to move your configurations to where Application layer works.
Stripe webhook URL has been changed. Replace yourdomain.com/payment/stripe/webhook with
yourdomain.com/api/payment/stripe/webhook