Releases: DataObjects-NET/dataobjects-net
Releases · DataObjects-NET/dataobjects-net
7.1.2
- [main] Addressed issue when cycles in Entity dependency graph were not detected
- [main] Introduced DomainConfuguration.ExtensionConfigurations as unified configuration storage for extensions' configurations
- [main] DomainConfiguration.Load() method now has overloads which gets abstractions from Microsoft.Extensions.Configuration API
- [localization] LocalizationConfiguration.Load() method now has overloads which gets abstractions from Microsoft.Extensions.Configuration API
- [localization] ConfigureLocalizationExtension() extensions for DomainConfiguration are added, check ReadMe/documentation for examples of usage
- [reprocessing] ReprocessingConfiguration.Load() method now has overloads which gets abstractions from Microsoft.Extensions.Configuration API
- [reprocessing] ConfigureReprocessingExtension() extensions for DomainConfiguration are added, check ReadMe/documentation for examples of usage
- [security] SecurityConfiguration.Load() method now has overloads which gets abstractions from Microsoft.Extensions.Configuration API
- [security] ConfigureSecurityExtension() extensions for DomainConfiguration are added, check ReadMe/documentation for examples of usage
7.0.5
- [main] Some constructors of SqlPersistTask marked Obsolete, new constructors provided
- [main] Some constructors of CalculateProvider marked Obsolete, new constructors provided
- [main] Some constructors of AggregateProvider marked Obsolete, new constructors provided
- [main] Updated BitFaster.Caching package
- [main] Certain optimizations connected to query translation made
6.0.13
- [main] Fixed certain cases of bad translation of casts via 'as' operator in LINQ queries
- [main] Addressed certain issues of translation connected with comparison with local entity instance within LINQ queries
- [main] Fixed rare issues of incorrect translation of filtered index expressions including conditional expressions
- [main] Join/LeftJoin is denied to have the same expression instance for both inner/outer selector
- [main] Addressed issue when wrong type of join was chosen when .First/FirstOrDefalult() method was used as subquery
- [main] Added dedicated exception when RenameFieldHint.TargetType exists in current model but absent in storage model
- [main] Xtensive.Sql.Model.NodeCollection.Add() throws understandable exception in case of duplicate name of item
- [postgresql] Fixed issue of incorrect translation of conditional expressions including comparison with nullable fields
7.2.0 Beta 1
- [main] NET5 is removed from target frameworks, NET7 and NET8 are added instead
- [main] Some exceptions' serialization members were marked obsolete in NET8 library
- [main] Unused Xtensive.Collections.PriorityQueue is removed
- [main] Xtensive.Orm.Rse.Providers.Provider.Sources has changed return type to IReadOnlyList, as well as ctor parameter
- [main] SqlInsert.Values became obsolete and no longer in use. Use ValueRows collection to add value rows
- [main] DomainConfiguration.MaxNumberOfConditions is introduced
- [main] SqlDml.Truncate() is introduced.
- [main] WellKnown.MaxNumberOfConditions became obsolete, use new DomainConfiguration.MaxNumberOfConditions if needed
- [main] TypeHelper.GetSingleConstructor() and .GetSingleConstructorOrDefault() are marked obsolete
- [main] Session.DisableSaveChages() methods return null value in more cases. See methods' summaries
- [main] DirectSessionAccessor.OpenSystemLogicOnlyRegion() returns disposable struct instead of IDisposable
- [main] OperationRegistry's Disable/EnableSystemOperationRegistration methods return disposable struct instead of IDisposable
- [main] Temporary tables cleanup now uses TRUNCATE instead of DELETE when possible
- [main] Temporary tables population is increased with multi-row inserts - 256 and 16 items per INSERT
- [main] PersistParameterBinding has new field RowIndex, use it for multi-row inserts if needed
- [main] TemporaryTableDescriptor changed interface to IMultiRecordPersistDescriptor, fully compatible with IPersistDescriptor
- [main] SqlNode.Clone() method now returns SqlNode to take advantage of C# covariant returns and reduce casts overhead
- [main] Xtensive.Orm.Rse.Providers.ProviderVisitor is now generic with type parameter of method results
- [main] Improved exception handling if some appered during asynchronous Session opening
- [main] Fixed some ColumnInfoCollection and NodeCollection leaks
- [main] Overall performance and memory officiency improvements
- [main] Obsolete LockableExtensions.EnsureNotLocked is removed
- [main] Obsolete DomainConfiguration.DefaultVersioningPolicy is removed
- [main] Obsolete TypeInfo methods (GetImplementors(), GetInterfaces(), GetDescendants(), GetAncestors() and GetRoot()) are removed
- [main] Obsolete TypeInfoCollection FindXXX methods are removed
- [main] Obsolete PersistRequest constructor removed
- [main] Obsolete PersistRequestBuilder.CreatePersistRequest() method is removed.
- [main] Obsolete StorageDriver.Compile(ISqlCompileUnit, NodeConfigruation) method is removed
- [main] Obsolete MethodHelper.GetMethod() and .GetConstructor() methods are removed
- [main] Obsolete TypeHelper.GetConstructor() and .GetInterfaces() are removed
- [main] Obsolete SqlCompilerConfiguration.SchemaMapping and .DatabaseMapping properties and constructor are removed
- [main] Obsolete SqlNodeActualizer class is removed
- [main] Obsolete SqlCompilerContext.SqlNodeActualizer property is removed
- [main] Obsolete XtensiveSql.Dml.Extensions.IsNullReference() extension method is removed
- [firebird] NET5 is removed from target frameworks, NET7 and NET8 are added instead
- [mysql] NET5 is removed from target frameworks, NET7 and NET8 are added instead
- [oracle] QueryInfo.MaxQueryParameterCount actualized, it is 65535 now
- [oracle] NET5 is removed from target frameworks, NET7 and NET8 are added instead
- [postgresql] NET5 is removed from target frameworks, NET7 and NET8 are added instead
- [postgresql] QueryInfo.MaxQueryParameterCount actualized, it is 65535 now
- [sqlserver] NET5 is removed from target frameworks, NET7 and NET8 are added instead
- [sqlite] NET5 is removed from target frameworks, NET7 and NET8 are added instead
7.1.1
- [main] Improved memory efficiency of cached queries.
- [main] One of PersistRequest's constructors marked obsolete since it is no longer in use
7.0.4
- [main] Updated BitFaster.Caching package to version 1.0.7
6.0.12
- [main] Addressed DataTypeCollection.Add method issue of wrong adding storage-specifid types to the collection
- [main] Addressed rare issue of entities expire management when SessionOption.NonTransactionalReads is on
- [main] Fixed issue of skipping persist or query tasks during batching
- [main] Improved error message when the entity user operates with is removed, now it contains type of entity
- [main] Fixed query root (Query.All()) reuse issue which might lead to bad columns mapping and exception
- [sqlserver] Sql error messages for British English are correctly parsed
7.1.0
- [main] Added support for DefaultExpression within Linq queries
- [main] Support for TimeOnly ctors (time parts and ticks) in Linq, except for SQLite and MySQL providers
- [main] No Session.Activate() in ToTransactional extension, it affects EntitySet enumeration
7.1.0 RC
- [main] Add support for new .NET 6 DateOnly and TimeOnly types
- [main] Updated BitFaster.Caching package reference to v2.0.0
- [main] Fixed ColumnInfoCollection leakage on building indexes
- [sqlserver] Updated Microsoft.Data.SqlClient package references to v5.0.0 and v6.0.1
6.0.11
- [main] Added an option to remove cached queries of removing storage node along with the node, default behavior remains the same
- [postgresql] Dedicated exception when the extracting schema doesn't exist or it belongs to another user
- [weaver] Fixed constructor processing with try...catch, catch section now has correct leave