News, examples, tips, ideas and plans.
Thoughts around ORM, .NET and SQL databases.

Monday, September 30, 2013

DataObjects.Net 4.5.8 and 4.6.4

Finally, the new version of DataObjects.Net is out. Traditionally, we are releasing both major versions: 4.5.x & 4.6.x,

Changes in both DataObjects.Net 4.5.8 and 4.6.4:

[main] Added QueryEndpoint.Items() method for querying EntitySets within compiled queries
[main] Added support for DateTime.AddXxx() methods in LINQ translator
[main] Added support for System.Linq.EnumerableQuery in LINQ translator
[main] Fixed invalid key comparison under certain conditions
[main] Fixed EntitySet caching invalid state within DisableSaveChanges() scope
[main] Fixed incorrect column references in generated SQL for certain queries
[main] Fixed querying for types with enum type discriminators
[main] Fixed querying for types with enum key fields
[main] Fixed locking of entity that could not be persisted at the moment for some reason
[main] Fixed handling of temporary tables query with zero columns
[main] Fixed translation of GroupJoin() with temporary tables
[main] Fixed translation of Distinct() after Select()
[main] Fixed translation of ThenBy() that implicitly adds joins
[main] Fixed support for LINQ member compilers that return nullable values
[main] Fixed translation of as with subquery operand
[main] Fixed concurrent access issues with NameBuilder.GetHash method
[main] Fixed incorrect result of FirstOrDefault/SingleOrDefault in certain subqueries
[main] Optimized translation of String.IsNullOrEmpty() method
[main] Reduced number of casts in generated SQL when accessing enum fields
[main] Automatically handle namespace-only renames during upgrade
[main] PostSharp is upgraded to version
[postgresql] Npgsql is upgraded to version
[mysql] MySQL library is upgraded to version 6.7.4
[mysql] Fixed translation of bitwise operations
[mysql] Fixed translation of DateTime.DayOfWeek and DateTime.DayOfYear
[firebird] Firebird library is upgraded to version
[sqlserver] Fixed reading of large SqlDecimal values

Changes specific to DataObjects.Net 4.6.4:

[main] Added version validation on persist via SessionOptions.ValidateEntityVersions
[main] Added DomainConfiguration.ConnectionInitializationSql option
[main] Added support for Enum.HasFlags method in LINQ
[sqlite] Added support for :memory: data source
[main] Fixed regression in Session.Query.ExecuteDelayed introduced in 4.6.4 RC
[main] Fixed redundant delete queries when clearing key generator tables during upgrade
[main] Fixed NRE in StorageMappingBuilder when persistent type does not have a namespace
[main] Store partial index filter definitions in Metadata.Extension table instead of relying on information schema
[main] Improved diagnostic messages for multimapping configurations when database/schema is not found
[main] Improved diagnostic message when non-LINQ method is called within Session.Query.ExecuteDelayed
[sqlite] Fixed extraction of multi-column primary keys
[sqlite] SQLite library is upgraded to version
[sqlserver] Fixed incorrect SQL for table rename in non-default database


Just as always releases are available at our site and NuGet gallery.