⚡ Update ABP CLI and ABP Suite
dotnet tool update -g Volo.Abp.Cli --prerelease
abp suite update --preview
📗 Blog post
- https://blog.abp.io/abp/ABP.IO-Platform-7-4-RC-Has-Been-Published
📘 Commercial release logs
- https://docs.abp.io/en/commercial/latest/release-notes
- https://commercial.abp.io/releases/
🔼 Migration guides
- https://docs.abp.io/en/abp/latest/Migration-Guides/Index
✏️ Feel free to report any bugs, issues and problems.
67 Answer(s)
- 
    0- ABP Framework version: v7.4.0.rc-1
- UI Type: MVC
- Database System: EF Core (PostgreSQL)
- Tiered (for MVC) or Auth Server Separated (for Angular): no
 There are a lot of warnings that can be included in the next RC. There are related to the IConfiguration interface. For example, in OpenIddictDataSeedContributor.cs Line 86: var webClientRootUrl = configurationSection["Demo74rc1_Web:RootUrl"].EnsureEndsWith('/'); Line 206: var blazorServerTieredRootUrl = configurationSection["Demo74rc1_BlazorServerTiered:RootUrl"].EnsureEndsWith('/'); Line 250:var webPublicRootUrl = configurationSection["Demo74rc1_Web_Public:RootUrl"].EnsureEndsWith('/'); Line 274: var webPublicTieredRootUrl = configurationSection["Demo74rc1_Web_Public_Tiered:RootUrl"].EnsureEndsWith('/');To avoid those warnings, you include a null-forgiving operator(!) for the configurationSection variable. 
- 
    0ABP Framework version: v7.4.0.rc-1 UI Type: MVC Database System: EF Core (PostgreSQL) Tiered (for MVC) or Auth Server Separated (for Angular): no There is an issue in test/Demo74rc1.TestBase/Security/FakeCurrentPrincipalAccessor.cs private ClaimsPrincipal _principal;_principal is not initialized in the constructor making a warning (or error if <WarningsAsErrors>Nullable</WarningsAsErrors> is setup) A solution could be to make ClaimsPrincipal nullable private ClaimsPrincipal? _principal;In the same file, there is an issue with the implementation of the interface  The solution could be to change the interface ICurrentPrincipalAccessor.cs in Volo.Abp.Security.Claims and make the IDisposable as IDisposable? public interface ICurrentPrincipalAccessor { ClaimsPrincipal Principal { get; } IDisposable? Change(ClaimsPrincipal principal); }
- 
    0ABP Framework version: v7.4.0.rc-1 UI Type: MVC Database System: EF Core (PostgreSQL) Tiered (for MVC) or Auth Server Separated (for Angular): no In src/Demo74rc1.Domain/OpenIddict/OpenIddictDataSeedContributor.cs  There is a possible null reference argument in that method  (in visual studio and rider) because it's using the ABP wrapper of string.IsNullOrWhiteSpace(str) There is a possible null reference argument in that method  (in visual studio and rider) because it's using the ABP wrapper of string.IsNullOrWhiteSpace(str)If I replace the if (!webPublicClientId.IsNullOrWhiteSpace())with thisif (!string.IsNullOrWhiteSpace(webPublicClientId))
- 
    0ABP Framework version: v7.4.0.rc-1 UI Type: MVC Database System: EF Core (PostgreSQL) Tiered (for MVC) or Auth Server Separated (for Angular): no If <WarningsAsErrors>Nullable</WarningsAsErrors> is enabled, there is an issue with the property name. It suggested adding the "required" modifier to solve this issue as shown next. 
- 
    0ABP Framework version: v7.4.0.rc-1 UI Type: MVC Database System: EF Core (PostgreSQL) Tiered (for MVC) or Auth Server Separated (for Angular): no In a nullable reference-enabled project, there is a missing "?" in the parameter of MapHealthChecksUiEndpoints Actual version: private static IServiceCollection MapHealthChecksUiEndpoints (this IServiceCollection services, Action<global::HealthChecks.UI.Configuration.Options> setupOption = null) { services.Configure<AbpEndpointRouterOptions>(routerOptions => { routerOptions.EndpointConfigureActions.Add(endpointContext => { endpointContext.Endpoints.MapHealthChecksUI(setupOption); }); }); return services; }It should be: private static IServiceCollection MapHealthChecksUiEndpoints (this IServiceCollection services, Action<global::HealthChecks.UI.Configuration.Options>? setupOption = null) { services.Configure<AbpEndpointRouterOptions>(routerOptions => { routerOptions.EndpointConfigureActions.Add(endpointContext => { endpointContext.Endpoints.MapHealthChecksUI(setupOption); }); }); return services; }
- 
    0In ABP Suite, there is an update in the entity generator, whenever you select a string, there is a new option to allow empty strings but it's only enabled when the "Required" option is checked. What is the sense of allowing empty strings if it's required? Why not allow Nullable strings in the ABP Suite entity generator? 
- 
    0
- 
    0In the AppService generated by ABP Suite, there is an issue in some methods in the AppService if a non-nullable string property is created in an entity. src/Demo74rc1.Application/EntityDemos/EntityDemosAppService.cs A solution could be to use the Check.NotNull method Adding this before the CreateAsync method call input.StringColumn = Check.NotNull(input.StringColumn, nameof(input.StringColumn)); 
- 
    0In the AppService generated by ABP Suite, there is an issue in some methods in the AppService if a non-nullable string property is created in an entity. src/Demo74rc1.Application/EntityDemos/EntityDemosAppService.cs A solution could be to use the Check.NotNull method Adding this before the CreateAsync and UpdateAsync method call in the AppService generated class solve this issue. input.StringColumn = Check.NotNull(input.StringColumn, nameof(input.StringColumn)); 
- 
    0In the ABP Suite generated Entity in src/Demo74rc1.Domain/EntityDemos/EntityDemo.cs There is no need to add an empty constructor. It will generated a Warning or Error (if WarningAsError is activated). Can you consider removing it from the template? This also happens in the .Extended version of the Entity generated class. The empty constructor should be removed from the template. 
- 
    0In the ABP Suite Generated code, there is an issue in the generated class test/Demo74rc1.TestBase/EntityDemos/EntityDemosDataSeedContributor.cs Do we need a null validation in await _unitOfWorkManager.Current.SaveChangesAsync(); ? Current property is nullable and there will be a warning or error (if WarningAsNull is activated) 
- 
    0
- 
    1
- 
    0In the ABP Suite generated code,Application Service Extended.cs Should inherit interface ,not in AppServiceBase. Hi, thanks for your suggestion. This really makes sense, because otherwise if a custom method is added to the application service interface, it should be implemented in the application service base class and it will be overridden in the next generation, which we don't want in any case. I will create an internal issue for this. 
- 
    0Hello, are there any comments regarding my findings? 
- 
    0
- 
    0Hi, I have created an internal issue for your findings related to nullable warnings on Suite-generated codes. In the ABP Suite generated code,Application Service Extended.cs Should inherit interface ,not in AppServiceBase. This is fixed with v7.4.0-rc.2. Thanks again for reporting the problem. thanks @EngincanV 
- 
    0
- 
    0in the leptonXtheme , user avatar path 404. hi This is fixed in the new version. 
- 
    0We will resolve all nullable warnings in 7.4 
- 
    0
- 
    1Hi, I have created an internal issue for your findings related to nullable warnings on Suite-generated codes. In the ABP Suite generated code,Application Service Extended.cs Should inherit interface ,not in AppServiceBase. This is fixed with v7.4.0-rc.2. Thanks again for reporting the problem. hi, the same problem also exists in entityFramework layer. 
- 
    0Any quick fix for angular project with basic theme issue please ? 
- 
    0
- 
    0Why you generate all of these clients regardless the template used !!! hi This is exactly what template projects are for, you can remove clients you don't need. 






















 
                                