Breaking Changes
- ISSUE #3171: Make Angular layouts replaceable
Features
- ISSUE #3449: Create a strategy that inserts a style element to the DOM
- PR #3408: EntityChange selecting implemented to AuditLog Repositories (by cotur)
- PR #3401: Implemented: Object Extending System (by hikalkan)
- ISSUE #3387: Object Extending System
- ISSUE #3385: Create a new library named @abp/utils
- PR #3360: Implemented: EF Core Entity Extension System (by hikalkan)
- ISSUE #3350: Add a doubly linked list to the core module
- PR #3334: Implemented: Allow to subscribe to exceptions handled by the abp framework (by hikalkan)
- ISSUE #3328: Allow to subscribe to exceptions handled by the abp framework
- ISSUE #3204: Create TrackByService to use track by function easily
- ISSUE #3126: EF Core Entity Extension System
Enhancements
- ISSUE #3466: Create an init token to theme shared and deprecate append script function
- PR #3465: Development environment enhanced (by mehmet-erim)
- ISSUE #3448: Add login link to the header
- PR #3435: Add builderAction parameter to the BuildConfiguration method. (by maliming)
- PR #3432: added description field in posts and updated create and edit page fo… (by AkinSabriCam)
- ISSUE #3429: Configuration - Custom Configuration sources
- ISSUE #3426: Blog module - Add Description and Title fields to a post blog
- ISSUE #3381: Refactor Docs module
- ISSUE #3375: Add methods to LinkedList for adding and dropping multiple nodes
- PR #3366: apply entity extension system for samples (by maliming)
- ISSUE #3361: Apply Entity Extension System for samples
- PR #3347: Use Exists property to determine if the file exists. (by maliming)
- PR #3338: Make CLI available when abp.io is offline (by liangshiw)
- ISSUE #3323: Cli use of local templates crash while fail to access abp.io site
- ISSUE #3317: Propose a type-safe version for byDeep method of TrackByService
- PR #3307: Migrate only tenants with connection strings. (by maliming)
- PR #3306: Keep the hash of the url in the setQueryString method. (by maliming)
- ISSUE #3292: Only run tenant migrations for tenants with external databases?
- ISSUE #3281: Abp-Popover Tag Helper hoverable feature
- PR #3271: Remote service name is set for all modules (by cotur)
- PR #3266: IdentityServer ETOs' added (by cotur)
- ISSUE #3265: Set remote service name for all modules
- ISSUE #3264: Allow a controller to set the remote service name to be used by clients
- ISSUE #3254: Abp-Modal Tag helper extra features
- ISSUE #3252: Refactor and optimize RestService request method
- PR #3241: Docs ETOs' added (by cotur)
- PR #3240: Blogging ETOs' implemented (by cotur)
- ISSUE #3238: Design for docs search
- ISSUE #3234: Document website doc.abp.io redirect incorrectly.
- PR #3210: Identity ETO's added (by cotur)
- ISSUE #3208: Add --connection-string parameter ABP CLI while creating a new project
- ISSUE #3185: LazyLoadService should be refactored
- ISSUE #3137: Take related module API URL in RestService
- ISSUE #3090: Docs should support querystring params on local links
- ISSUE #3033: Define ETO's for all aggregate roots for all modules
Bug Fixes
- PR #3406: added exception for user registered multiple organizations (by AkinSabriCam)
- ISSUE #3339: Dynamic C# API Clients may not handle DateTime on QueryString when client and server cultures are different
- PR #3259: MongoDbRepository needs to filter when deleting entity based on Id. (by maliming)
Others
- PR #3480: How-to Documentation update and enhancements (by gterdem)
- PR #3475: Created DomInsertionService (by mehmet-erim)
- PR #3473: Added Some Advanced Lazy Load Examples (by armanozak)
- PR #3470: Start and shutdown quartz asynchronously (by liangshiw)
- PR #3469: Implemented new LazyLoadService (by mehmet-erim)
- PR #3467: Replace LicenseCode for ModulePro template. (by maliming)
- PR #3463: Angular version of app-pro template updated to v9.1 (by mehmet-erim)
- PR #3453: Introduced New LazyLoadService (by armanozak)
- ISSUE #3446: Add React Native template structure documentation
- ISSUE #3445: Update Angular application structure documentation
- PR #3431: Added access token validation function (by mehmet-erim)
- PR #3430: Moves Linked List Document to Common Utils (by armanozak)
- PR #3420: Fix options prefix in document. (by maliming)
- PR #3415: Created @abp/utils library (by mehmet-erim)
- PR #3410: Set ExternalProviders and EnableLocalLogin properties in the page's OnPost method. (by maliming)
- ISSUE #3400: There are no login schemes configured for this client.
- PR #3398: added title and description for blog posts (by AkinSabriCam)
- PR #3393: Add Blog Post: Customizing Login Page (by gterdem)
- PR #3392: External Azure Active Directory Authentication Blog Post (by gterdem)
- PR #3391: Add Blog Post: Customizing SignInManager (by gterdem)
- ISSUE #3389: Add Blog Post: Customizing Login Page
- ISSUE #3388: Add Blog Post: Customizing SignInManager
- ISSUE #3386: Update Pomelo.EntityFrameworkCore.MySql to 3.1.1
- PR #3383: Made layouts replaceable (by mehmet-erim)
- PR #3376: Added Custom Methods to LinkedList for Adding and Dropping Multiple Nodes (by armanozak)
- PR #3369: Added apiName variables to services that makes HTTP calls to backend (by mehmet-erim)
- PR #3359: Added a Doubly Linked List to Core Module Utils (by armanozak)
- ISSUE #3344: External Azure Active Directory Authentication Blog Post
- ISSUE #3341: Missing _v timestamp for css/js files that are added to bundling without leading slash
- PR #3340: Translate abp-helpers document (by liangshiw)
- PR #3332: Update outdated documentation. (by maliming)
- PR #3329: Failing tests of Identity Server module because of shared tempkey.rsa (by gterdem)
- ISSUE #3327: Conflicting concept in using [AbpAutoMapFrom(typeof(Book))] on BookDto
- PR #3322: Added documentation on how to create TrackByFunction using TrackByService (by armanozak)
- PR #3320: Type-safe byDeep method in TrackByService (by armanozak)
- PR #3319: Failing tests of Identity Server module because of shared tempkey.rsa CANCELED! (by gterdem)
- PR #3316: Added documentation on how to make HTTP requests using RestService (by armanozak)
- ISSUE #3310: Deploy dev environment for frontend developers
- PR #3308: Added service proxies documentation (by mehmet-erim)
- PR #3299: fix(ng.core) correct params of SetEnvironment Action (by yinchang0626)
- ISSUE #3294: abp generate-proxy and appservices
- PR #3290: Make properties virtual on TenantCreateDto (by olicooper)
- PR #3285: Create documentation for Tooltips Tag Helper (by gterdem)
- PR #3284: Create documentation for Progress Bars Tag Helper (by gterdem)
- PR #3283: Create documentation for Popovers Tag Helper (by gterdem)
- PR #3282: Abp-Popover Tag Helper hoverable feature (by gterdem)
- ISSUE #3279: Bootstrap popover link is broken in Bootstrap.Demo page
- PR #3278: Create documentation for Paginator Tag Helper (by gterdem)
- PR #3276: Create documentation for List Groups Tag Helper (by gterdem)
- PR #3269: Account Module RemoteService Name implemented (by cotur)
- PR #3268: Create documentation for Dropdowns Tag Helper (by gterdem)
- PR #3263: Create documentation for Collapse Tag Helper (by gterdem)
- PR #3262: RestService is refactored and optimized (by armanozak)
- PR #3261: Create documentation for Modals Tag Helper (by gterdem)
- ISSUE #3260: A variable named apiName should be added to the generated service files via generate-proxy command
- ISSUE #3258: Create .npmrc file when run abp switch-to-preview command
- PR #3257: Abp-Modal Tag helper extra features (by gterdem)
- ISSUE #3250: ABP CLI Generate proxy bugs and improvements
- PR #3243: Create documentation for Grids Tag Helper (by gterdem)
- PR #3242: Create documentation for Grids Tag Helper - Canceled! (by gterdem)
- ISSUE #3237: Add Documentation for TrackByService Usage
- PR #3236: Added a utility service for easy TrackByFunction implementation (by armanozak)
- PR #3235: Create documentation for Tabs Tag Helper (by gterdem)
- PR #3233: Update Background-Jobs-Hangfire.md (by suravi999)
- PR #3232: Create documentation for Alert Tag Helper (by gterdem)
- PR #3230: The request method of RestService now gets apiName in config parameter for easy baseUrl (by armanozak)
- ISSUE #3229: Add Documentation for RestService Usage
- ISSUE #3226: Create documentation for Tooltips Tag Helper
- ISSUE #3225: Create documentation for Progress Bars Tag Helper
- ISSUE #3224: Create documentation for Popovers Tag Helper
- ISSUE #3223: Create documentation for Paginator Tag Helper
- ISSUE #3222: Create documentation for List Groups Tag Helper
- ISSUE #3221: Create documentation for Dropdowns Tag Helper
- ISSUE #3220: Create documentation for Collapse Tag Helper
- ISSUE #3219: Create documentation for Modals Tag Helper
- ISSUE #3218: Create documentation for Grids Tag Helper
- ISSUE #3217: Create documentation for Tabs Tag Helper
- ISSUE #3216: Create documentation for Alert Tag Helper
- ISSUE #3212: Create documentation for Card Tag Helper
- PR #3209: Encode the returnUrl parameter. (by maliming)
- ISSUE #3206: Cli: Don't create "aspnet-core" folder when new project is mvc and doesn't have mobile app
- PR #3205: refactored async method (by AkinSabriCam)
- ISSUE #3202: Redirect URL of the MVC UI language switch ignore current page's query params.
- ISSUE #3200: Complete the tag helper documentation (I)
- ISSUE #3194: Failing tests of Identity Server module because of shared tempkey.rsa
- ISSUE #3186: Document how to use LazyLoadService
- ISSUE #3172: Document how to use angular typescript proxy generation
- PR #3163: Config auto api controller for Web.Unified and HttpApi.Host projects of the module template (by wakuflair)
- PR #3150: Upgrade Microsoft.* package to 3.12. (by maliming)
- ISSUE #3112: Add how to replace a layout section to component replacement document