Repository navigation
Bump linq2db from 6.2.1 to 6.5.1 - #32
Open
dependabot[bot] wants to merge 1 commit into
Open
dependabot[bot] wants to merge 1 commit into
dependabot[bot] wants to merge 1 commit into
Conversation
--- updated-dependencies: - dependency-name: linq2db dependency-version: 6.5.1 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Updated linq2db from 6.2.1 to 6.5.1.
Release notes
Sourced from linq2db's releases.
6.5.1
Highlights of this release:
LEFT JOINnow use the .NET default of the column's type, matching how the column itself is read (#5983)FromSql/FromSqlScalar/Sql.Exprno longer reuse stale cached SQL; capturedFormattableStringarguments are now parameters (#6003)date + (end - start)on SQLite, Firebird, Oracle and YDB (#5987)Provider-specific highlights:
DateTimecolumns work again (#5959)Full release notes
Nugets
New Contributors
Full Changelog: linq2db/linq2db@v6.5.0...v6.5.1
6.5.0
Highlights of this release:
TimeSpanduration columns — declare the unit an integral column stores with[Duration(…)], andTimeSpanmembers, arithmetic and comparisons translate to SQL. Date differences now measure elapsed time instead of counting calendar boundaries (#5750)TablesInScopeHintcalls now stack instead of silently dropping all but the innermost —.WithUpdLockInScope().WithRowLockInScope()emits both hints (#5850)UpdateOptimisticWithRefreshrefreshes the concurrency token on your entity after an optimistic update, so the same instance can be reused without re-reading the row (#5643)IInterceptableis public again, so a customIDataContextcan receive interceptors — and a compiled query ending inToList()/ToArray()now builds (#5813)LoadWithchains and entities with many loaded associations build substantially faster on first execution (#5774)ToListAsync()on a query withLoadWith(or a temp table, or a provider hint) now uses async ADO.NET instead of blocking a thread-pool thread, andInsert/Update/Delete/Mergeno longer reject aLoadWithquery (#5809)LoadWithfilter closing over an optional value no longer serves the first closure state's results to every later call — a filtered call could return unfiltered rows, or an unfiltered call return nothing (#5801)Sql.Extensionbuilder that reads an argument value no longer bakes it into the cached query — a second query with a different value silently ran the first one's SQL (#5841)counter.Next()twice in one predicate) no longer collapses into a single SQL parameter, which made the second occurrence filter on the first one's value (#5733)joined != null ? joined.X : fallbackinside aUnion/Concatbranch no longer drops its null check — non-matching rows came back asnullor0instead of the fallback (#5831)"p_" + id.ToString("N")inside aConcat) no longer fails the whole query (#5818)Count()over a left join to a grouping with a computed key no longer crashes with "Cannot get field for …" — a paging query that worked for the page failed on the total (#5802)GroupByentity key now works —group d by d.Master into g … g.Key.Details.ToList()(#5727)db.GetTable<Base>().Insert(() => new Derived { … })on an inheritance-mapped table no longer throws "Property 'X' is not defined for type 'Base'" (#5840)Sql.Windowfunctions that reference no column —Sql.Window.Count(w => w) == 3— now translate instead of throwingServerSideOnlyException(#5783)InsertOrReplace/Upsert— visible on the gRPC and WCF transports, which open a channel per call (#5762)Provider-specific highlights:
ORDER BYinside a window function is no longer emitted verbatim: it errored on SQL Server and SAP HANA, and MySQL 8 read it as an output-column position and ordered by that column (#5817)BulkCopyOptions.MaxSqlLengthForBatchmakes that limit configurable on any provider (#5828)DbContexttype used against two providers in the same process no longer shares a single mapping schema, which gave the second provider the first one's column names and types (#5780); and two servers of the same family in one process no longer share one cached provider when the context is configured with aDbDataSourceor an externalDbConnection(#5808)linq2db.FSharp:
Wherepredicates that capture an outer range variable now translate, and chainedgroupJoin … DefaultIfEmpty()emits realLEFT JOINs instead of dropping unmatched rows (#5701)LINQPad driver:
Packaging:
linq2db.cliand the LINQPad 5.lpx— now ship aTHIRD-PARTY-NOTICES.txt(#5863)Full release notes
Nugets
New Contributors
Full Changelog: linq2db/linq2db@v6.4.0...v6.5.0
6.4.0
Highlights of this release:
Sql.Window.*fluent API for window functions — ranking, offset, value, aggregate, statistical, regression, ordered-set and distribution functions, full ROWS/RANGE/GROUPS frames, named windows,FILTER,NULLS FIRST/LASTand OracleKEEP, with compile-time safety. ExistingSql.Ext.*().Over()queries keep working unchanged — they run on the new pipeline internally (#5468)LoadWith/ThenLoadand inline collection projections:KeyedQuery(buffers the parent query and loads children withWHERE key IN (…)) andCteUnion(collapses same-level collections into oneUNION ALLCTE). Selectable per query or globally, with automatic fallback (#5450)HasQueryFilter(key, …)and selectiveIgnoreFilters(keys), mirroring the EF Core 10 API, including EF Core keyed-filter flow-through (#5525)Upsertplus entity-basedInsert(item, …)/Update(item, …)DML APIs (#5482)linq2db.Analyzers— a new analyzer package shipped as a dependency oflinq2db, with ruleL2DB1001and a code fix that migrates the legacySql.Extwindow API toSql.Window. Opt out withEnableLinqToDBAnalyzers(#5703)NULLS FIRST/NULLS LASTcontrol onOrderBy/ThenBywith aDataOptionsdefault, rendered natively or emulated across all providers (#5561)Sql.NewGuid7()andGuid.CreateVersion7()mapping for UUIDv7 generation (#5648)'T option/'T voptioncolumns after.UseFSharp(), with none stored asNULL(#5624)PreferClientCalculationevaluates non-server-required projection expressions client-side, restoring v5 projection behavior (#5604)DistinctByemits nativeDISTINCT ONon PostgreSQL and DuckDB (#5630)OptimizeForSequentialAccessbecame a per-context option, fixing query-cache collisions between sequential and non-sequential reader plans (#5639)[Column]and[ValueConverter], binding by mapped column name rather than parameter name (#5659)PublishSingleFileself-contained deployments (#5489)ToLinqToDB()/ToLinqToDBTable()/GetTable<T>()helpers (#5378)object-typed projection member (#5680),InvalidCastExceptionon a local-collection LEFT JOIN feeding decimal arithmetic (#5587), invalid SQL when subtracting twoDateTime/DateTimeOffsetcolumns (#5581),[ExpressionMethod]running at materialization withIsColumn = false(#5578), nested member-path mappings throwing in MERGE setters and discriminators (#5545),InvalidCastExceptiononContainsin a correlated subquery (#5558), aggregates over a captured local collection turned into SQL subqueries (#5557), andORDER BYexpressions lifted from a subquery producing invalid SQL (#5556)Provider-specific highlights:
IGNORE NULLS/RESPECT NULLSwindow SQL (#5644); v11 and v12 dialects, with unsupported window features rejected client-side with a clear exception (#5687)[GetSqlDecimal]attribute readsdecimalcolumns whose precision exceeds the CLRdecimalrange instead of throwing (#5605)DbContextwith pooled contexts or disabled service-provider caching (#5695)linq2db.cli:
query,executeandschemacommands, plus an MCP server for agent-driven database access (#5678)Full release notes
Nugets
New Contributors
Full Changelog: linq2db/linq2db@v6.3.0...v6.4.0
6.3.0
Highlights of this release:
Enum.HasFlagtranslationstring.Concat/string.Join/TrimStart/TrimEndtranslation improvements (with many translator-bug fixes uncovered along the way)AsCtebuilder overload for explicit CTE materialization configuration (PostgreSQL, ClickHouse, DuckDB, SQLite, DuckDB)AsQueryable(db, ...)overload with per-column parameterization control forVALUESclausesNow/UtcNowtranslation with timezone awareness across providers; providers without TZ gracefully downgradeIgnoreConflictsoption forMultipleRowsmodeBulkCopyon MySql / MariaDB / PostgreSQL / SQLite / DuckDB (thanks @darko1979)SqlQueryDependentParamsissues, association discovery on interfaces, subquery null-aggregate SQL generation,UPDATE FROMregressions,ValueConverternull handling, CTE column removal, set-operator flattening,Sql.Rowconverters, predicate null-check optimization,FromSqlcaching,DropTable(throwExceptionIfNotExists: false)behavior,EXISTSover set queriesProvider-specific highlights:
linq2db.cli, LINQPad supportCOALESCEparameter type inference,DateTimeOffset.Nowno longer corruptsTIMESTAMP WITH TIME ZONEwrites, drop of global temp tables with data now worksDbType="..."mappingsEXECUTEblocks for create/drop tablesDROP TABLE IF NOT EXISTShandled on SQL levelUseSequence-defined fields now detected as identity (#5439)FSharp.Core10.1.x; record mapping fixes for case-only-distinct member nameslinq2db.cli:
linq2db.clinow ships as per-RID tool packages (win-x64/win-x86/win-arm64/linux-x64/linux-arm64/osx-arm64/osx-x64).dotnet tool install -g linq2db.cliauto-picks the variant for your SDK; add--arch x86when you need 32-bit (Jet OLE DB; or to match a 32-bit ACE / SqlCe / SAP HANA driver).--architecturescaffold option removed — bitness is now fixed at install time. Jet connection strings on a 64-bit process now fail fast with a clear x86-variant hint. See #5539.Full release notes
Nugets
What's Changed
... (truncated)
Commits viewable in compare view.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)