Skip to content

3.4.0

Compare
Choose a tag to compare
@sbwalker sbwalker released this 12 Mar 14:24
· 2628 commits to dev since this release
f7bb844

Release Notes

We deeply appreciate the contributions from our community. A grand total of 62 pull requests by 6 contributors were integrated into this release bring the total to over 3300 commits all time.

Noteworthy Changes in v3.4.0

#2661 Added support for capturing user profile information from claims during external login @sbwalker
#2660 Optimized Permission model by removing reference to Role to reduce API payload and minimize information disclosure @sbwalker
#2657 Added IsPortable property on ModuleDefinition to indicate if module implements IPortable @sbwalker
#2657 Filtered ModuleDefinition models returned from API to minimize information disclosure @sbwalker
#2652 Ensured system remains in edit mode when user is editing a page @sbwalker
#2649 Added OnPageChange event handler to the Page and the Module Pagers in Recycle Bin @leigh-pointer
#2644 Hid the Clear Notifications option if no notifications exist @leigh-pointer
#2642 Fixed validation logic for deleting modules from the Recycle Bin @leigh-pointer
#2637 Fixed localization issue in Scheduled Jobs @sbwalker
#2628 Updated module and theme templates to latest standards @thabaum
#2628 Fixed utilization of root folder in Module and Theme Creator @thabaum
#2628 Fixed navbar CSS in theme template @thabaum
#2626 Improved deletion of modules from Recycle Bin to handle permissions and settings @leigh-pointer
#2620 Added logic to delete Permissions when a Module is uninstalled @leigh-pointer
#2612 Replaced custom encoded permission strings with permission collections to improve maintainability and performance @sbwalker
#2611 Explicity specify optional and reload parameters when loading appsettings.json @sbwalker
#2610 Added logic to delete Module and PageModule when Module is uninstalled @leigh-pointer
#2609 Improved Hot Reload support by extending watching of *.dll files @Behnam-Emamian
#2608 Migrated tenant connection string details from database to appsettings.json @sbwalker
#2608 Updated Site Settings and Site Management (when adding a new site) to display the connection name rather than the actual connection string related to a tenant @sbwalker
#2608 Changed terminology in the UI from using "tenant" to "database" as the tenant concept seems to cause a lot of confusion @sbwalker
#2608 Overhauled Sql Management so that it is now driven from the list of database connections in appsettings.json (rather than from the Tenant database table) - and now allows you to add additional connections as well (including ones that are not related to the Oqtane framework) @sbwalker
#2606 Added a sitemap generator which outputs all public pages and also includes an ISitemap interface for modules @sbwalker
#2605 Added AddByteColumn migration method to enable creation of tinyint columns in the database @Behnam-Emamian
#2601 Added logic to delete Settings when Module is uninstalled @leigh-pointer
#2599 Added defensive logic to querystring parser to handle duplicate parameters @sbwalker
#2598 Improved initialization logic in FileManager which could sometimes result in Upload button not being displayed when the component was initially loaded @sbwalker
#2597 Fixed EF Core tracking error when updating a file in a folder which has a Capacity specified @sbwalker
#2593 Added Oqtane.Server project back to module and theme external template solutions @sbwalker
#2592 Added logic to restrict the term "oqtane" as an organization or module/theme name (to avoid namespace issues) in Module/Theme Creator @sbwalker
#2591 Added new API methods for managing visitor settings (for personalization) @sbwalker
#2590 Optimized Split() logic for consistency throughout framework @sbwalker
#2589 Added ability to clear System Log @sbwalker
#2587 Added IsDeleted columns back to Folder and File tables to preserve compatibility for SQLite (which does not support ability to drop columns) @sbwalker
#2585 Refactored visitor cookie name into a shared constant @sbwalker
#2582 Added defensive logic for null ModuleDefinition reference when loading permissions in PageModuleRepository (credit @beolafsen) @sbwalker
#2581 Fixed issue where error notification sent via email included direct link to specific log item, however redirect was causing an infinite loop @sbwalker
#2581 Preserved url querystring parameters during login/logout @sbwalker
#2580 Modified ActiveDatabase setter to be public @markdav-is
#2579 Suppressed unauthorized visitor logging message as it is usually caused by clients that do not support cookies @sbwalker
#2571 Fixed issue where TenantMiddleware was not rewriting the Url path for the new File Server when running on an Alias Path which resulted in a 404 when serving files @sbwalker

List of Contributors in v3.4.0

@sbwalker
@leigh-pointer
@Behnam-Emamian
@thabaum
@beolafsen
@markdav-is

Additional Resources

Oqtane is an open source modular application framework that provides advanced functionality for developing single page applications that run on web, mobile, and desktop. It leverages the Razor component model to compose a fully dynamic web development experience which can be hosted either client-side or server-side on Blazor Server, Blazor WebAssembly, or Blazor Hybrid (via .NET MAUI).

This release of Oqtane is targeted at .NET 6.0. This release is upgradeable from previous Oqtane releases. Simply install the Upgrade package and your database will be upgraded automatically.

This release of Oqtane is running in production at https://www.oqtane.org and https://www.blazorcms.net