DotRocks 1.3.5
A patch release of DotRocks — a native .NET driver, Entity Framework Core provider, and Roslyn analyzer suite built specifically for StarRocks. It implements its own managed StarRocks client protocol and takes no runtime dependency on any MySQL driver. This release completes the GREATEST/LEAST work started in 1.3.4 by implementing the EF-standard relational translation hooks, so the params-array EF.Functions.Greatest/Least overloads, Math.Max/Math.Min, and inline-collection Max()/Min() all translate to the native StarRocks functions.
Added
- EF Core: the EF-standard relational
EF.Functions.Greatest/Leastparams-array overloads (any argument count),Math.Max/Math.Min, and inline-collectionMax()/Min()(new[] { a, b, c }.Max()) now translate to the native StarRocksgreatest()/least()functions through the relationalGenerateGreatest/GenerateLeastvisitor hooks, with MySQL NULL semantics (the result is NULL when any argument is NULL) encoded in the nullability annotations. The DotRocks 2–4 argumentEF.Functions.Greatest/Leastoverloads shipped in 1.3.4 remain as compatible sugar.
Compatibility
- .NET 10 / C# 14. Source- and binary-compatible with 1.3.4 — no public API changes; the new translation surface is provider-internal. Queries using
Math.Max/Math.Min, the relational params-arrayEF.Functions.Greatest/Least, or inline-collectionMax()/Min()that previously failed with a translation error now execute on the server. NULL semantics note: StarRocks follows MySQL —greatest()/least()return NULL when any argument is NULL, unlike PostgreSQL and SQL Server, which ignore NULL arguments.
Full Changelog: v1.3.4...v1.3.5