Changelog 2024

December 2024

New Features

Metadata Lookups (#381)

  • Added metadata lookup system

  • Better data relationships and lookups

Query Enhancements

  • Added ColumnOverride.IncludeAllContent

  • Include all content in query results

Courier Options

  • Added option to disable courier and inform if no recipients

  • Better message handling control

User Creation

  • Added CreateForUser with OriginalUser

  • Track original user in impersonation scenarios

Fixes

  • TimeZone America/Nuuk was renamed

  • TimeZone Europe/Kyiv was renamed

  • KeyValueList distincts wrong when text search is used

November 2024

New Features

.NET 9.0 Migration

  • BREAKING: Migrated to .NET 9.0, removed .NET 6.0 support

  • Take advantage of latest performance improvements

InitializeByCtorAttribute

  • Added InitializeByCtorAttribute

  • Support for constructor-based initialization

  • Idempotent courier messages (RavenDB)

  • Prevent duplicate message processing

Performance Optimizations

  • Optimize .Run for non-enumerables

  • LeastRecentlyUsedCache/Set implementation

  • Builder optimizations

  • Convert Language to ILookupKeyValueData

Fixes

  • Typo in SynchronizeBlacklist

  • Certificate loading on .NET 9 (RavenDB)

  • Keep POAWR casts logic in sync with FromServiceString

Maintenance

  • Updated packages

  • Builder marked as disposable with lazy scope creation

  • Use LINQ and collection expressions

October 2024

New Features

  • Added Courier for message queuing

  • Support for delayed messages

  • MessageType hook for custom handling

  • Reliable async messaging

.NET 9.0 Support

  • Added .NET 9.0 support

  • Prepare for next LTS release

TranslatedString Improvements

  • Added TranslatedString.DefaultGetLanguages

  • Various TranslatedString improvements

  • Better multilingual support

CLI Enhancements

  • Added vidyano-synchronize-schema CLI option

  • Easier schema synchronization

Authentication Extensions

  • Expose HttpContext on ForgotPasswordArgs

  • Add hook for GetExpressionForUserGuidColumn

Fixes

  • Report warning for minimum level was wrong

Breaking Changes

  • Keep semicolon in To field as single MailMessage

  • Changes email parsing behavior

Maintenance

  • AppHarbor no longer exists (removed references)

  • Consistent Tag properties across system

  • Provide explicit cast to PO[] for AsDetail attributes

September 2024

New Features

ExecuteBatch API

  • Initial ExecuteBatch and split ExecuteQuery implementation

  • Handle GetPersistentObject, GetQuery, and ExecuteAction in batch

  • Handle step assignments with DynamicAssignment

  • Major performance improvement for bulk operations

TranslatedString Enhancements

  • Added TranslatedString.IsValid

  • Better validation for translations

LabelHelper

  • Added LabelHelper for consistent label management

  • Centralized label generation

RavenDB Source Generator

  • Provide attributes for the source generator

  • Better code generation support

Fixes

  • Detail attribute loading after save of new object

  • Handle invalid sorting in .NET Core

  • Fixed issue #356

Maintenance

  • Performance: Prefer JsonPoolConvert usage

  • Compiler optimize unused ApplicationInsights

  • Updated packages

  • Show tooltip for locked settings

August 2024

New Features

Repeating Jobs

  • Expose IRepeatingJobManager

  • Added RegisterJobAsync method

DataType Support

  • Support [DataType] attribute

  • Better validation and UI hints

Settings Builder Extensions

  • Added ISettingsBuilder.MultiString/Custom

  • More flexible settings configuration

Updatable Logs

  • Added IUpdatableLog.Delete

  • Better log management

Web Application Integration

  • Added UseVidyano directly on WebApplication

  • Simplified startup configuration

Query Column Overrides

  • Added ColumnOverrides for GetQuery request

  • Customize query result columns

Fixes

  • AsReadOnly setting didn't work for DataType Password

  • Missing DataMember attributes

  • Missing reserved web2 words

Maintenance

  • Expose StartupErrors for manual invocation

  • Updated documentation

  • Updated packages

July 2024

New Features

Memory Diagnostics (#374)

  • Add memory information to diagnostics

  • Better monitoring of application memory usage

Log Hashing (RavenDB) (#375)

  • BREAKING: Added MessageHash to Raven logs

  • Enables deduplication and better log analysis

Query Sorting (#377)

  • Allow SortOptions to be passed to GetQuery

  • More flexible query result ordering

Date Handling (#376)

  • Improved invalid date handling with tests

  • More robust date parsing

Description Attributes

  • Read [Description] attribute for custom actions

  • Better auto-documentation

Fixes

  • BREAKING: Logs_Search index was wrong

  • Missing alias in SQL statement for IsUserAuthTokenRevoked (PostgreSQL)

Maintenance

  • Updated packages

  • Performance: Prefer lockless access in Optimizer

  • Trim and normalize line endings for Description

June 2024

New Features

RavenDB Database Check

  • Added default enabled RavenDBOptions.CheckDatabaseExists

  • Automatic database existence verification

Settings Improvements

  • TrackLastLoginDateWithTime setting

  • Decode Settings ID if not found

  • Better settings management

Logging Enhancements

  • Allow verbose logs on GetApplication

  • Log more data if ExecuteAction throws exception

  • Handle Language before user exists (e.g., invalid password)

Performance

  • Use Environment.WorkingSet for showing memory usage

  • Removed lock for GetCachedEntityModel

Fixes

  • Fixed cacheupdate reloading loop

  • Handle issue where user has a group ID that no longer exists

Maintenance

  • Dropped .NET 7 support (end of life)

  • Updated packages to .NET 8

  • Updated Web3 for test projects

May 2024

New Features

Query Optimizations

  • Added TryGetChildCollectionAsQueryable

  • Makes detail queries use database queries for better performance

Caching Improvements

  • Use byte array directly for cache set

  • Better performance for cache operations

IgnoreProperty Extensions

  • Allow IgnorePropertyAttribute on Context as well

  • More flexible property ignoring

Proxy Support

  • Added GetClientIpFromProxiedRequest hook

  • Better support for applications behind proxies

Fixes

  • Fixed issue with HasGlobalSearch not being set

  • Made verbose log more fault resilient

Maintenance

  • Updated packages

  • Publish artifacts for release pipeline

April 2024

New Features

Advanced Hooks

  • Added Advanced.PreUserSettings

  • Customize user settings before loading

KeyValueListHandler

  • Added KeyValueListHandler for custom key-value processing

  • More flexible data handling

Two-Factor Authentication

  • Integrate TwoFactor with IDistributedCache to prevent replay attacks

  • More secure authentication flow

Fixes

  • Reordering program units does not sort items correctly

  • Handle RequestUri when HttpContext is disposed

Maintenance

  • Removed obsolete code for DocumentFormat

  • Updated packages

  • Added mail documentation

  • NonNullable consistency improvements

March 2024

New Features

LazySessionOperations Helper (RavenDB)

  • Added LazySessionOperationsEx.NullLoad helper

  • Optimizes null checking in lazy operations

Array Helpers

  • Added AsArray helper

  • Fixed GetEntities bugs

Report Improvements

  • Prefer keys by default in GetReport

  • Added Advanced.IsReportAllowed hook

Authentication Enhancements

  • Added AuthenticatorService.GetAuthTokenExpiration

  • Better token management

Fixes

  • Handle IsAllowed on AsyncStreamingAction

  • Fixed issue on New with shadow FK in Entity Framework Core (#372)

Maintenance

  • Updated demo JSON files

  • Switch demo to Web3

  • Added mode to only update JSON files

  • Manager.GetGroup nullability improvements

February 2024

New Features

ISplittedValueObjectHandler Interface (#369, #370)

  • New interface for handling split value objects

  • Enables custom value object splitting logic

Caching Improvements

  • Added and implemented AggressivelyCacheForAnHour

  • Better performance for frequently accessed data

Manager Helpers

  • Added Manager.HasCorrectTimeZoneOffset helpers

  • Better timezone handling in applications

OpenOperation Extensions

  • Added OpenOperation.WithPreClient

  • Allows pre-processing before client operations

KeyValueList Enhancements

  • Added generic KeyValueListAttribute

  • More flexible key-value list handling

Virtual Entity Loading

  • Better handling of loading virtual entities

  • Improved performance for virtual entity operations

Extension Methods

  • Added CloneAndAdd extension method (#367)

  • Simplifies collection manipulation

Fixes

  • Don't use AsNoTracking if not optimized

  • Fixed Abstractions using wrong XML file

  • Fixed Web2 vulcanize call without path

  • Missing dialog translations

Maintenance

  • Security updates for packages

  • Removed unused CommonMark package

  • Updated packages

  • Prefer Attribute IsDefined for better performance

  • Prefer User Name instead of DisplayName in logs

January 2024

New Features

Entity Helper Methods

  • Added PO/POA GetEntity/GetRequiredEntity helper methods

  • Simplifies entity retrieval with null safety

Azure Storage Enhancements

  • Added AzureStorageAccount HasKey/GetContainer methods

  • Better Azure blob storage integration

BinaryFile Improvements

  • Added BinaryFile implicit cast to string and TryParse

  • Easier file handling and conversion

RavenDB Query Helpers

  • Added IRavenQueryable GetSum helper

  • Simplifies aggregate queries in RavenDB

PersistentObject Enhancements

  • Added PersistentObjectTypeName helper

  • Added POA.Actions for accessing available actions

  • Hide Edit/New/Delete lines on PO Rights detail query when not needed

Fixes

  • Ignored disposed DatabaseConnectionState for RavenDB

  • Ignored ConnectionResetException in custom API methods

  • Fixed calling RefreshOperation with only type name

  • Fixed bulk construct on POA/PUI/Settings using disposed actions

  • Fixed POA.Actions implementation

Maintenance

  • Updated copyright year to 2024

  • Updated NuGet packages

  • Added XML documentation comments


Note: Commits marked with (test) have been excluded from this changelog as they are internal testing commits.

Last updated

Was this helpful?