Use of #nullable enable for all Core and DataProvider packages. Module packages may be updated in the future when features are added. All data (SQL, PostgrSQL, files) that now may use nullable columns are not affected as the generated tables or SQL stored procedures remain unchanged.
jQuery has been removed. While jQuery can still be conditionally used, it is currently only used by two components (FileUpload1, Lightbox) and is otherwise not even loaded. Only use of the components will actually load jQuery.
Kendo UI has been removed. All components that were based on Kendo UI (like DateTime picker, etc.) have been replaced with custom implementations.
Bower is no longer used.
Restored the original SQLDyn DataProvider as the default SQL data provider as it has proven to be significantly faster in large scale sites. This deprecates the stored procedures based SQL data provider. Existing SQL tables remain unchanged. To keep using the deprecated SQL dataprovider, see the file "notused_SQL.txt" in the repository root folder.
Added caching to UnifiedDataSet provider (controlling Single Page Applications) which improves initial full page loads by ~10 ms. Unified Page Sets are now the default and can no longer be turned off, meaning a YetaWF site is always and must be a Single Page Application.
A ConditionalAntiforgeryTokenAttribute used on a controller now always validates the antiforgery token. This means that forms can no longer be used on static pages if the ConditionalAntiforgeryTokenAttribute is used (which is the default for almost all modules). This was mandated by a security concern.
Improvements to some legacy constructs (AreaRegistration, removal of obsolete _SiteTemplates).
Eliminated YTagBuilder (based on TagBuilder which is an "improvement" to build tags, but adds unnecessary runtime). Eliminating it in our menu rendering code improved initial page load time by ~15%.
New Active User display in Admin > Dashboard > Active Users, showing connected users (using signalR).
Introduction of CSS custom properties (CSS variables) for skin theming. Initially, most components will take advantage of this. Long term this will serve to eliminate Kendo UI themes altogether which are now only used for date, datetime and time components. This includes generating CSS for legacy browsers (IE 11-) which don't support CSS custom properties (see CSS Custom Properties).
Skin definition files (Skin.txt) have now been replaced by Skin.yaml files. Skin.txt support has been removed.
Eliminated support for Bootswatch as it is now easier to build themes using the Skin Palette.
Limited use of Bootstrap to just its grid features.
Eliminated use of the complete Font Awesome package and replaced with skin specific SVGs (based on Font Awesome icons). Font Awesome can still be conditionally loaded, typically by skin, but is not used unless explicitly requested. No components use Font Awesome.
Enhancements to Grid component: panel header, general column search, column selection, grid definition files converted to yaml files.
New CheckListMenu, CheckListPanel component implementing a multi-select checkbox menu and list respectively.
New DropDownSearch component implementing a single-select dropdown with dynamically built search results based on typed input.
Alex Gorbatchev's Syntax Highlighter has been removed as it has been abandonded. Highlight.js which was available previously can be used instead.
Long Term Changes
YetaWF already offers replacable packages so customized features (including core services) can be implemented. We're moving towards an even more plug-and-play type pattern (like the new website startup, console startup, web api startup (web service) packages).
Page load time/performance is always of high priority. YetaWF sites consistently achieve PageSpeed Insights rankings above 90, often near or at 100, both Mobile and Desktop.
Removal of jQuery and Kendo UI is a long term goal. All components and modules now use TypeScript without jQuery. Kendo UI is jQuery based. jQuery is now only used by Kendo UI with its date, datetime and time components. This will be removed with this upcoming release.
Remove use of bower - This continues to be used only by Telerik's Kendo UI. This will be removed with this upcoming release.