Despite the fact that there was no news in this blog from DataObjects.Net team for a couple of months, this doesn't mean that we were having rest or watching endless TV-series. We've been fixing bugs and inventing some really cool features for our customers. Let's take a closer look at the details.
First of all, bugs fixed:
- JoinedTuple WCF deserialization is fixed. This might appear only in cases when Entity has more than 63 persistent properties
- Key.Equals & TypeReference.Accuracy were fixed
- Type descendants & interface implementors discovery in IndexBuilder is fixed
- Project template generated wrong Assembly name for projects with spaces in project name.
- HintGenerator throwed NullReferenceException on GenerateCleanupByForeignKeyHints method
- Foreign keys were missed in some complex scenarios
- Wrong linq translation of IN clause with empty list is fixed
- Wrong linq translation of Nullable boolean fields is fixed
- It wasn't possible to delete and create entity with same key (within active inconsistency region).
- Primary key alteration no more leads to table recreation
- Usage of Prefetch no more leads to possible memory leaks
- Bug with translation of Contains method
Updates to the existing functionality:
- SchemaComparisonResult is included into SchemaSynchonizationException for simplificationf of upgrade procedure writing and debugging
- StorageException now contains additional information about database, table, column, value and violated constraint
- Guid values can be used as TypeDiscriminator values
- The order of upgrade sequence is changed so unique constraints and foreign keys are removed at the very beginning of the upgrade procedure and are applied only after custom upgrade handlers finish their work
The most interesting part, features:
- Basic support for SqlGeometry & SqlGeography types, spatial index support in SQL Server driver.
- Precise control over reference properties indexing
- Partial (filtered) indexes based on lambda syntax
- Сontrol over primary and regular index clustering
- Creating and registering LINQ extensions made more user-friendly
- Attributes overriding
Simply put, the features are so dramatic that we are releasing the stuff as a major version update. DataObjects.Net 4.3.7 branch will become 4.3.8 and 4.4.0 will be known as 4.4.1 (one of our lead developers call this update as DataObjects.Net R2 and I understand him pretty much).
While the above mentioned changes are being thoroughly tested under various environments and being prepared for the release, we'll describe the features listed above in a dedicated series of posts.
Thank you! Stay tuned.
Nice guys!
ReplyDeleteExcellent work guys!
ReplyDelete:)
Thanks for your support! =)
ReplyDeleteNice to hear from you again.
ReplyDeleteIn relation to the 4.4.1 release what is the status of the 4.5 Beta (4) release.?
I assume that geoSpartical functions have been implemented for SQL Server due to a client request as PostGres/PostGis is a much more widely used GeoSpartical database (and free). Are there any plans to implement this in the PostGres driver?
Hello Tony,
ReplyDeleteRight after the 4.3.8 & 4.4.1 branches are out, we'll return to active 4.5 development.
As for geospatial data types support, you are right, a request was the reason for that feature.
The next 4.5 beta will have slightly reorganized structure of assemblies, we are doing this to increase the extensibility of various SQL servers support, e.g. this will help us to add support for geospatial or any other data types and functions with minimal efforts and without making any changes to the core part of the ORM.
Hey, nice work guys :)
ReplyDeleteThanks, pal =)
ReplyDeleteThis comment has been removed by the author.
ReplyDelete