This release of DuckDB is named "Cyanoptera" after Spatula Cyanoptera, a species of duck found in western North and South America.
Please also refer to the announcement blog post: https://duckdb.org/2026/10/21/announcing-duckdb-200.html
What's Changed
- Make
Identifiera class instead of using string everywhere by @Mytherin in https://github.com/duckdb/duckdb/pull/23161 - Move to tidy-check diff again by @Mytherin in https://github.com/duckdb/duckdb/pull/23196
- Step 3: Make duplicate eliminator optimizer logic work for CTE rewrite by @kryonix in https://github.com/duckdb/duckdb/pull/23187
- Allow
MERGE INTOin triggers by @Dtenwolde in https://github.com/duckdb/duckdb/pull/23179 - RETURNING support for tables with triggers by @krleonid in https://github.com/duckdb/duckdb/pull/23153
- Remove special formatting code for main CMakeLists.txt by @Mytherin in https://github.com/duckdb/duckdb/pull/23211
- Expand aggregate state export to work with lists (
StateListType) and sort keys (StateSortKey), and add aggregate state export tolist,any_value/first/last,arg_min/arg_maxby @Mytherin in https://github.com/duckdb/duckdb/pull/23199 - Initial implementation of
variant_array_lengthprocessing function by @sebastiaan-dev in https://github.com/duckdb/duckdb/pull/23167 - Add row group count to parquet RETURN_STATS by @pdet in https://github.com/duckdb/duckdb/pull/23218
- Unify
ProfilerPrintFormatandExplainFormat, remove special casing and move towards pluggable tree renderers by @Mytherin in https://github.com/duckdb/duckdb/pull/23222 - Rework
quantileto uselistinfrastructure by @Mytherin in https://github.com/duckdb/duckdb/pull/23228 - Add
decimal_averageaggregate function by @Dtenwolde in https://github.com/duckdb/duckdb/pull/23097 - Step 4: Make unnest rewriter recognize CTE-based plans by @kryonix in https://github.com/duckdb/duckdb/pull/23240
- Rework ordered aggregates to use the
listinfrastructure by @Mytherin in https://github.com/duckdb/duckdb/pull/23231 - Pluggable combine types rules by @yan-alex in https://github.com/duckdb/duckdb/pull/23173
- Auto generate
select.gramby @Dtenwolde in https://github.com/duckdb/duckdb/pull/23236 - Unify quantile
update/combinecallbacks with the list aggregate by @Mytherin in https://github.com/duckdb/duckdb/pull/23247 - Add
JSONBenchto the benchmark suite by @Mytherin in https://github.com/duckdb/duckdb/pull/23265 - Add support for static linking C-API extensions by @Maxxen in https://github.com/duckdb/duckdb/pull/22251
- Add
vertex_extractfunction to get coordinates out of point-geometries by @Maxxen in https://github.com/duckdb/duckdb/pull/23252 - [Dev] Resolve
DEFAULTs for INSERT/UPDATE/MERGE_INTO at bind-time rather than plan-time by @Tishj in https://github.com/duckdb/duckdb/pull/23033 - Consistent ordering for gen files in package_build by @staticlibs in https://github.com/duckdb/duckdb/pull/23267
- Transform type literals into unbound logical types by @d-justen in https://github.com/duckdb/duckdb/pull/23237
- Remove UnaryAggregateDestructor, and instead fold it into UnaryAggregate by @Mytherin in https://github.com/duckdb/duckdb/pull/23268
- Add comment policy for bots by @Mytherin in https://github.com/duckdb/duckdb/pull/23272
- Fix null sentinel for keys in dict vector (Arrow) by @evertlammerts in https://github.com/duckdb/duckdb/pull/22648
- Parquet: add expression stats pruning for arithmetic filters by @Damon07 in https://github.com/duckdb/duckdb/pull/23264
- Add
init_local_state_finalizecallback to aggregate functions which allows them to create aFunctionLocalStatethat is persisted acrossFinalizecalls, and use this to speed up ordered aggregates by @Mytherin in https://github.com/duckdb/duckdb/pull/23270 - fix out-of-bounds read in strict time parsing by @jmestwa-coder in https://github.com/duckdb/duckdb/pull/23266
- Add support for
string_aggto export its state by making separators part of the signature by @Mytherin in https://github.com/duckdb/duckdb/pull/23271 - Remove redundancies in join filter creation by @d-justen in https://github.com/duckdb/duckdb/pull/23250
- Add setting
force_update_to_del_and_insertwhich forces updates to always be converted to delete and inserts by @Mytherin in https://github.com/duckdb/duckdb/pull/23281 - [Variant] Implement
SetVectorTypeforShreddedVectorBufferby @Tishj in https://github.com/duckdb/duckdb/pull/23280 - Commits on top of PR [#20859] by @lnkuiper in https://github.com/duckdb/duckdb/pull/23282
- Dead node counting fixes by @artjomPlaunov in https://github.com/duckdb/duckdb/pull/23289
- Add support for
quantile,median,madto aggregate state export by @Mytherin in https://github.com/duckdb/duckdb/pull/23285 - Optimize rollup / cube / grouping sets queries by folding them into CTEs to allow for cascading aggregation by @Mytherin in https://github.com/duckdb/duckdb/pull/23287
- Async Parquet Writes by @lnkuiper in https://github.com/duckdb/duckdb/pull/23283
- Step 5: Make Mark to Semi join conversion more stable by @kryonix in https://github.com/duckdb/duckdb/pull/23296
- Add setting: SET dialect_compatibility_mode='spark' by @yan-alex in https://github.com/duckdb/duckdb/pull/23251
- Remove stale PR workflow by @DinosL in https://github.com/duckdb/duckdb/pull/23301
- Fix flaky
AsyncFileWritertest by @lnkuiper in https://github.com/duckdb/duckdb/pull/23300 - [Variant] Fix crash for variant_extract on non-object shredded column by @Tishj in https://github.com/duckdb/duckdb/pull/23303
- Add Parquet ASYNC I/O for local files by @pdet in https://github.com/duckdb/duckdb/pull/23290
- Fix flaky
AsyncFileWritertest by @lnkuiper in https://github.com/duckdb/duckdb/pull/23309 - Simplify subquery planning for provably single-row subqueries by @lnkuiper in https://github.com/duckdb/duckdb/pull/23306
- Add
variant_comparatorwhich ensures variants are ordered / compared in the same manner as native DuckDB values by @Mytherin in https://github.com/duckdb/duckdb/pull/23307 - Add missing import / fix non-unity builds by @evertlammerts in https://github.com/duckdb/duckdb/pull/23308
- Pass
ParserOptionsin default macro generation by @nicholasjng in https://github.com/duckdb/duckdb/pull/23288 - [Dev] Refactor
MultiFileReader::GetVirtualColumnExpressionandBaseFileReader::expression_mapby @Tishj in https://github.com/duckdb/duckdb/pull/22928 - Allow slicing of shredded vectors, and fix issue with shredded vectors being fed into
StructVector::GetEntriesby @Mytherin in https://github.com/duckdb/duckdb/pull/23312 - Auto generate transform
expression.gram(Part 8) by @Dtenwolde in https://github.com/duckdb/duckdb/pull/23310 - Add
VariantIteratorwhich allows traversal of variant values without unshredding by @Mytherin in https://github.com/duckdb/duckdb/pull/23317 - Remove specialized variant comparison code by @Mytherin in https://github.com/duckdb/duckdb/pull/23319
- Internal [#9655]: Test Vector DOUBLE[3] by @hawkfish in https://github.com/duckdb/duckdb/pull/23320
- Add export/import callbacks for aggregates with non-standard state, and support
approx_top_k/approx_quantileby @Mytherin in https://github.com/duckdb/duckdb/pull/23304 - Avoid unnecessary call to ToUnifiedFormat in ColumnSegment filter by @Mytherin in https://github.com/duckdb/duckdb/pull/23324
- CMake: Set the extension base directory to the duckdb module dir by @nicholasjng in https://github.com/duckdb/duckdb/pull/23328
- Handle exceptions thrown while recovering from a failed commit by @Huey97 in https://github.com/duckdb/duckdb/pull/23298
- Use optional semantic values for generated transformer rules by @Dtenwolde in https://github.com/duckdb/duckdb/pull/23332
- [Parquet] Fix corrupted file invalidating the database by @Tishj in https://github.com/duckdb/duckdb/pull/23331
- Report <eof> in check_peg_parser parse errors by @fallintoplace in https://github.com/duckdb/duckdb/pull/22975
- Step 6: Flip the switch and have delim join as CTEs by default by @kryonix in https://github.com/duckdb/duckdb/pull/23333
- Add invoke scalar function by @feichai0017 in https://github.com/duckdb/duckdb/pull/23185
- Allow empty STRUCT types by @Maxxen in https://github.com/duckdb/duckdb/pull/23273
- Fix uninitialized TransactionContext::invalidation_policy and auto_rollback members by @evertlammerts in https://github.com/duckdb/duckdb/pull/23321
- Propagate shredded stats through
variant_comparatorby @Mytherin in https://github.com/duckdb/duckdb/pull/23336 - AGENTS.md: Drop in-process by @szarnyasg in https://github.com/duckdb/duckdb/pull/23345
- Clean-up VariantIterator API and unify it with vector iterator infrastructure by @Mytherin in https://github.com/duckdb/duckdb/pull/23346
- Support AFTER INSERT FOR EACH ROW triggers by @EtgarDev in https://github.com/duckdb/duckdb/pull/23284
- Add
shredded_vectoroption todebug_verify_vectorby @Mytherin in https://github.com/duckdb/duckdb/pull/23343 - Fix state export finalize with non-zero offset, and update list of skipped tests by @Mytherin in https://github.com/duckdb/duckdb/pull/23349
- Propagate stats in
structured type -> variantcasts by @Mytherin in https://github.com/duckdb/duckdb/pull/23347 - Deprecate Implicit Table-Function Identifier String Conversion by @kryonix in https://github.com/duckdb/duckdb/pull/23350
- Support submodules in extensions patching process by @staticlibs in https://github.com/duckdb/duckdb/pull/23191
- Nicer variable syntax by @Dtenwolde in https://github.com/duckdb/duckdb/pull/21194
- Remove
TransformEnumby @Dtenwolde in https://github.com/duckdb/duckdb/pull/23355 - Quote special object keys in json_each/json_tree fullkey and path by @truffle-dev in https://github.com/duckdb/duckdb/pull/23206
- New
debug_local_file_system_delay_mssetting and asynchronous file initialization/finalization by @lnkuiper in https://github.com/duckdb/duckdb/pull/23353 - Fix leak on pending query close by @evertlammerts in https://github.com/duckdb/duckdb/pull/23344
- Allow table functions to propagate the query return type by @Mytherin in https://github.com/duckdb/duckdb/pull/23358
CompressedMaterializationandJoinFilterPushdownforVARIANTby @lnkuiper in https://github.com/duckdb/duckdb/pull/23356- Use the new
VariantIteratorto unshred instead of first decomposing intoVariantValuefollowed by re-constructing the variant by @Mytherin in https://github.com/duckdb/duckdb/pull/23359 - In variant_extract correctly traverse child stats during stats propagation by @Mytherin in https://github.com/duckdb/duckdb/pull/23361
- Make list aggregate append work on batches of rows instead of per rows and implement cluster update function by @Mytherin in https://github.com/duckdb/duckdb/pull/23380
- [SqllogicTester] Add
--stdinoption to read statements from stdin by @Tishj in https://github.com/duckdb/duckdb/pull/23381 - Add support for state export to ordered aggregates by @Mytherin in https://github.com/duckdb/duckdb/pull/23376
- Clean up examples folder by @d-justen in https://github.com/duckdb/duckdb/pull/23378
- Allow triggering internal join types by @hannes in https://github.com/duckdb/duckdb/pull/23339
- CLI: mode .trash should not force result materialization by @Teggy in https://github.com/duckdb/duckdb/pull/23377
- Fix sleep overflow by @dentiny in https://github.com/duckdb/duckdb/pull/23395
- Add Parquet variant of JSONBench by @Mytherin in https://github.com/duckdb/duckdb/pull/23397
- Fix metadata reader offset advancement by @wufengwind in https://github.com/duckdb/duckdb/pull/23392
- Add support for compressed materialization for geometry points by @Maxxen in https://github.com/duckdb/duckdb/pull/23393
- Enable parser tools (bison) for musl main extensions by @smvv in https://github.com/duckdb/duckdb/pull/23401
- Replace slow 'dd bs=1' calls and verify extensions concurrently by @smvv in https://github.com/duckdb/duckdb/pull/23402
- Add support for pushing collations into lists using
lambda_transform, and add support for collations tolist_contains / list_positionby @Mytherin in https://github.com/duckdb/duckdb/pull/23400 - Merge
v1.5-variegatainto main by @Mytherin in https://github.com/duckdb/duckdb/pull/23403 - Rework parquet variant reading to use
ParquetVariantIteratorand removeVariantValueclass by @Mytherin in https://github.com/duckdb/duckdb/pull/23399 - Add dictionary surviving hash join by @ahmetkarapinar in https://github.com/duckdb/duckdb/pull/23360
- Infer geometry type based on WKB string stats by @Maxxen in https://github.com/duckdb/duckdb/pull/23394
- Feature/ilike constant pattern fastpath by @krleonid in https://github.com/duckdb/duckdb/pull/23406
PhysicalCopyToFileasync fixes and improvements by @lnkuiper in https://github.com/duckdb/duckdb/pull/23418- Fix connection_id regression in EndQueryInternal logging by @rustyconover in https://github.com/duckdb/duckdb/pull/21884
- Use github script to add member label and move PR to draft by @smvv in https://github.com/duckdb/duckdb/pull/23417
- Fix client ctx ref cycle by @evertlammerts in https://github.com/duckdb/duckdb/pull/23372
- Add managed async task queue by @guillesd in https://github.com/duckdb/duckdb/pull/23404
- check for interrupt state in ExecuteTaskInternal by @evertlammerts in https://github.com/duckdb/duckdb/pull/23379
- Fix stale projection maps in ProjectionPullup by @DinosL in https://github.com/duckdb/duckdb/pull/23424
- Skip caching when no version metadata available by @dentiny in https://github.com/duckdb/duckdb/pull/23427
- Clean async tasks after schedule by @dentiny in https://github.com/duckdb/duckdb/pull/23410
- fix: skip deduplication for volatile aggregates and window expressions by @Pratzz1202 in https://github.com/duckdb/duckdb/pull/23413
- Test and fix single-thread async draining by @lnkuiper in https://github.com/duckdb/duckdb/pull/23436
- Fix type inconsistency for thread count variables by @c-herrewijn in https://github.com/duckdb/duckdb/pull/23438
- fix out-of-bounds read in substring with negative offset by @jmestwa-coder in https://github.com/duckdb/duckdb/pull/23429
- Internal [#9375]: TIME_BUCKET For TIME by @hawkfish in https://github.com/duckdb/duckdb/pull/23411
- Add dictionary-aware cache operator by @ahmetkarapinar in https://github.com/duckdb/duckdb/pull/23447
- Support AFTER DELETE FOR EACH ROW triggers with OLD.col references by @krleonid in https://github.com/duckdb/duckdb/pull/23452
- Bump postgres_scanner, remove patches by @carlopi in https://github.com/duckdb/duckdb/pull/23451
- Sort unordered delete return IDs to stabilize test by @smvv in https://github.com/duckdb/duckdb/pull/23450
- Add support for partial shredded stats emission for parquet variants by @Mytherin in https://github.com/duckdb/duckdb/pull/23439
- Clear stale projection maps after CTE rewrite pass by @kryonix in https://github.com/duckdb/duckdb/pull/23456
- Add
QualifiedNameusage to Function/Type/Window expression, and add hash / equality by @Mytherin in https://github.com/duckdb/duckdb/pull/23455 - Preserve original chunk cardinality in TryProbeConstant by @smvv in https://github.com/duckdb/duckdb/pull/23431
- Emit shredded vectors from Parquet when reading variant columns by @Mytherin in https://github.com/duckdb/duckdb/pull/23454
- Make regex operators match PostgreSQL behaviour by @lnkuiper in https://github.com/duckdb/duckdb/pull/23432
- Implement cryptographic hash functions in
EncryptionUtilby @lnkuiper in https://github.com/duckdb/duckdb/pull/23461 - Add
QualifiedNameusage toDropInfo/AlterInfo/CopyInfoby @Mytherin in https://github.com/duckdb/duckdb/pull/23460 - Add a fast path for reading all-NULL columns in Parquet by @Mytherin in https://github.com/duckdb/duckdb/pull/23464
- Refactor Multi-File Scan for ASYNC I/O by @pdet in https://github.com/duckdb/duckdb/pull/23419
- fix: raise error on invalid
regexp_replacereplacement strings by @Vallabh-1504 in https://github.com/duckdb/duckdb/pull/23422 - Add
QualifiedNameusage to CreateInfo by @Mytherin in https://github.com/duckdb/duckdb/pull/23467 - Make profiling printers pluggable through a
ProfilerExtension, and use this in the CLI to add syntax highlighting toEXPLAIN (ANALYZE)output by @Mytherin in https://github.com/duckdb/duckdb/pull/23470 - Issue [#23441]: Distinct Self Join by @hawkfish in https://github.com/duckdb/duckdb/pull/23446
- Optimize single-key hash group partitioning performance by @lnkuiper in https://github.com/duckdb/duckdb/pull/23449
- Move
BaseTableReftoQualifiedNameby @Mytherin in https://github.com/duckdb/duckdb/pull/23471 - Add a JSON API and use that instead of calling
yyjsondirectly by @Mytherin in https://github.com/duckdb/duckdb/pull/23466 - Copy table_filters to LHS scan in late materialization by @baolinhuang in https://github.com/duckdb/duckdb/pull/23453
- fix integer overflow when sizing the DELTA_BYTE_ARRAY length buffer by @jmestwa-coder in https://github.com/duckdb/duckdb/pull/23420
- More
QualifiedName, and preserve qualified names as much as possible instead of going back to catalog/schema/name by @Mytherin in https://github.com/duckdb/duckdb/pull/23474 - Fix eviction node memleak when external file cache disabled by @dentiny in https://github.com/duckdb/duckdb/pull/23444
- Add I/O metrics test harness, and fix many places where the
QueryContextwas not passed in correctly by @Mytherin in https://github.com/duckdb/duckdb/pull/23477 - [ASYNC I/O] Refactor Multifile Scan for Read Ahead by @pdet in https://github.com/duckdb/duckdb/pull/23472
- Push down type casts to file readers by @myrrc in https://github.com/duckdb/duckdb/pull/22788
- Finalize hash groups early in
PartitionedCopyby @lnkuiper in https://github.com/duckdb/duckdb/pull/23481 - Optimize flat contiguous string appends to
ColumnDataCollectionby @lnkuiper in https://github.com/duckdb/duckdb/pull/23485 - Push
QualifiedNameintoEntryLookupInfoin Catalog look-ups, and use QualifiedName directly in more places by @Mytherin in https://github.com/duckdb/duckdb/pull/23478 - Fix partial join filter pushdown through projections by @ted-wq-x in https://github.com/duckdb/duckdb/pull/23484
- Transformer trampoline skeleton by @Dtenwolde in https://github.com/duckdb/duckdb/pull/23414
- More
QualifiedNameclean-up, preserveQualifiedNameas much as possible by @Mytherin in https://github.com/duckdb/duckdb/pull/23487 - Avoid using
INVALID_CATALOG/DEFAULT_SCHEMAin identifiers inQualifiedNameby @Mytherin in https://github.com/duckdb/duckdb/pull/23488 - Attached database invalidation scope by @artjomPlaunov in https://github.com/duckdb/duckdb/pull/23468
- Rework
query_treeprofiler renderer - and add syntax highlighting to it in the CLI by @Mytherin in https://github.com/duckdb/duckdb/pull/23475 - Make
QualifiedNameimmutable and instead override the entire qualified name when modified by @Mytherin in https://github.com/duckdb/duckdb/pull/23490 - [WIP] Add support for creating nested schemas by @Mytherin in https://github.com/duckdb/duckdb/pull/23492
- Generate WAL serialization code, instead of manually writing it by @Mytherin in https://github.com/duckdb/duckdb/pull/23495
- Fix time duration calculation by @dentiny in https://github.com/duckdb/duckdb/pull/23293
- [WIP] Add support for dropping nested schemas by @Mytherin in https://github.com/duckdb/duckdb/pull/23497
- Query Profiler: Rework
FORMAT HTMLto an interactive display, and add.webandFORMAT WEBto automatically open in a web browser by @Mytherin in https://github.com/duckdb/duckdb/pull/23494 - Make LogicalGet SupportSerialization check more robust by @kryonix in https://github.com/duckdb/duckdb/pull/23476
- Fix JSON COPY date/time formatting for nested values by @OlexG in https://github.com/duckdb/duckdb/pull/23329
- Internal [#9813]: dtime_t Type Safety by @hawkfish in https://github.com/duckdb/duckdb/pull/23493
- Improve cache memory estimation on filepath cache object by @dentiny in https://github.com/duckdb/duckdb/pull/23482
- Allow non-"list" LIST child name in remap_struct by @regadas in https://github.com/duckdb/duckdb/pull/23437
- Fix DISTINCT window aggregate ordering by @mohsinsurani in https://github.com/duckdb/duckdb/pull/23491
- Make sure chunks are tightly packed when bypassing the sort by @lnkuiper in https://github.com/duckdb/duckdb/pull/23502
- Fix test runner encoding problem and format julia code on main by @smvv in https://github.com/duckdb/duckdb/pull/23505
- Httplib backport security issues by @ProjectMutilation in https://github.com/duckdb/duckdb/pull/23440
- Add
LogicalType::TUPLEby @Maxxen in https://github.com/duckdb/duckdb/pull/23465 - Collect source-based code coverage for fast tests by @smvv in https://github.com/duckdb/duckdb/pull/23486
- Add error handling around
exportoption by @Dtenwolde in https://github.com/duckdb/duckdb/pull/23508 - autocheckpoint error propagation by @artjomPlaunov in https://github.com/duckdb/duckdb/pull/23510
- bound multi-byte reads in UTF8ToCodepoint by @jmestwa-coder in https://github.com/duckdb/duckdb/pull/23459
- Upload codecov as github artifacts by @smvv in https://github.com/duckdb/duckdb/pull/23509
- Add eager aggregation to PartialAggregatePushdown by @ywelsch in https://github.com/duckdb/duckdb/pull/23506
- Bump aws extension, remove deprecated function by @yan-alex in https://github.com/duckdb/duckdb/pull/23503
- Fuzzer pivot issue with
ConstructConstantFromExpressionby @Dtenwolde in https://github.com/duckdb/duckdb/pull/23511 - Allow more expressions in PositionExpression by @Dtenwolde in https://github.com/duckdb/duckdb/pull/23523
- make unittest cli/config parsing lenient with lists by @benfleis in https://github.com/duckdb/duckdb/pull/23525
- Fix FORCE INSTALL being ignored by new PEG parser by @mlafeldt in https://github.com/duckdb/duckdb/pull/23524
- Add ICU date_diff support for TIMESTAMPTZ_NS by @jingdaws in https://github.com/duckdb/duckdb/pull/23302
- Don't push down CAST if there's a TRY_CAST by @myrrc in https://github.com/duckdb/duckdb/pull/23535
- Address test warning by @dentiny in https://github.com/duckdb/duckdb/pull/23546
- Add helper iterators around SQLStatements (either from the parser or post pre-processing) by @carlopi in https://github.com/duckdb/duckdb/pull/23291
- Rename columns to original names before passing to reader if they were aliased by @myrrc in https://github.com/duckdb/duckdb/pull/23548
- Add windows_undefs to a multi-file reader header by @staticlibs in https://github.com/duckdb/duckdb/pull/23541
- Add
FETCH FIRST/NEXTsyntax by @Dtenwolde in https://github.com/duckdb/duckdb/pull/23533 - Rewrite
LEFTtoANTIif there is aIS NULLfilter on the null-extended side by @lnkuiper in https://github.com/duckdb/duckdb/pull/23550 - Dont special-case geometry stats pruning, pass child stats to filter callback by @Maxxen in https://github.com/duckdb/duckdb/pull/23540
- Issue [#18039]: Nested Comparison Semantics by @hawkfish in https://github.com/duckdb/duckdb/pull/23539
- Fold empty list contains filters to EMPTY_RESULT by @dentiny in https://github.com/duckdb/duckdb/pull/23543
- Polish, no reference<clientcontext> but ClientContext& by @carlopi in https://github.com/duckdb/duckdb/pull/23554
- Bump aws to cloudformation_create_stack by @carlopi in https://github.com/duckdb/duckdb/pull/23558
- Don't allow empty identifiers by @Dtenwolde in https://github.com/duckdb/duckdb/pull/23553
- Fix typo in UNNEST error message (#23532) "at lease" → "at least" by @tempewda in https://github.com/duckdb/duckdb/pull/23538
- Codename 'Cyanoptera' by @carlopi in https://github.com/duckdb/duckdb/pull/23056
- Add ClientContext::BindStatement by @evertlammerts in https://github.com/duckdb/duckdb/pull/23526
- [MultiFileReader] Add virtual
GetMetadatafunction by @Tishj in https://github.com/duckdb/duckdb/pull/23571 - Implement
CONNECT '<uri>' [(OPTS...)]as ephemeral attach by @carlopi in https://github.com/duckdb/duckdb/pull/23555 - Optimizer: use UTF-8 successor for LIKE prefix pushdown by @wufengwind in https://github.com/duckdb/duckdb/pull/23559
- Improve connect integration by @carlopi in https://github.com/duckdb/duckdb/pull/23576
- Propagate client context for stats fetch by @dentiny in https://github.com/duckdb/duckdb/pull/23582
- Fix ART iterator crash on empty table close range scan (#23064) by @preksha-kamalesh in https://github.com/duckdb/duckdb/pull/23573
- Make
chains_longer_than_oneinJoinHashTableanatomicby @lnkuiper in https://github.com/duckdb/duckdb/pull/23597 - Add regression test for foreign key violation message by @kalyanamdewri in https://github.com/duckdb/duckdb/pull/23584
- Configurable approximate join order threshold by @jonaskr8 in https://github.com/duckdb/duckdb/pull/23530
- Add parquet as ducklake dep by @smvv in https://github.com/duckdb/duckdb/pull/23598
- Disable function coverage in report to remove 5k HTML pages by @smvv in https://github.com/duckdb/duckdb/pull/23600
- bump sqlsmith by @c-herrewijn in https://github.com/duckdb/duckdb/pull/23632
- Fix stats collection for dictionary encoding by @dentiny in https://github.com/duckdb/duckdb/pull/23634
- unittest: emit event w/ stats for harnesses (pytest) by @benfleis in https://github.com/duckdb/duckdb/pull/23572
- Fix row group pruning based on rowid filters by @dentiny in https://github.com/duckdb/duckdb/pull/23628
- Bump Postgres, MySQL and SQLite by @staticlibs in https://github.com/duckdb/duckdb/pull/23621
- Address test warning by @dentiny in https://github.com/duckdb/duckdb/pull/23620
- Detect regressions in PRs using larger TPC-H and TPC-DS benchmarks by @smvv in https://github.com/duckdb/duckdb/pull/23638
- Allow
UNNESTinGROUP BYby @lnkuiper in https://github.com/duckdb/duckdb/pull/23644 - Fix TRY_CAST to BIGNUM for invalid strings by @Schwarf in https://github.com/duckdb/duckdb/pull/22450
- Fix regressions caused by Expression Table Filter Rework by @lnkuiper in https://github.com/duckdb/duckdb/pull/23642
- Heap-based transformer (Trampoline) script by @Dtenwolde in https://github.com/duckdb/duckdb/pull/23578
- Fix check in clustered aggregation by @lnkuiper in https://github.com/duckdb/duckdb/pull/23647
- Use all hardware threads during benchmarks by @smvv in https://github.com/duckdb/duckdb/pull/23643
- Create alpha releases on main CI run by @smvv in https://github.com/duckdb/duckdb/pull/23649
- Revive [#23561] by @lnkuiper in https://github.com/duckdb/duckdb/pull/23657
- Issue [#23640]: Window Value EXCLUDE by @hawkfish in https://github.com/duckdb/duckdb/pull/23650
- Packrat parsing by @Dtenwolde in https://github.com/duckdb/duckdb/pull/23646
- Fix missing traversal for (correlated) subqueries in non-inner join conditions by @kryonix in https://github.com/duckdb/duckdb/pull/23599
- Introduce debug filesystem by @dentiny in https://github.com/duckdb/duckdb/pull/23473
- fix negative count over reversed window frames by @DinosL in https://github.com/duckdb/duckdb/pull/23637
- Fix string length stats propagation by @dentiny in https://github.com/duckdb/duckdb/pull/23615
- Pushdown prefix query by @dentiny in https://github.com/duckdb/duckdb/pull/23604
- Fix named window inheriting from an earlier window in the same WINDOW clause by @vismaytiwari in https://github.com/duckdb/duckdb/pull/23569
- Convert left function to prefix comparison by @dentiny in https://github.com/duckdb/duckdb/pull/23624
- Propagate stats for least/greatest by @dentiny in https://github.com/duckdb/duckdb/pull/23618
- Monotone stats pruning by @carlopi in https://github.com/duckdb/duckdb/pull/23609
- Implement unary minus rule by @dentiny in https://github.com/duckdb/duckdb/pull/23608
- Monotone preimage by @carlopi in https://github.com/duckdb/duckdb/pull/23610
- Prefetch DuckDB header on attach to cut redundant reads by @carlopi in https://github.com/duckdb/duckdb/pull/23613
- Improve TPC-H dbgen progress reporting, ETA stability, and generation performance by @kryonix in https://github.com/duckdb/duckdb/pull/23665
- unittest: support harnessed (unit)test: add controls for TEMP_DIR (and related) by @benfleis in https://github.com/duckdb/duckdb/pull/23574
- Fix ROW_NUMBER() OVER () over read_duckdb returning file-local row numbers by @vismaytiwari in https://github.com/duckdb/duckdb/pull/23667
- fix hanging test runner by @benfleis in https://github.com/duckdb/duckdb/pull/23673
- Add
make parser-grammarand check for diff in CI by @Dtenwolde in https://github.com/duckdb/duckdb/pull/23666 - Fix TRY_CAST throw exception for interval type by @dentiny in https://github.com/duckdb/duckdb/pull/23682
- Fix TRY_CAST throw exception for floating point by @dentiny in https://github.com/duckdb/duckdb/pull/23684
- Check staged extensions in CI by @smvv in https://github.com/duckdb/duckdb/pull/23671
- Task executor use notification to block wait completion by @dentiny in https://github.com/duckdb/duckdb/pull/23690
- Skip compression detection when specified by @dentiny in https://github.com/duckdb/duckdb/pull/23612
- Add
.manualto shell by @Maxxen in https://github.com/duckdb/duckdb/pull/23636 - Fix duplicate MAP entries by @dentiny in https://github.com/duckdb/duckdb/pull/23695
- Storage: reject invalid DICT_FSST symbol tables by @wufengwind in https://github.com/duckdb/duckdb/pull/23627
- Cleanup include graph by @carlopi in https://github.com/duckdb/duckdb/pull/23579
- Improve TPC-DS dsdgen progress reporting and generation performance by @kryonix in https://github.com/duckdb/duckdb/pull/23696
- Round decimal strings consistently when casting VARCHAR to BIGNUM by @EshwarCVS in https://github.com/duckdb/duckdb/pull/23689
- APPLY_PATCHES back in mysql_scanner, postgres_scanner, sqlite_scanner and sqlsmith by @carlopi in https://github.com/duckdb/duckdb/pull/23717
- make extension-patch-check by @carlopi in https://github.com/duckdb/duckdb/pull/23718
- [Async I/O] Read Ahead Interface + Parquet by @pdet in https://github.com/duckdb/duckdb/pull/23662
- Collect exact rowgroup stats when possible by @dentiny in https://github.com/duckdb/duckdb/pull/23557
- Move type pushdown after filter pushdown, don't push it filter is present by @myrrc in https://github.com/duckdb/duckdb/pull/23734
- Fix BETWEEN by @dentiny in https://github.com/duckdb/duckdb/pull/23699
- Make DataChunk::size() and optional_idx accessors inlineable by @carlopi in https://github.com/duckdb/duckdb/pull/23738
- Internal [#9890]: ENUM::VARCHAR Compare Constant by @hawkfish in https://github.com/duckdb/duckdb/pull/23751
- Implement stats propagation callback for
prefixby @dentiny in https://github.com/duckdb/duckdb/pull/23749 - Push down scalar functions to file readers by @myrrc in https://github.com/duckdb/duckdb/pull/23528
- delta/uc ext: update ref, remove patches by @benfleis in https://github.com/duckdb/duckdb/pull/23711
- Bump Iceberg by @Tmonster in https://github.com/duckdb/duckdb/pull/23754
- Partial revert of [#23649], this can still be triggered explicitly by @carlopi in https://github.com/duckdb/duckdb/pull/23755
- Preserve verbatim ATTACH path via AttachedDatabase::GetOriginalPath() by @carlopi in https://github.com/duckdb/duckdb/pull/23759
- Split up
LogicalSimpleinto separate classes by @Mytherin in https://github.com/duckdb/duckdb/pull/23756 - Convert TIMETZ to UTC on parquet write by @dentiny in https://github.com/duckdb/duckdb/pull/23767
- Propagate architecture flags to C dependencies when compiling with NATIVE_ARCH=1 by @krenzland in https://github.com/duckdb/duckdb/pull/23784
- Avoid CI failing randomly depending on CI machine config by @carlopi in https://github.com/duckdb/duckdb/pull/23783
- Remove patches, bump postgres to include CONNECT fixes (redshift + DDL fixing return) by @carlopi in https://github.com/duckdb/duckdb/pull/23777
- Fixup some bugs in recent dsdgen parallelization work by @carlopi in https://github.com/duckdb/duckdb/pull/23761
- Fix INTERNAL error casting pre-epoch TIMESTAMP_NS to TIME_NS by @apoorva-01 in https://github.com/duckdb/duckdb/pull/23781
- Fix CLI JSON rendering for nested VARIANT by @souvikDevloper in https://github.com/duckdb/duckdb/pull/23765
- Fix external file cache crash on insertion by @dentiny in https://github.com/duckdb/duckdb/pull/23779
- Fix/lambda interrupt check by @krleonid in https://github.com/duckdb/duckdb/pull/23706
- Propagate stats for floating points for
absfunction by @dentiny in https://github.com/duckdb/duckdb/pull/23747 - fix: VARCHAR to DECIMAL scientific-notation rounding truncation by @Functionhx in https://github.com/duckdb/duckdb/pull/23773
- Bump azure, delta, unity_catalog extensions to main/HEAD by @benfleis in https://github.com/duckdb/duckdb/pull/23799
- Accumulate probe match count thread-locally by @gropaul in https://github.com/duckdb/duckdb/pull/23771
- Validity fixes for reading arrow into a dictionary vector by @evertlammerts in https://github.com/duckdb/duckdb/pull/23797
- Fix IsComplete for Decimal by @evertlammerts in https://github.com/duckdb/duckdb/pull/23802
- Storage: validate dictionary string indexes by @wufengwind in https://github.com/duckdb/duckdb/pull/23630
- Bugfix: ALTER TYPE rewrite could materialize stale values when another transaction pinned an older snapshot by @Liuzw1998 in https://github.com/duckdb/duckdb/pull/23791
- Add binom function by @hacoobamatata in https://github.com/duckdb/duckdb/pull/23764
- SQLLogic Tester: Add support for
init_sqllogic/cleanup_sqllogicwhich allows for running sqllogictest statements before and after a test in test configs by @Mytherin in https://github.com/duckdb/duckdb/pull/23807 - Add external resource type registry + SQL level (and C++ level)
create_external_resourceby @carlopi in https://github.com/duckdb/duckdb/pull/23731 - Build fix by @pdet in https://github.com/duckdb/duckdb/pull/23814
- Fix DICT_FSST filter by @dentiny in https://github.com/duckdb/duckdb/pull/23815
- Handle infinite timestamp for parquet timestamp by @dentiny in https://github.com/duckdb/duckdb/pull/23822
- Fix timestamp_tz_ns_t -> timestamp_ns_t conversion deadloop by @dentiny in https://github.com/duckdb/duckdb/pull/23817
- Add missing include by @evertlammerts in https://github.com/duckdb/duckdb/pull/23812
- Fix: reset empty_range in the TIMESTAMP range() table function by @wmTJc9IK0Q in https://github.com/duckdb/duckdb/pull/23811
- Fix quoting rules in QualifiedName::ParseComponents by @JelteF in https://github.com/duckdb/duckdb/pull/23798
- Bump aws, adding cloudformation listing and resource type by @carlopi in https://github.com/duckdb/duckdb/pull/23830
- Expression filter handle NOT IN NULL by @dentiny in https://github.com/duckdb/duckdb/pull/23825
- Parquet: validate bloom filter payload length by @wufengwind in https://github.com/duckdb/duckdb/pull/23826
- Fix canonical bindings for nested common subplans by @kryonix in https://github.com/duckdb/duckdb/pull/23839
- More missing includes breaking non-unity builds by @evertlammerts in https://github.com/duckdb/duckdb/pull/23837
- Enable DICT_FSST by default by @dentiny in https://github.com/duckdb/duckdb/pull/23733
- Implement TIMESTAMP_NS -> TIMESTAMPTZ_NS by @dentiny in https://github.com/duckdb/duckdb/pull/23832
- Fix epoch_ns for infinity timestamp by @dentiny in https://github.com/duckdb/duckdb/pull/23834
- Validate catalog entry read by @dentiny in https://github.com/duckdb/duckdb/pull/23836
- Fix Parquet bloom filter pruning for blobs by @kryonix in https://github.com/duckdb/duckdb/pull/23829
- Add guard to prevent exception in
test_vector_typesby @sebastiaan-dev in https://github.com/duckdb/duckdb/pull/23831 - Support
ANALYSEwhere we supportANALYZEby @Dtenwolde in https://github.com/duckdb/duckdb/pull/23843 - Row-group pruning on boolean columns via NumericStats zonemap by @dentiny in https://github.com/duckdb/duckdb/pull/23726
- Improve pruning via string stats by @dentiny in https://github.com/duckdb/duckdb/pull/23728
- Add json_set(), json_insert(), json_replace() and json_remove() scalar functions by @mustafahasankhan in https://github.com/duckdb/duckdb/pull/23786
- Fix for new extension build when used from within extensions by @Mytherin in https://github.com/duckdb/duckdb/pull/23862
- Inline Value::IsNan by @dentiny in https://github.com/duckdb/duckdb/pull/23852
- Preserve NULL semantics in CTE deliminator by @kryonix in https://github.com/duckdb/duckdb/pull/23753
- Defer setting cardinality set for appender by @dentiny in https://github.com/duckdb/duckdb/pull/23850
- Storage: validate dictionary bitpacking width by @wufengwind in https://github.com/duckdb/duckdb/pull/23827
- Add regression test to ensure default DICT_FSST by @dentiny in https://github.com/duckdb/duckdb/pull/23847
- Fix
medianfor INTERVAL type by @dentiny in https://github.com/duckdb/duckdb/pull/23701 - Implement TRY_CAST for time-related types by @dentiny in https://github.com/duckdb/duckdb/pull/23708
- Cache Vector::size by @dentiny in https://github.com/duckdb/duckdb/pull/23851
- Optimize stats writer for DICT_FSST by @dentiny in https://github.com/duckdb/duckdb/pull/23846
- Prune row group for
containsvia string stats by @dentiny in https://github.com/duckdb/duckdb/pull/23876 - Prune row group for suffix function with string stats by @dentiny in https://github.com/duckdb/duckdb/pull/23878
- Fix file handle lifecycle for external file cache with async IO by @dentiny in https://github.com/duckdb/duckdb/pull/23881
- Rewrite
substring,substr,array_slice,list_slice,s[:]forVARCHARto prefix by @sebastiaan-dev in https://github.com/duckdb/duckdb/pull/23869 - Use output column name in EXPLAIN for ORDER BY and TOP N by @Hespian in https://github.com/duckdb/duckdb/pull/23801
SHOW ALLmakeTABLESoptional by @Dtenwolde in https://github.com/duckdb/duckdb/pull/23845- [ASYNC IO] CSV Reader Refactor by @pdet in https://github.com/duckdb/duckdb/pull/23868
- Add missing row group prune via pruned string min by @dentiny in https://github.com/duckdb/duckdb/pull/23871
- Prune row group for
strlenfunction via string length stats by @dentiny in https://github.com/duckdb/duckdb/pull/23873 - Handle row group pruning with NULL by @dentiny in https://github.com/duckdb/duckdb/pull/23902
- Add missing AOC benchmark queries and fix LEFT JOIN issue by @kryonix in https://github.com/duckdb/duckdb/pull/23895
- Expose destructors, so they are callable module boundaries by @carlopi in https://github.com/duckdb/duckdb/pull/23954
- Rewrite
instrfunction to prefix if possible by @dentiny in https://github.com/duckdb/duckdb/pull/23931 - Fix staged install check and alpha release versioning by @smvv in https://github.com/duckdb/duckdb/pull/23897
- Support CTAs for GetTableNames API by @mengdilin in https://github.com/duckdb/duckdb/pull/23760
- Internal [#9925]: TimeZone 2026c Update by @hawkfish in https://github.com/duckdb/duckdb/pull/23928
- storage: validate metadata block indexes by @wufengwind in https://github.com/duckdb/duckdb/pull/23950
- Add NOT conjunction simplification rule by @Andrewtangtang in https://github.com/duckdb/duckdb/pull/23886
- Fix recursive file read in shell by @dentiny in https://github.com/duckdb/duckdb/pull/23942
- Add more missing includes by @evertlammerts in https://github.com/duckdb/duckdb/pull/23893
- In TableDescription, resolve catalog, schema, and table names through the catalog by @evertlammerts in https://github.com/duckdb/duckdb/pull/23866
- Optimizer: restrict equal-or-null rewrite to predicates by @wufengwind in https://github.com/duckdb/duckdb/pull/23947
- Implement stats callback for sign by @dentiny in https://github.com/duckdb/duckdb/pull/23904
- Implement stats for INTERVAL type by @dentiny in https://github.com/duckdb/duckdb/pull/23923
- [Secret] Add
TRANSACTIONpersist-type for SECRET, added to theMetaTransactionby @Tishj in https://github.com/duckdb/duckdb/pull/23882 - Add LoongArch64 support with 16KB page size by @wojiushixiaobai in https://github.com/duckdb/duckdb/pull/19962
- Prune date type for parquet by @dentiny in https://github.com/duckdb/duckdb/pull/23915
- Simplify boolean wrappers around comparisons by @Andrewtangtang in https://github.com/duckdb/duckdb/pull/23948
- [WIP] Add support for creating and dropping tables in nested schemas by @Mytherin in https://github.com/duckdb/duckdb/pull/23809
- Add streaming fanout execution for materialized CTEs by @kryonix in https://github.com/duckdb/duckdb/pull/23750
- Fix SEMI/ANTI join mishandling duplicate equality keys with residual predicate by @EslamAhmed171 in https://github.com/duckdb/duckdb/pull/23952
- Add monotonicity properties to scalar math functions by @hacoobamatata in https://github.com/duckdb/duckdb/pull/23926
- Capi add allocation handlers by @ProjectMutilation in https://github.com/duckdb/duckdb/pull/23945
- Add verify compression to test FSST without regressing relassert by @smvv in https://github.com/duckdb/duckdb/pull/23967
- Fix remote pushdown arguments post function binding rework by @Mytherin in https://github.com/duckdb/duckdb/pull/23973
- Bump Postgres extension on main by @staticlibs in https://github.com/duckdb/duckdb/pull/23968
- Skip win32 tests (if requested) in CI and consider alpha version as a (pre)release by @smvv in https://github.com/duckdb/duckdb/pull/23960
- Fix extra semicolon on export by @dentiny in https://github.com/duckdb/duckdb/pull/23977
- Add
lttbaggregate function by @Maxxen in https://github.com/duckdb/duckdb/pull/23660 - [MultiFileReader][Parquet] Add
variant_extractpushdown by @Tishj in https://github.com/duckdb/duckdb/pull/22478 - Reduce test time (2+ sec) for some fast tests by @smvv in https://github.com/duckdb/duckdb/pull/23974
- Fix TIME_NS read/write with parquet by @dentiny in https://github.com/duckdb/duckdb/pull/23958
- Improve pretty printing for logging to CLI by @carlopi in https://github.com/duckdb/duckdb/pull/23912
- Prune row group for empty string concatenation by @dentiny in https://github.com/duckdb/duckdb/pull/23992
- EXTERNAL RESOURCES: external resources via table functions by @carlopi in https://github.com/duckdb/duckdb/pull/23910
- Apply bloom filter for parquet UUID type by @dentiny in https://github.com/duckdb/duckdb/pull/24018
- Support OLD transition table for AFTER UPDATE triggers by @krleonid in https://github.com/duckdb/duckdb/pull/23840
- [ASYNC I/O] Add on-demand ASYNC I/O for the CSV Reader by @pdet in https://github.com/duckdb/duckdb/pull/23961
- Prune parquet row group for equal between by @dentiny in https://github.com/duckdb/duckdb/pull/24011
- StorageLock: wait on a condition variable instead of busy-spinning by @ywelsch in https://github.com/duckdb/duckdb/pull/24009
- Propagate statistics for power expressions by @Andrewtangtang in https://github.com/duckdb/duckdb/pull/23922
- Fix missing trigger assignments on schema evolution by @dentiny in https://github.com/duckdb/duckdb/pull/23855
- [ASYNC I/O] CSV Read Ahead by @pdet in https://github.com/duckdb/duckdb/pull/24022
- Parse constant JSON paths once at bind time by @mustafahasankhan in https://github.com/duckdb/duckdb/pull/24002
- Initial implementation of
variant_typeprocessing function by @sebastiaan-dev in https://github.com/duckdb/duckdb/pull/23286 - Call release dispatch in summary for (pre)releases by @smvv in https://github.com/duckdb/duckdb/pull/24023
- Optimize GLOB using string stats for row group pruning by @sdk011 in https://github.com/duckdb/duckdb/pull/23920
- Add explicit user agent to avoid r2's 403 forbidden by @smvv in https://github.com/duckdb/duckdb/pull/24032
- Add accessor to get constant function arguments by @Maxxen in https://github.com/duckdb/duckdb/pull/24025
- Use optimized checkout action and simplify CI workflows by @smvv in https://github.com/duckdb/duckdb/pull/24035
- Internal [#9937]: AsOf Cardinality Estimates by @hawkfish in https://github.com/duckdb/duckdb/pull/24029
- Support bloom filter for NOT DISTINCT FROM for parquet by @dentiny in https://github.com/duckdb/duckdb/pull/24005
- Fix date parsing by @dentiny in https://github.com/duckdb/duckdb/pull/23939
- Fix bloom filter pruning for DECIMAL types by @sdk011 in https://github.com/duckdb/duckdb/pull/23919
- Add assert_true macro by @carlopi in https://github.com/duckdb/duckdb/pull/24019
- Shrink the in-memory footprint of deleted rows by @ywelsch in https://github.com/duckdb/duckdb/pull/23964
- Use fixed length for commit sha abbreviation by @smvv in https://github.com/duckdb/duckdb/pull/24057
- Issue [#23927]: Nested Inequality NULLS by @hawkfish in https://github.com/duckdb/duckdb/pull/24037
- Pass bind data to aggregate state size/init callbacks and batch state init by @evertlammerts in https://github.com/duckdb/duckdb/pull/24028
- Storage: validate deprecated FSST metadata by @wufengwind in https://github.com/duckdb/duckdb/pull/24016
- Throw descriptive error for chained operators by @Dtenwolde in https://github.com/duckdb/duckdb/pull/23863
- Packrat parsing stack overflow fix by @Dtenwolde in https://github.com/duckdb/duckdb/pull/23705
- Bump httpfs on
mainand remove patches by @lnkuiper in https://github.com/duckdb/duckdb/pull/24059 - Fix monotonicity annotations for floating-point numeric functions by @hacoobamatata in https://github.com/duckdb/duckdb/pull/24046
- Add SetVal by @maiadegraaf in https://github.com/duckdb/duckdb/pull/24061
- Convert
BoundCastExpressioninto aBoundFunctionExpressionby @Mytherin in https://github.com/duckdb/duckdb/pull/24008 - [WIP] Add support for inserting data into tables in nested schemas by @Mytherin in https://github.com/duckdb/duckdb/pull/24076
- Rewrite DISTINCT aggregates as CTEs by @kryonix in https://github.com/duckdb/duckdb/pull/24055
- Fix warnings and support alpha release version in extensions by @smvv in https://github.com/duckdb/duckdb/pull/24083
- Default vacuuming in the presence of indexes by @artjomPlaunov in https://github.com/duckdb/duckdb/pull/23653
- Bump DuckLake by @pdet in https://github.com/duckdb/duckdb/pull/24082
- Set OVERRIDE_GIT_DESCRIBE in extensions.yml by @smvv in https://github.com/duckdb/duckdb/pull/24106
- Optimize row group pruning for substr by @dentiny in https://github.com/duckdb/duckdb/pull/23990
- unbound index buffering refactor by @artjomPlaunov in https://github.com/duckdb/duckdb/pull/24038
- Parallelize
UNION ALLbranches whenpreserve_insertion_orderis false by @DinosL in https://github.com/duckdb/duckdb/pull/24117 - Prune row group via castable types by @dentiny in https://github.com/duckdb/duckdb/pull/24074
- [main] Remove Julia client in favor of duckdb/DuckDB.jl by @evertlammerts in https://github.com/duckdb/duckdb/pull/24126
- Replace old lambda syntax in micro-extended benchmark by @nantiamak in https://github.com/duckdb/duckdb/pull/24129
- [main] Replace the C API spec and code generation by @evertlammerts in https://github.com/duckdb/duckdb/pull/24135
- Make benchmark runner output/regressions easier to read by @smvv in https://github.com/duckdb/duckdb/pull/24134
- Arena allocate the memory for each aggregate state in TDigest by @maiadegraaf in https://github.com/duckdb/duckdb/pull/24125
- Fix INSTEAD OF triggers being silently accepted on base tables by @krleonid in https://github.com/duckdb/duckdb/pull/24163
- Fix Mark Join Null Handling by @d-justen in https://github.com/duckdb/duckdb/pull/22683
- Windows CLI: opt into the Segment Heap via application manifest (~2.2x faster multi-threaded materialization) by @BragaD in https://github.com/duckdb/duckdb/pull/24036
- Fix validity column update check in zonemap by @dentiny in https://github.com/duckdb/duckdb/pull/24181
- Internal [#5184]: Nested Equality by @hawkfish in https://github.com/duckdb/duckdb/pull/24162
- Update thread pin by @dentiny in https://github.com/duckdb/duckdb/pull/24154
- Introduce data corruption exception type by @dentiny in https://github.com/duckdb/duckdb/pull/24152
- Actually block when no tasks available by @Maxxen in https://github.com/duckdb/duckdb/pull/24132
- CSV: report empty multi-file schemas as input errors by @wufengwind in https://github.com/duckdb/duckdb/pull/24140
- Prune Parquet row groups for IN filters by @Andrewtangtang in https://github.com/duckdb/duckdb/pull/24101
- Fix small CI issues on main by @smvv in https://github.com/duckdb/duckdb/pull/24190
- Fix vector operations deprecation warning by @smvv in https://github.com/duckdb/duckdb/pull/24195
- Fix quoting around extension semantic version pattern by @jokasimr in https://github.com/duckdb/duckdb/pull/24176
- [Parquet] Add BYTE_STREAM_SPLIT support for INT32 and INT64 by @hertelukas in https://github.com/duckdb/duckdb/pull/24175
- Alternate benchmark runs for old and new by @smvv in https://github.com/duckdb/duckdb/pull/24184
- Automatically promote
DECIMALpast theBIGINTboundary by @lnkuiper in https://github.com/duckdb/duckdb/pull/24185 - Internal [#9925]: Tiny Buffer Suballocation by @hawkfish in https://github.com/duckdb/duckdb/pull/24124
- Throw on HUGEINT SUM/AVG overflow in aggregate Combine by @Vamsi-klu in https://github.com/duckdb/duckdb/pull/24168
- Skip Parquet bloom pruning for NaN by @souvikDevloper in https://github.com/duckdb/duckdb/pull/23944
- Connect + detach race and add missing InvokeCloseIfLastReference's by @artjomPlaunov in https://github.com/duckdb/duckdb/pull/24202
- Add support for
enable_optimistic_writesetting which disables optimistic writing by @Mytherin in https://github.com/duckdb/duckdb/pull/24194 - Perf regression: ValidateDictionaryIndex in hot loop and shared_ptr access by @gropaul in https://github.com/duckdb/duckdb/pull/24014
- Track full source span of parsed nodes, not just offset by @Maxxen in https://github.com/duckdb/duckdb/pull/24159
- Parquet: validate flat column value counts by @wufengwind in https://github.com/duckdb/duckdb/pull/24104
- push down scalar functions for queries with LIMIT by @myrrc in https://github.com/duckdb/duckdb/pull/24122
- Fix NightlyTests by @smvv in https://github.com/duckdb/duckdb/pull/24198
- Make
COPYusable in CTEs by @lnkuiper in https://github.com/duckdb/duckdb/pull/24217 - Add
NEAREST BYjoin support by @Maxxen in https://github.com/duckdb/duckdb/pull/24137 - Define UPDATE ... FROM and MERGE behavior for multi-matched target rows by @krleonid in https://github.com/duckdb/duckdb/pull/24058
- Override git hash in release cli by @smvv in https://github.com/duckdb/duckdb/pull/24216
- Correlated non-
INNERjoins by @lnkuiper in https://github.com/duckdb/duckdb/pull/23658 - [WIP] Add support for querying from nested schemas by @Mytherin in https://github.com/duckdb/duckdb/pull/24222
- Fix bench runs by @smvv in https://github.com/duckdb/duckdb/pull/24224
- EXTERNAL RESOURCES: Improved interface for listing arbitrary ones by @carlopi in https://github.com/duckdb/duckdb/pull/24024
- [MultiFileReader] Add column indexes to
DynamicFilterPushdownparameters by @Tishj in https://github.com/duckdb/duckdb/pull/24226 - Bump avro, aws, iceberg by @Tmonster in https://github.com/duckdb/duckdb/pull/24026
- Make sure dictionary vectors don't contain invalid values by @hannes in https://github.com/duckdb/duckdb/pull/24223
- Feature: Implement Extremum Rewrite for ANY Inequalities by @sdk011 in https://github.com/duckdb/duckdb/pull/24090
- EXTERNAL RESOURCES: SQL surface for CREATE / DESTROY / SHOW / REGISTER by @carlopi in https://github.com/duckdb/duckdb/pull/24056
- Fix errors in microbenchmarks by @nantiamak in https://github.com/duckdb/duckdb/pull/24227
- Fix rowid row group prune by @dentiny in https://github.com/duckdb/duckdb/pull/24100
- Prune row group for parquet LIST type with bloom filter by @dentiny in https://github.com/duckdb/duckdb/pull/24150
- Fix table filter canonicalization in common subplan optimizer by @jingdaws in https://github.com/duckdb/duckdb/pull/24258
- Add
Value::GetValue<Identifier>()by @JelteF in https://github.com/duckdb/duckdb/pull/24238 - Bump bwc-test-utils to latest main by @smvv in https://github.com/duckdb/duckdb/pull/24229
- Fix [#23979] by @lnkuiper in https://github.com/duckdb/duckdb/pull/24235
- Remove unintended files by @dentiny in https://github.com/duckdb/duckdb/pull/24262
- CSV: remove unreachable type check by @wufengwind in https://github.com/duckdb/duckdb/pull/24219
- Add a
StartsWithhelper toIdentifierby @JelteF in https://github.com/duckdb/duckdb/pull/24267 - [MultiFileReader] Add optional
extra_columnstoMultiFileReaderDataby @Tishj in https://github.com/duckdb/duckdb/pull/24234 - Leverage bloom filter to prune parquet struct by @dentiny in https://github.com/duckdb/duckdb/pull/24266
- Re-enable clangd-tidy check in CI by @smvv in https://github.com/duckdb/duckdb/pull/24242
- Rework
PreparedStatementin the C++ API to no longer hold state, and to instead unify withPREPARE, EXECUTE, DEALLOCATEworkflows by @Mytherin in https://github.com/duckdb/duckdb/pull/24273 - Allow passing an Identifier to SQLQuotedIdentifier directly by @JelteF in https://github.com/duckdb/duckdb/pull/24274
- Re-enable MERGE for composite row ids by @lnkuiper in https://github.com/duckdb/duckdb/pull/24271
- Only define EXT_VERSION_<name> for the sources that read it by @JelteF in https://github.com/duckdb/duckdb/pull/24248
- Merge
v1.5-variegatainto main by @Mytherin in https://github.com/duckdb/duckdb/pull/24275 - Fix struct field with default renaming by @dentiny in https://github.com/duckdb/duckdb/pull/24211
- Deduplicate JSON object keys in VARIANT casts by @Andrewtangtang in https://github.com/duckdb/duckdb/pull/24041
- Fix https://github.com/duckdb/duckdb/discussions/24315 by @rpbouman in https://github.com/duckdb/duckdb/pull/24316
- Fix encrytion util access by @dentiny in https://github.com/duckdb/duckdb/pull/24312
- Do not export temp catalog by @dentiny in https://github.com/duckdb/duckdb/pull/24300
- Bump FTS extension to latest main by @kryonix in https://github.com/duckdb/duckdb/pull/24095
- Push down safe ILIKE prefix ranges by @Andrewtangtang in https://github.com/duckdb/duckdb/pull/24063
- Add batch index support to PhysicalColumnDataScan by @kryonix in https://github.com/duckdb/duckdb/pull/24084
- Reconstruct in-memory index for read-only database by @dentiny in https://github.com/duckdb/duckdb/pull/24105
- Handle hive NULL in string format by @dentiny in https://github.com/duckdb/duckdb/pull/24318
- Enable mold implicitly for linux release builds by @smvv in https://github.com/duckdb/duckdb/pull/24230
- Propagate ARRAY statistics through LIST casts by @Andrewtangtang in https://github.com/duckdb/duckdb/pull/24290
- Remove deprecated workflow dispatch calls by @smvv in https://github.com/duckdb/duckdb/pull/24323
- Avoid passing in
const string &queryin ClientContext methods, instead get the string from the SQLStatement by @Mytherin in https://github.com/duckdb/duckdb/pull/24324 - Bump httpfs by @lnkuiper in https://github.com/duckdb/duckdb/pull/24325
- Skip flaky CTE order preservation test by @smvv in https://github.com/duckdb/duckdb/pull/24340
- Nested schemas: support the remaining catalog entry types by @Mytherin in https://github.com/duckdb/duckdb/pull/24322
- Optimize unittest startup and reduce fast test runtime by @smvv in https://github.com/duckdb/duckdb/pull/24331
- Make
AtClause::Unit()return anIdentifierby @JelteF in https://github.com/duckdb/duckdb/pull/24236 - Fix: segfauly in url_decode with TRY() on dictionary-encoded columns by @Ansh2004P in https://github.com/duckdb/duckdb/pull/24332
- Harden recursive CTE execution and optimize
USING KEYjoins by @kryonix in https://github.com/duckdb/duckdb/pull/24031 - Fix pipeline-dependent CTE metadata in EXPLAIN ANALYZE by @kryonix in https://github.com/duckdb/duckdb/pull/24349
- [Bug] Fix issue with worker thread yielding in Async I/O by @pdet in https://github.com/duckdb/duckdb/pull/24352
- Avoid mutating input buffers in decode(..., 'replace') by @u70b3 in https://github.com/duckdb/duckdb/pull/24353
- Prune parquet row group for IS NOT DISTINCT FROM by @dentiny in https://github.com/duckdb/duckdb/pull/24338
- Make all
PreparedStatementmembers private by @Mytherin in https://github.com/duckdb/duckdb/pull/24351 - Split main extensions to lower CI critical path by @smvv in https://github.com/duckdb/duckdb/pull/24345
- Use
Identifierfor COPY and scan option names by @JelteF in https://github.com/duckdb/duckdb/pull/24269 - Fix failed checkpoint marker recovery by @p1p1bear in https://github.com/duckdb/duckdb/pull/24260
- test harness: LOCAL_{TEMP,DATA}_DIR, add --env-passthrough, remote temp-dir fixes by @HendrikLambert in https://github.com/duckdb/duckdb/pull/24355
- Fix export with quoted string by @dentiny in https://github.com/duckdb/duckdb/pull/24382
- Un-skip 75 stale entries across 15 test configs by @carlopi in https://github.com/duckdb/duckdb/pull/24372
- Fix false corruption error when reading FSST string segments for Clickbench Q11 by @gropaul in https://github.com/duckdb/duckdb/pull/24365
- Fix wrong results and an out-of-bounds read in the LIST->ARRAY cast by @carlopi in https://github.com/duckdb/duckdb/pull/24367
- Restructure
DUCKDB_SMALLER_BINARYinto a preprocessor macro that allows granular attribution by @carlopi in https://github.com/duckdb/duckdb/pull/24364 - [ASYNC I/O] Refactor in preparation for ASYNC in native files by @pdet in https://github.com/duckdb/duckdb/pull/24360
- Remove multi-benchmark support and split CTE jobs by @smvv in https://github.com/duckdb/duckdb/pull/24356
- Use unimplemented exception over internal one by @dentiny in https://github.com/duckdb/duckdb/pull/24388
- Reset batch indexes between recursive CTE iterations by @kryonix in https://github.com/duckdb/duckdb/pull/24358
- Fix ranking functions over empty or reversed frames by @DinosL in https://github.com/duckdb/duckdb/pull/24348
- Check meaningless suffix characters after parsing by @dentiny in https://github.com/duckdb/duckdb/pull/24390
- Initial implementation of
variant_containsprocessing function by @sebastiaan-dev in https://github.com/duckdb/duckdb/pull/24343 - bump iceberg by @Tmonster in https://github.com/duckdb/duckdb/pull/24264
- Fix fill() interpolation for large DOUBLE ordering spans by @alexprabhat99 in https://github.com/duckdb/duckdb/pull/24179
- Prune row groups for Parquet INTERVAL columns with bloom filters by @u70b3 in https://github.com/duckdb/duckdb/pull/24277
- Regenerate iceberg 0003 patch against the bumped pin by @carlopi in https://github.com/duckdb/duckdb/pull/24397
- Make
BaseQueryResultmembers private, and turn names intovector<Identifier>(instead ofvector<string>) by @Mytherin in https://github.com/duckdb/duckdb/pull/24357 - Trim sort key layout specializations under
SMALLER_BINARYby @carlopi in https://github.com/duckdb/duckdb/pull/24394 - Implement collations without ICU dependency by @Mytherin in https://github.com/duckdb/duckdb/pull/24403
- remove flaky test by @artjomPlaunov in https://github.com/duckdb/duckdb/pull/24408
- Reject non-integer index for variant by @dentiny in https://github.com/duckdb/duckdb/pull/24420
- Fix monotonic clock usage by @dentiny in https://github.com/duckdb/duckdb/pull/24423
- Reject invalid imported approx_quantile states by @u70b3 in https://github.com/duckdb/duckdb/pull/24425
- Checks inline - throws out of line by @carlopi in https://github.com/duckdb/duckdb/pull/24404
- Range check float => int casts on the rounded value by @carlopi in https://github.com/duckdb/duckdb/pull/24393
- Propagate parquet min/max len if possible by @dentiny in https://github.com/duckdb/duckdb/pull/24384
- Prune row group for IN operator and parquet read by @dentiny in https://github.com/duckdb/duckdb/pull/24374
- EXTERNAL RESOURCES: Unskip discovery tests now that the dependency landed by @carlopi in https://github.com/duckdb/duckdb/pull/24371
- Add a warning when using OFFSET on result set without defined ordering by @hannes in https://github.com/duckdb/duckdb/pull/24354
- Use smaller instance for extension load/install checks and skip a ducklake test on musl by @smvv in https://github.com/duckdb/duckdb/pull/24426
- add debug_ds extension to the benchmark runner by @Tmonster in https://github.com/duckdb/duckdb/pull/24430
- Optimize
BLOBsort key construction by using vectorize-friendly code by @Mytherin in https://github.com/duckdb/duckdb/pull/24432 - Unify C-API symbol versioning (on main) by @Maxxen in https://github.com/duckdb/duckdb/pull/24435
- Remove
icudependency, instead implement TimeZone and Calendar functionality ourselves by @Mytherin in https://github.com/duckdb/duckdb/pull/24463 - Fix two wrong-results bugs in the expression rewriter by @carlopi in https://github.com/duckdb/duckdb/pull/24368
- Use a bitmask instead of modulo when decoding bitpacked hugeints by @NiclasHaderer in https://github.com/duckdb/duckdb/pull/24468
- Fix integer underflow in VariantMetadata by @DinosL in https://github.com/duckdb/duckdb/pull/24469
- Optimize LRU cache by @dentiny in https://github.com/duckdb/duckdb/pull/24472
- Add null check for
json_execute_serializedby @DinosL in https://github.com/duckdb/duckdb/pull/24470 - unittest: allow require-env for passed-through variables by @HendrikLambert in https://github.com/duckdb/duckdb/pull/24459
- Fix crash in enum_first/enum_last on empty ENUM types by @DinosL in https://github.com/duckdb/duckdb/pull/24480
- Preserve recursive CTE parallelism at high thread counts by @kryonix in https://github.com/duckdb/duckdb/pull/24466
- Improve string literal casting by @Dtenwolde in https://github.com/duckdb/duckdb/pull/24436
- Check time bucker operation overflow by @dentiny in https://github.com/duckdb/duckdb/pull/24489
- Cast to common argument types for array_value by @dentiny in https://github.com/duckdb/duckdb/pull/24490
- Only enable mold --icf=safe when the linker supports it by @h4nsmuller in https://github.com/duckdb/duckdb/pull/24492
- Preserve trailing UTF-8 bytes in StringUtil::RTrim by @fallintoplace in https://github.com/duckdb/duckdb/pull/24482
- Propagate validity statistics through
lowerandupperby @vvvdwbvvv in https://github.com/duckdb/duckdb/pull/24478 - Switch Calendar / TZ code from using
doubleto usingint64_tby @Mytherin in https://github.com/duckdb/duckdb/pull/24471 - Fix VARIANT field extraction in index fetch by @u70b3 in https://github.com/duckdb/duckdb/pull/24428
- Concurrent non-positional writes by @lnkuiper in https://github.com/duckdb/duckdb/pull/24500
- Add
SET SCHEMAgrammar support by @Dtenwolde in https://github.com/duckdb/duckdb/pull/23709 - Throw an internal error when functions are incorrectly labeled as infallible, and fix this for many functions by @Mytherin in https://github.com/duckdb/duckdb/pull/24389
- Improve the performance of timezone function by @NiclasHaderer in https://github.com/duckdb/duckdb/pull/24437
- Check entry type before cast by @dentiny in https://github.com/duckdb/duckdb/pull/24487
- Initial implementation of
variant_group_arrayprocessing function by @sebastiaan-dev in https://github.com/duckdb/duckdb/pull/24347 - Compress FSST input directly instead of copying it in 511-byte chunks by @gropaul in https://github.com/duckdb/duckdb/pull/24496
- Fix FIRST_VALUE streaming eligibility for framed windows by @u70b3 in https://github.com/duckdb/duckdb/pull/24497
- Rewrite IS DISTINCT FROM NULL by @dentiny in https://github.com/duckdb/duckdb/pull/24411
- Skip unnecessary payloads during WAL checkpoint prescan by @p1p1bear in https://github.com/duckdb/duckdb/pull/24434
- Fix dedimal width overflow by @dentiny in https://github.com/duckdb/duckdb/pull/24509
- Fix quantile hugeint precision by @Vihaan275 in https://github.com/duckdb/duckdb/pull/24511
- Avoid array with brackets creating an extra demension by @Dtenwolde in https://github.com/duckdb/duckdb/pull/24515
- Split linux test configs in more CI jobs by @smvv in https://github.com/duckdb/duckdb/pull/24510
- Propagate Parquet expression reader statistics by @Andrewtangtang in https://github.com/duckdb/duckdb/pull/24505
- Fix projected types for missing columns by @Andrewtangtang in https://github.com/duckdb/duckdb/pull/24508
- Fix histogram overflow counts with duplicate bins by @u70b3 in https://github.com/duckdb/duckdb/pull/24486
- Fix stale projection ids in LogicalGet after pushdown extract by @gulugulubing in https://github.com/duckdb/duckdb/pull/24484
- Fix compilation on Windows by @staticlibs in https://github.com/duckdb/duckdb/pull/24334
- Add checked cast helper to
HTTPUtilby @lnkuiper in https://github.com/duckdb/duckdb/pull/24517 - Add reusable relation statistics extraction by @lnkuiper in https://github.com/duckdb/duckdb/pull/24512
- improve
PartitionedExecutioncoverage by @lnkuiper in https://github.com/duckdb/duckdb/pull/24520 - Bump httpfs version by @okruitho in https://github.com/duckdb/duckdb/pull/24518
- Take
vector<Identifier>in the table function bind callbacks by @JelteF in https://github.com/duckdb/duckdb/pull/24278 - Kill process group when retrying hanged command in CI by @smvv in https://github.com/duckdb/duckdb/pull/24523
- Fix escape strings being incorrectly tokenized by @Dtenwolde in https://github.com/duckdb/duckdb/pull/24519
- Improved tokenization for nested comments by @Dtenwolde in https://github.com/duckdb/duckdb/pull/24522
- Maintain better compatibility with older DuckDB versions in SETOF returning functions by @Mytherin in https://github.com/duckdb/duckdb/pull/24501
- Return Identifier from GetDefaultSchema/Table/TableSchema by @JelteF in https://github.com/duckdb/duckdb/pull/24498
- Scan the full child span for Arrow ListView arrays by @fallintoplace in https://github.com/duckdb/duckdb/pull/24483
- fix: incorrect join order of joins without ON clause by @jokasimr in https://github.com/duckdb/duckdb/pull/24228
COPYwithORDER_BYwithoutPARTITION_BYby @lnkuiper in https://github.com/duckdb/duckdb/pull/24525- Issue [#24288]: Join Predicate Binding by @hawkfish in https://github.com/duckdb/duckdb/pull/24526
- bump avro and remove patches by @Tishj in https://github.com/duckdb/duckdb/pull/24545
- Produce valid JSON for fractional VARIANT decimals by @matthiasgoergens in https://github.com/duckdb/duckdb/pull/24554
- Preserve regex semantics for collated strings by @matthiasgoergens in https://github.com/duckdb/duckdb/pull/24558
- Fix NUL escape handling in
LIKE/ILIKEoperators by @matthiasgoergens in https://github.com/duckdb/duckdb/pull/24550 - Iterative benchmark runs and make report easier to understand by @smvv in https://github.com/duckdb/duckdb/pull/24503
- Compress fully-visible partial deletes into a bitmask by @baolinhuang in https://github.com/duckdb/duckdb/pull/24336
- Use logical ordering for VARIANT min/max by @Andrewtangtang in https://github.com/duckdb/duckdb/pull/24531
- Terminate the dead end chain when the build side uses dictionary emission by @erwinzhang7 in https://github.com/duckdb/duckdb/pull/24539
- Internal [#10187]: Volatile Window Inputs by @hawkfish in https://github.com/duckdb/duckdb/pull/24577
- Internal [#10053]: IEJoin Key Reset by @hawkfish in https://github.com/duckdb/duckdb/pull/24572
- Fix NULL handling in ASOF join prefix comparisons by @williampsouza in https://github.com/duckdb/duckdb/pull/24199
- Fix heap overflow in
string_aggby @sebastiaan-dev in https://github.com/duckdb/duckdb/pull/24582 - Make SetDefaultDatabase take an Identifer by @JelteF in https://github.com/duckdb/duckdb/pull/24583
- Add CIEndsWith and Identifier::EndsWith by @JelteF in https://github.com/duckdb/duckdb/pull/24566
- Replace benchmark TPC-DS with SF=10, fix mold version check by @smvv in https://github.com/duckdb/duckdb/pull/24567
- Parallelize ordered buffered CTE scans by @kryonix in https://github.com/duckdb/duckdb/pull/24361
- Recursive runtime invocation metrics by @kryonix in https://github.com/duckdb/duckdb/pull/24565
- Fix
DECIMALsyntax silently accepting non-integral parameters by @tempewda in https://github.com/duckdb/duckdb/pull/24606 - Add data_page_size_limit option to Parquet COPY by @djouallah in https://github.com/duckdb/duckdb/pull/24645
- Fix UB for ALP by @dentiny in https://github.com/duckdb/duckdb/pull/24640
- Fix grouped printf formats for signed integer arguments by @AbhinavPandey01 in https://github.com/duckdb/duckdb/pull/24601
- Require 16GB RAM for string_agg overflow test by @yohaku999 in https://github.com/duckdb/duckdb/pull/24643
- fix: avoid int64 overflow in generic InterpolateOperator for fill() by @ybapat in https://github.com/duckdb/duckdb/pull/24571
- Make configs and secrets use Identifiers by @JelteF in https://github.com/duckdb/duckdb/pull/24589
- Fix external file cache seek when uncache read by @dentiny in https://github.com/duckdb/duckdb/pull/24585
- Add bounds check for roaring container_count by @Pyolar in https://github.com/duckdb/duckdb/pull/23796
- Initial implementation of
variant_extract_stringprocessing function by @sebastiaan-dev in https://github.com/duckdb/duckdb/pull/24060 - Fix CREATE SEQUENCE throwing INTERNAL error on NULL option values by @alwaysprince05 in https://github.com/duckdb/duckdb/pull/24614
- Fix INTERNAL error from EXPLAIN (FORMAT) and EXPLAIN (FORMAT default) by @carlopi in https://github.com/duckdb/duckdb/pull/24369
- Bugfix connected to round-tripping identifiers by @carlopi in https://github.com/duckdb/duckdb/pull/24370
- Fixes (#24115) : Use single-column ART index scan for IS NOT DISTINCT FROM by @kid-ye in https://github.com/duckdb/duckdb/pull/24146
- Fix#24303 date_trunc comparisons with infinite timestamps by @idle-lab in https://github.com/duckdb/duckdb/pull/24409
- Allow fitting integer literals as typed macro defaults by @matthiasgoergens in https://github.com/duckdb/duckdb/pull/24548
- Reject filename and Hive partition collisions by @matthiasgoergens in https://github.com/duckdb/duckdb/pull/24555
- Re-enable five stale mode-skips, including two fuzzer regression tests by @carlopi in https://github.com/duckdb/duckdb/pull/24392
- Fixup test_not_distinct_index_scan.test to actually be forced to be a Sequence Scan (vs optimized after checkpoint Column Data Scan) by @carlopi in https://github.com/duckdb/duckdb/pull/24671
- Disable flaky FSST test by @Tishj in https://github.com/duckdb/duckdb/pull/24688
- Removed patches for delta. updated sha by @okruitho in https://github.com/duckdb/duckdb/pull/24699
- Fix:
RANK/PERCENT_RANK/CUME_DISTpeers when the argumentORDER BYis a prefix of the windowORDER BYby @alonfaraj in https://github.com/duckdb/duckdb/pull/24693 - [Extension] Add mapping in
extension_entries.hppfor Storage Extensions by @Tishj in https://github.com/duckdb/duckdb/pull/24684 - bump aws and delete patches by @Tishj in https://github.com/duckdb/duckdb/pull/24682
- Omit external extensions because both are manually disabled by @smvv in https://github.com/duckdb/duckdb/pull/24658
- Add Aggregate Reuse Optimizer to reduce redundant aggregation across joins by @kryonix in https://github.com/duckdb/duckdb/pull/24543
- Issue [#24617]: ICU TRY_CAST Throws by @hawkfish in https://github.com/duckdb/duckdb/pull/24705
- Fix correlation detection for nested dependent joins by @kryonix in https://github.com/duckdb/duckdb/pull/24683
- Fix recursive outer nested loop join state reuse by @kryonix in https://github.com/duckdb/duckdb/pull/24700
- Fix race condition in reclaiming file cache blocks by @smvv in https://github.com/duckdb/duckdb/pull/24729
- Issue [#24450]: DatePart Binary Doubles by @hawkfish in https://github.com/duckdb/duckdb/pull/24573
- Fix an issue where a collated null caused crashes in groups by @hannes in https://github.com/duckdb/duckdb/pull/24730
- Fix clang tidy errors in json variant cast file by @smvv in https://github.com/duckdb/duckdb/pull/24723
- Make
LogicalTypeimmutable by @Maxxen in https://github.com/duckdb/duckdb/pull/24738 - Fix missing catalog dependency registration for index_key by @gulugulubing in https://github.com/duckdb/duckdb/pull/24249
- Spill aggregate states when the aggregation goes external by @mustafahasankhan in https://github.com/duckdb/duckdb/pull/24499
- Fix indexed DELETE column resolution by @Andrewtangtang in https://github.com/duckdb/duckdb/pull/24203
- Issue [#24455]: Windowed Distinct MODE by @hawkfish in https://github.com/duckdb/duckdb/pull/24674
- Rewrite mode and entropy as multi-stage aggregates by @kryonix in https://github.com/duckdb/duckdb/pull/24359
- Make
Valueimmutable by @Maxxen in https://github.com/duckdb/duckdb/pull/24746 - Issue [#24455]: ApproxTopK Constant Binding by @hawkfish in https://github.com/duckdb/duckdb/pull/24673
- Buffer managed indexes, Pt. 1 by @artjomPlaunov in https://github.com/duckdb/duckdb/pull/21458
- Add guards to TPC-H and TPC-DS generators by @DinosL in https://github.com/duckdb/duckdb/pull/24664
- Fix stale table statistics in prepared statements by @kryonix in https://github.com/duckdb/duckdb/pull/24696
- bump azure && remove the patch by @benfleis in https://github.com/duckdb/duckdb/pull/24732
- Use IO exception for invalid variant input by @dentiny in https://github.com/duckdb/duckdb/pull/24763
- Prune struct segment by @dentiny in https://github.com/duckdb/duckdb/pull/24726
- Fix dictionary validity checks in Parquet variant shredding by @dentiny in https://github.com/duckdb/duckdb/pull/24718
- Remove unused function by @dentiny in https://github.com/duckdb/duckdb/pull/24734
- Add test case for incorrect
EXPLAIN FORMATby @Dtenwolde in https://github.com/duckdb/duckdb/pull/24656 - Internal [#10053]: Postgres Nested Semantics by @hawkfish in https://github.com/duckdb/duckdb/pull/24504
- Prune row group for greatest/least with same boundary by @dentiny in https://github.com/duckdb/duckdb/pull/24015
- Fix NULL dynamic ROWS window frame boundaries by @idle-lab in https://github.com/duckdb/duckdb/pull/24727
- Fix schema conflict in TPC-H
dbgenby @tempewda in https://github.com/duckdb/duckdb/pull/24712 - Fix interval comparison when carrying left leaves a negative field by @kid-ye in https://github.com/duckdb/duckdb/pull/24704
- Fix
INTERNAL Error: Markregexp_full_matchas fallible by @tempewda in https://github.com/duckdb/duckdb/pull/24701 - Fix list_reduce raising INTERNAL error when its lambda throws by @alwaysprince05 in https://github.com/duckdb/duckdb/pull/24663
- Compare window partitions as sets by @m0g3r in https://github.com/duckdb/duckdb/pull/24685
- [Sequence] Disable parallel insert for tables with column(s) with
nextval(...)in them by @Tishj in https://github.com/duckdb/duckdb/pull/24724 - [ASYNC-IO] On Demand ASYNC IO for native DuckDB Tables by @pdet in https://github.com/duckdb/duckdb/pull/24654
- Buffer managed indexes, Pt.2 by @artjomPlaunov in https://github.com/duckdb/duckdb/pull/23605
- Propagate stats in materialized CTEs and array distance/similarity functions by @Maxxen in https://github.com/duckdb/duckdb/pull/24600
- EXTERNAL RESOURCE: give the create params their own grammar rule by @carlopi in https://github.com/duckdb/duckdb/pull/24771
- Add support for GeoJSON in the
jsonextension by @Maxxen in https://github.com/duckdb/duckdb/pull/24646 - Fix ASOF join over EXCEPT ALL / INTERSECT ALL children by @RagamuffinCat in https://github.com/duckdb/duckdb/pull/24760
- Fix
PARTITION BYsyntax forCOPY TOon multiple columns by @Dtenwolde in https://github.com/duckdb/duckdb/pull/24770 - Add typed_value column to duckdb_settings() by @lghavami in https://github.com/duckdb/duckdb/pull/24774
- [Dev] Refactor
BaseTokenizer, and rename toTokenizerby @Tishj in https://github.com/duckdb/duckdb/pull/24772 - Bump duckdb-httpfs to main and shrink its patch by @carlopi in https://github.com/duckdb/duckdb/pull/24803
- Fold trivial any-joins back into cross products by @Maxxen in https://github.com/duckdb/duckdb/pull/24788
- Fix unused residual collection consuming must-apply cost predicates by @gulugulubing in https://github.com/duckdb/duckdb/pull/24784
- Don't dlopen an extension that is already linked in by @GavinPizza in https://github.com/duckdb/duckdb/pull/24800
- Fix case restoration for mismatched case column references by @tempewda in https://github.com/duckdb/duckdb/pull/24776
- Use __restrict actually in MacOS by @flashmouse in https://github.com/duckdb/duckdb/pull/24681
- Prune segment for nested types on validity check by @dentiny in https://github.com/duckdb/duckdb/pull/24768
- Prune row groups when an IN-list covers the whole zonemap rangend add by @vvvdwbvvv in https://github.com/duckdb/duckdb/pull/24521
- Handle infinite dates in timestamp comparison optimization by @jaiswalvikas9991 in https://github.com/duckdb/duckdb/pull/24669
- Fix checkpoint Analyze handling for explicit compression method by @Liuzw1998 in https://github.com/duckdb/duckdb/pull/24429
- Make External Pipeline Input Dependency-Aware by @kryonix in https://github.com/duckdb/duckdb/pull/24754
- Fix ICU calendar differences across era boundaries by @HendrikLambert in https://github.com/duckdb/duckdb/pull/24756
- Expand multi-file UNION columns for Parquet nested remap by @Vamsi-klu in https://github.com/duckdb/duckdb/pull/24172
- Add agent instruction for time limiting queries by @hannes in https://github.com/duckdb/duckdb/pull/24649
- update security.md by @samansmink in https://github.com/duckdb/duckdb/pull/24815
- Unify and optimize scalar executor infrastructure by @kryonix in https://github.com/duckdb/duckdb/pull/24564
- Fix precision loss in FLOAT to DECIMAL casts by @xuke-hat in https://github.com/duckdb/duckdb/pull/24814
- Flush and fsync optimistically written blocks before the WAL lock at commit by @ywelsch in https://github.com/duckdb/duckdb/pull/24193
- Do not use file statistics for overridden hive partitioning columns by @h4nsmuller in https://github.com/duckdb/duckdb/pull/24752
- [Dev][Parser] Preliminary work for overridable/extensible
MatcherFactoryby @Tishj in https://github.com/duckdb/duckdb/pull/24818 - Initial boilerplate for
DialectExtensionby @Tishj in https://github.com/duckdb/duckdb/pull/24801 - Reset default database after detachment by @dentiny in https://github.com/duckdb/duckdb/pull/24822
- Cast to common argument types for unpivot_list by @artjomPlaunov in https://github.com/duckdb/duckdb/pull/24819
- [Dev][Parser]
Identifiermatch logic clean up by @Tishj in https://github.com/duckdb/duckdb/pull/24812 - Fix partitioned COPY losing rows on HIVE_DEFAULT_PARTITION collision by @carlopi in https://github.com/duckdb/duckdb/pull/24816
- A fix to common_subplan_optimizer by @staticlibs in https://github.com/duckdb/duckdb/pull/24824
- Erase
Function::EraseArgumentby @Maxxen in https://github.com/duckdb/duckdb/pull/24594 - Do not assert which of three equal intervals becomes the group key by @h4nsmuller in https://github.com/duckdb/duckdb/pull/24832
- Fix join order reconstruction for cross products spanning three or more relations by @ishan121028 in https://github.com/duckdb/duckdb/pull/24786
- Preserve case-sensitive VARIANT fields during shredding by @matthiasgoergens in https://github.com/duckdb/duckdb/pull/24716
- Fix Parquet interval millisecond overflow by @idle-lab in https://github.com/duckdb/duckdb/pull/24821
- Validate encryption key before parquet metadata cache leveraged by @dentiny in https://github.com/duckdb/duckdb/pull/24721
- Fix duckbox rendering of case-sensitive ENUM types by @mattyy-k in https://github.com/duckdb/duckdb/pull/24735
- Optionally spill evicted external file cache blocks to the temporary directory by @mustafahasankhan in https://github.com/duckdb/duckdb/pull/24062
- Allow deserializing a parquet scan whose files were all pruned away by @h4nsmuller in https://github.com/duckdb/duckdb/pull/24834
- Do not push down an extract on an already extracted column by @fvaleye in https://github.com/duckdb/duckdb/pull/24660
- Resolve partition columns for non-pushdown table functions by @matthiasgoergens in https://github.com/duckdb/duckdb/pull/24557
- Prune map extraction row group by @dentiny in https://github.com/duckdb/duckdb/pull/24836
- Add 'connection' secret storage, for connection scoped contexts by @carlopi in https://github.com/duckdb/duckdb/pull/23527
- Publish linked extensions on the config, so an extension can load them too by @carlopi in https://github.com/duckdb/duckdb/pull/24823
- Use compressed tarballs for CLI and shared libraries by @smvv in https://github.com/duckdb/duckdb/pull/24773
- Auto-detect ISO-8601 timestamps with offsets as TIMESTAMPTZ in JSON by @Vamsi-klu in https://github.com/duckdb/duckdb/pull/24171
- [Dev][Parser] Move
Matcherimplementations +MatcherFactoryto separate files by @Tishj in https://github.com/duckdb/duckdb/pull/24838 - [Dev][Parser] Add
TokenIteratorabstraction by @Tishj in https://github.com/duckdb/duckdb/pull/24753 - Add support for
SECUREviews by @Mytherin in https://github.com/duckdb/duckdb/pull/24842 - [Dev][Parser] Add
optional_ptr<ClientContext>toParserCache::GetMatcherby @Tishj in https://github.com/duckdb/duckdb/pull/24865 - [Dev][Parser] Put the
PEGKeywordHelperinto theCompiledGrammarby @Tishj in https://github.com/duckdb/duckdb/pull/24844 - [Dev][Parser] Put the
Tokenizerinto theCompiledGrammarby @Tishj in https://github.com/duckdb/duckdb/pull/24864 - Remote Pushdown Optimizer: Add support for
CREATE,ALTER,DROPandMERGE INTOby @Mytherin in https://github.com/duckdb/duckdb/pull/24854 - fix geometry row group pruning with nulls/empty (on main) by @Maxxen in https://github.com/duckdb/duckdb/pull/24849
- Parallelize merge of small collections in PhysicalInsert by @NiclasHaderer in https://github.com/duckdb/duckdb/pull/24584
- Keep the list_aggregate bind data unambiguous by @carlopi in https://github.com/duckdb/duckdb/pull/24856
- Fix non-constant map switch bug by @maiadegraaf in https://github.com/duckdb/duckdb/pull/24868
- Assorted bugfixes tied to conversion errors by @carlopi in https://github.com/duckdb/duckdb/pull/24860
- No rtti build by @carlopi in https://github.com/duckdb/duckdb/pull/24858
- Add multiplicity-aware combine support and fix LIST state combination by @Alignyx in https://github.com/duckdb/duckdb/pull/24817
- Issue [#24826]: Stale MODE Ties by @hawkfish in https://github.com/duckdb/duckdb/pull/24890
- Give USING KEY ... UNION changed-key delta semantics by @kryonix in https://github.com/duckdb/duckdb/pull/24647
- Fix pathological scan memory for NULLs trailing an overflow string (#24897) by @mdlavin in https://github.com/duckdb/duckdb/pull/24898
- Fix percentile_cont/disc(0) with descending order by @hawkfish in https://github.com/duckdb/duckdb/pull/24896
- Fix percentile_cont/disc(0) with descending order by @apoorva-01 in https://github.com/duckdb/duckdb/pull/23782
- Always quote identifiers in error messages by @JelteF in https://github.com/duckdb/duckdb/pull/24878
- Don't narrow a pushed-down filter constant to the file's physical type by @GavinPizza in https://github.com/duckdb/duckdb/pull/24901
- Fix top_n_window_elimination late materialization corrupting try-cast and nested-cast payloads by @alwaysprince05 in https://github.com/duckdb/duckdb/pull/24846
- Remove default database by @dentiny in https://github.com/duckdb/duckdb/pull/24837
- Use container in regression CI jobs by @smvv in https://github.com/duckdb/duckdb/pull/24889
- Prune row groups with cross-column comparisons by @Andrewtangtang in https://github.com/duckdb/duckdb/pull/24805
- Support SHOW <setting> by @JelteF in https://github.com/duckdb/duckdb/pull/23732
- Add utf8_validation (strict, ignore, replace) to Parquet reader by @xproblematique in https://github.com/duckdb/duckdb/pull/24743
- Checkpoint on detach description correction by @artjomPlaunov in https://github.com/duckdb/duckdb/pull/24887
- Add ToString SQLIdentifier::ToString for Identifier too by @JelteF in https://github.com/duckdb/duckdb/pull/24851
- [Dev][Parser] Add
ParsedGrammarintermediate toCompiledGrammarcreation by @Tishj in https://github.com/duckdb/duckdb/pull/24866 - Use Identifier for CSV/JSON column names in the COPY FROM bind path by @JelteF in https://github.com/duckdb/duckdb/pull/24839
- ARM64 portability hardening: mechanical UB fixes without behavior change by @u70b3 in https://github.com/duckdb/duckdb/pull/24884
- Fix qualified name APIs to correctly handle nested schemas by @Mytherin in https://github.com/duckdb/duckdb/pull/24910
- Restore static linking behaviour for C API by @ThijsDreef in https://github.com/duckdb/duckdb/pull/24913
- Make
preserve_identifier_casea three-state setting by @dataders in https://github.com/duckdb/duckdb/pull/24375 - Make
FunctionSetandBound*Functioncontainshared_ptr<const Function>s by @Maxxen in https://github.com/duckdb/duckdb/pull/24964 - Abandon() and any_abandoned by @carlopi in https://github.com/duckdb/duckdb/pull/24947
- Avoid plan-time partial precomputation when not complete by @carlopi in https://github.com/duckdb/duckdb/pull/24962
- re-enable art prefix test by @artjomPlaunov in https://github.com/duckdb/duckdb/pull/24930
- Allow some archs like musl to fail (for alpha releases) by @smvv in https://github.com/duckdb/duckdb/pull/24928
- Parquet writer: write ColumnMetaData.encoding_stats by @djouallah in https://github.com/duckdb/duckdb/pull/24957
- Fix async writer flaky test by @dentiny in https://github.com/duckdb/duckdb/pull/24952
- Use main container in more CI jobs by @smvv in https://github.com/duckdb/duckdb/pull/24917
- C-API-V2: Part 1 by @Maxxen in https://github.com/duckdb/duckdb/pull/24702
- Preserve projection maps during column pruning by @kryonix in https://github.com/duckdb/duckdb/pull/24909
- [Parquet Stats] Return parquet string stats exactness by @pdet in https://github.com/duckdb/duckdb/pull/24886
- Add overload: regexp_extract('string', 'pattern', 'options') by @lghavami in https://github.com/duckdb/duckdb/pull/24857
- Honor the comment option when quoting CSV output by @simi in https://github.com/duckdb/duckdb/pull/23669
- Allocation connected bugs by @carlopi in https://github.com/duckdb/duckdb/pull/24893
- Add CompressionSegmentReader for fixed-size uncompressed segments by @HendrikLambert in https://github.com/duckdb/duckdb/pull/24895
- Fix INTERNAL error when the invoke() lambda throws by @saime428 in https://github.com/duckdb/duckdb/pull/24668
- Arena allocate per-group buffers in bitstring_agg, bit_and/bit_or/bit_xor, and mode by @maiadegraaf in https://github.com/duckdb/duckdb/pull/24855
- [ASYNC I/O] Read Ahead Refactor by @pdet in https://github.com/duckdb/duckdb/pull/24778
- Unify
MatchandMatchParseResultby @Dtenwolde in https://github.com/duckdb/duckdb/pull/24912 - Fix
Value::ToSQLStringnested type round-tripping by @dentiny in https://github.com/duckdb/duckdb/pull/24975 - Mark
last_dayfunction fallible by @dentiny in https://github.com/duckdb/duckdb/pull/24974 - GetDefaultSchema returns optional<identifier> by @Tmonster in https://github.com/duckdb/duckdb/pull/24979
- Issue [#24449]: MINMAX Constant N by @hawkfish in https://github.com/duckdb/duckdb/pull/24986
- Fix TIMETZ formatting by @dentiny in https://github.com/duckdb/duckdb/pull/24988
- Propagate stats for timestamp conversion by @dentiny in https://github.com/duckdb/duckdb/pull/24995
- [Serialization][Parquet][Variant] Fix bug related to
ShreddingTypeequality operator by @Tishj in https://github.com/duckdb/duckdb/pull/24982 - Dont remove lambda expressions from functions by @Maxxen in https://github.com/duckdb/duckdb/pull/24970
- Internal [#10417]: AsOf Hive Partitioning by @hawkfish in https://github.com/duckdb/duckdb/pull/24891
- Fix trigger dependency tracking so DROP TABLE respects trigger bodies by @EtgarDev in https://github.com/duckdb/duckdb/pull/24591
- Allow TablaAliasColon for subqueries by @Dtenwolde in https://github.com/duckdb/duckdb/pull/24524
- Propagate stats for devision operator by @dentiny in https://github.com/duckdb/duckdb/pull/24959
- Propagate stats for coalesce operator by @dentiny in https://github.com/duckdb/duckdb/pull/24958
- Propagate case conversion stats for row group prune by @dentiny in https://github.com/duckdb/duckdb/pull/24954
- Prune row group for prefix functions by @dentiny in https://github.com/duckdb/duckdb/pull/24953
- Propagate stats for
leftfunction to prune row group by @dentiny in https://github.com/duckdb/duckdb/pull/24951 - Try -march x86-64-v3 for CLI and v2 for extensions by @smvv in https://github.com/duckdb/duckdb/pull/24391
- Prune row group for string contains on equal strings by @dentiny in https://github.com/duckdb/duckdb/pull/24940
- Implement date time row group pruning by @dentiny in https://github.com/duckdb/duckdb/pull/24943
- Fix COPY FROM with statement triggers by @sakshichitnis27 in https://github.com/duckdb/duckdb/pull/23896
- Avoid busyloop on task cancellation by @dentiny in https://github.com/duckdb/duckdb/pull/24544
- Optimize StringUtil::Replace by @jprafael in https://github.com/duckdb/duckdb/pull/24990
- Prune row groups for length()/char_length() filters via code-point lower bound by @JaySon-Huang in https://github.com/duckdb/duckdb/pull/24999
- Use unchecked casts for proven integer ranges by @kryonix in https://github.com/duckdb/duckdb/pull/24916
- Allow extension to register custom compression filesystem by @dentiny in https://github.com/duckdb/duckdb/pull/24968
- In nested schema resolution - avoid hardcoding the DuckDB catalog by @Mytherin in https://github.com/duckdb/duckdb/pull/25005
- [Dev][Parser] Fix
MatchParseResultregression by @Tishj in https://github.com/duckdb/duckdb/pull/25007 - Raise an error on integer division by zero instead of returning NULL by @hannes in https://github.com/duckdb/duckdb/pull/25004
- [JSON] Fix
DECIMALvalue roundtrip bug that was caused by lossyjson_readbehavior by @Tishj in https://github.com/duckdb/duckdb/pull/25006 - Correctly handle nested schemas in remote pushdown optimizer by @Mytherin in https://github.com/duckdb/duckdb/pull/25009
- Upload latest alpha version file to staging bucket by @smvv in https://github.com/duckdb/duckdb/pull/24894
- Fix wrong results when constant folding MAX_INT by @hannes in https://github.com/duckdb/duckdb/pull/24998
- Internal [#10417]: AsOf Hive Partitioning by @hawkfish in https://github.com/duckdb/duckdb/pull/25016
- Internal [#10514]: AsOf Progress by @hawkfish in https://github.com/duckdb/duckdb/pull/25020
- Fix ALTER TYPE dropping concurrently committed updates by @ywelsch in https://github.com/duckdb/duckdb/pull/25008
- Prune row group for no-op replace by @dentiny in https://github.com/duckdb/duckdb/pull/24044
- Preserve selected domains during delim join rewriting by @kryonix in https://github.com/duckdb/duckdb/pull/24915
- Fix mixed path separators for extension/loader in amalgamation by @mlafeldt in https://github.com/duckdb/duckdb/pull/25025
- Use -march=haswell for windows_amd64_mingw (GCC 10 breaks) by @smvv in https://github.com/duckdb/duckdb/pull/25029
- Fix typed NULL value stringification bug that loses type information by @Tishj in https://github.com/duckdb/duckdb/pull/25002
- Clean up files created by
COPYif query aborts by @lnkuiper in https://github.com/duckdb/duckdb/pull/24840 - Resolve decimal to double cast benchmark regression by @sebastiaan-dev in https://github.com/duckdb/duckdb/pull/24922
- Preserve filter rewrites across pushdown and statistics propagation by @kryonix in https://github.com/duckdb/duckdb/pull/24907
- Fix COUNT(x) still reading the counted column after the COUNT(*) rewrite by @fvaleye in https://github.com/duckdb/duckdb/pull/24607
- Fix incorrect filtered MAD window results by correctly counting rows across excluded subframes by @Alignyx in https://github.com/duckdb/duckdb/pull/24847
- Fix with argument ordering to correctly handle frames that exclude the current row by @Alignyx in https://github.com/duckdb/duckdb/pull/24875
- Add value-level tests for window self-join ROWS framing (close [#21592]) by @Vamsi-klu in https://github.com/duckdb/duckdb/pull/24164
- Unify linux release builds by @smvv in https://github.com/duckdb/duckdb/pull/25023
- Propagate column renames to trigger UPDATE OF lists by @krleonid in https://github.com/duckdb/duckdb/pull/24578
- [Dev] Fix
PhysicalIEJoinout-of-bounds access oncompletedby @Tishj in https://github.com/duckdb/duckdb/pull/25042 - [Dev] Fix unity build + remove third-party include from public-facing header by @Tishj in https://github.com/duckdb/duckdb/pull/25043
- Adjacent string fixes by @Dtenwolde in https://github.com/duckdb/duckdb/pull/25034
- Fix [#25018]: Throw user-facing error when thread settings are NULL by @c0d3l0v3r-HeHe in https://github.com/duckdb/duckdb/pull/25021
- Avoid reconstructing CountZeros lookup tables by @p1p1bear in https://github.com/duckdb/duckdb/pull/25032
- Prune row group for
list_containsfunction by @dentiny in https://github.com/duckdb/duckdb/pull/24876 - Propagate stats for aggregate functions by @dentiny in https://github.com/duckdb/duckdb/pull/24997
- Avoid overwriting streaming NTH_VALUE result on NULL rows by @jaiswalvikas9991 in https://github.com/duckdb/duckdb/pull/24861
- Do not retry non-idempotent HTTP requests by @lnkuiper in https://github.com/duckdb/duckdb/pull/25047
- Implement HTTP cache control by @dentiny in https://github.com/duckdb/duckdb/pull/24587
- Use clang for most CI jobs by @smvv in https://github.com/duckdb/duckdb/pull/25053
- Prune numeric comparison for NOTEQUAL operation by @dentiny in https://github.com/duckdb/duckdb/pull/25061
- Prune row group on FALSE_OR_NULL by @dentiny in https://github.com/duckdb/duckdb/pull/25063
- Prune segment on FALSE_OR_NULL by @dentiny in https://github.com/duckdb/duckdb/pull/25064
- FinalizeScan() for MultiFileReader by @myrrc in https://github.com/duckdb/duckdb/pull/25036
- Merge static libs jobs into Linux, macOS and Windows release CI jobs by @smvv in https://github.com/duckdb/duckdb/pull/25067
- [CAPI][Extension] Improve inline docs of extension loading API (V1 and V2) by @Tishj in https://github.com/duckdb/duckdb/pull/25055
- Fix foreign key side effects in
CREATE TABLE IF NOT EXISTSby @dentiny in https://github.com/duckdb/duckdb/pull/25044 - External Extension Repositories by @hannes in https://github.com/duckdb/duckdb/pull/24777
- Expand on [#25006], type recursion is also needed by @carlopi in https://github.com/duckdb/duckdb/pull/25077
- tighten rclone ext push, avoid pre-PUT HEAD call by @benfleis in https://github.com/duckdb/duckdb/pull/25080
- Prune row group for
list_positionfunction by @dentiny in https://github.com/duckdb/duckdb/pull/25079 Indexlifetime refactor by @sebastiaan-dev in https://github.com/duckdb/duckdb/pull/23570- Validate block allocation sizes and validity masks by @HendrikLambert in https://github.com/duckdb/duckdb/pull/25076
- Run osx workflow in main CI based on changed files by @smvv in https://github.com/duckdb/duckdb/pull/25073
- ISSUE-21492: Optimizer: fold
struct_extract(struct_pack(...))for table subscripts by @herbenderbler in https://github.com/duckdb/duckdb/pull/25059
Full Changelog: https://github.com/duckdb/duckdb/compare/v1.5.6...v2.0.0