DuckDB v1.2.0stable Released Feb 05, 2025
Impact Score: 5/10

DuckDB 1.2.0 "Histrionicus"

Source available โ€” automated, not human-reviewed

Component: duckdb ยท Channel: stable. Automated analysis, not a compatibility certification. How this works.

Analysis updated: 2026-11-01.

Compatibility not verified โ€” check source notes
๐Ÿ“„ .MD
โšก Executive Summary (TL;DR)

DuckDB v1.2.0. Source highlight: This release of DuckDB is named "Histrionicus" after the good-looking Harlequin duck (Histrionicus Histrionicus) that inhabits "cold fast moving streams in North America, Greenland, Iceland and eastern Russia".

Who Does This Impact? (Role-Based Analysis)

๐Ÿ’ป Software Engineers & Devs

Check the source notes against the package and APIs you use before upgrading.

๐Ÿ“Š Product & Engineering Leads

Use the documented changes to assess relevance to your product; release frequency alone is not a quality measure.

โš™๏ธ DevOps & Security

Verify the target version, runtime requirements and rollback procedure in the official documentation.

โœจ New Features & Capabilities (6)

  • Add cross join to Python Relational and PySpark API
  • Add auto-loadable extension settings to duckdb_config_count and duckdb_get_config_flag
  • Add `SMALLER_BINARY` flag to reduce binary size
  • [Python] Add `set_default_connection` to the `duckdb` module
  • add some RealNest benchmarks
  • [Feature] Allow passing the catalog (database name) to appender

โšก Performance & Enhancements (6)

  • Improvement the speed of table sample systems
  • remove superfluous comment
  • proposed enhancements to the query graphs
  • Improve SqlStatement::ToString for UPDATE and DELETE statement to include alias of RETURNING clause
  • Top-N: Improve performance with large heaps, and correctly call Reduce
  • Improve timestamp functionality

๐Ÿ”ง Bug Fixes & Patches (6)

  • Fix #13805: throw a more descriptive error message when an on-disk file is referenced using a replacement scan for an unsupported file format
  • Fix #13867: use 64-bit random numbers to generate random numbers for `random()`
  • Fix #13769: when binding views, always first search in the schema that the view is defined in
  • Fix #10961 - in the HAVING clause - in case of column name conflicts, bind to aliases instead of to ungrouped columns
  • [Dev] Fix an issue causing ExecuteTask to do much more work than intended
  • Fix #13064: offer more suggestions with same score
๐Ÿ“„ View Raw Release Notes (Original Developer Log)
This release of DuckDB is named "Histrionicus" after the good-looking Harlequin duck (Histrionicus Histrionicus) that inhabits "cold fast moving streams in North America, Greenland, Iceland and eastern Russia". Please also refer to the announcement blog post: https://duckdb.org/2025/02/05/announcing-duckdb-120 ## What's Changed * Optimise division by a constant at runtime for integer division by @JAicewizard in https://github.com/duckdb/duckdb/pull/10348 * Add cross join to Python Relational and PySpark API by @khalidmammadov in https://github.com/duckdb/duckdb/pull/13519 * Fix #13805: throw a more descriptive error message when an on-disk file is referenced using a replacement scan for an unsupported file format by @Mytherin in https://github.com/duckdb/duckdb/pull/13871 * Make sampling accept parameters at the parser/transformer layer by @Mytherin in https://github.com/duckdb/duckdb/pull/13903 * Fix #13867: use 64-bit random numbers to generate random numbers for `random()` by @Mytherin in https://github.com/duckdb/duckdb/pull/13920 * Fix #13769: when binding views, always first search in the schema that the view is defined in by @Mytherin in https://github.com/duckdb/duckdb/pull/13921 * Rework table bindings to be components (`catalog`, `schema`, `table`) instead of flat strings by @Mytherin in https://github.com/duckdb/duckdb/pull/14017 * Add auto-loadable extension settings to duckdb_config_count and duckdb_get_config_flag by @Mytherin in https://github.com/duckdb/duckdb/pull/14021 * Fix #10961 - in the HAVING clause - in case of column name conflicts, bind to aliases instead of to ungrouped columns by @Mytherin in https://github.com/duckdb/duckdb/pull/14023 * Enable filter pushdown through Logical Unnest by @Tmonster in https://github.com/duckdb/duckdb/pull/14008 * Allow duplicate table aliases in the table binder by @Mytherin in https://github.com/duckdb/duckdb/pull/14035 * Unify DESCRIBE [query] and DESCRIBE [table] by @Mytherin in https://github.com/duckdb/duckdb/pull/14039 * Support qualified identifiers in the `EXCLUDE` clause by @Mytherin in https://github.com/duckdb/duckdb/pull/14043 * Add `SMALLER_BINARY` flag to reduce binary size by @Mytherin in https://github.com/duckdb/duckdb/pull/14057 * Smaller Binary: remove more templates from arg_min_max by @Mytherin in https://github.com/duckdb/duckdb/pull/14071 * Unify entropy and mode aggregates - and skip specialized implementations for entropy with smaller binary by @Mytherin in https://github.com/duckdb/duckdb/pull/14080 * [Python] Add `set_default_connection` to the `duckdb` module by @Tishj in https://github.com/duckdb/duckdb/pull/13442 * Provide workaround for prefetching parquet files with incorrect page offsets by @samansmink in https://github.com/duckdb/duckdb/pull/13697 * Move `core_functions` to a separate extension by @Mytherin in https://github.com/duckdb/duckdb/pull/14149 * PySpark df.drop() to support expressions by @khalidmammadov in https://github.com/duckdb/duckdb/pull/14059 * add some RealNest benchmarks by @hmeriann in https://github.com/duckdb/duckdb/pull/13345 * feed table function into multifilereader initialization by @samansmink in https://github.com/duckdb/duckdb/pull/14112 * [Dev] Fix an issue causing ExecuteTask to do much more work than intended by @Tishj in https://github.com/duckdb/duckdb/pull/14034 * Overhaul Parquet dictionary handling by @hannes in https://github.com/duckdb/duckdb/pull/14194 * [Feature] Allow passing the catalog (database name) to appender by @taniabogatsch in https://github.com/duckdb/duckdb/pull/13692 * Add Taxi Dataset Benchmark by @pdet in https://github.com/duckdb/duckdb/pull/14197 * Feature #3036: Window Spooling by @hawkfish in https://github.com/duckdb/duckdb/pull/14181 * Small C Extension API changes by @samansmink in https://github.com/duckdb/duckdb/pull/13987 * Add HTML and Graphviz support for explain analyze by @abramk in https://github.com/duckdb/duckdb/pull/13942 * Fix #13064: offer more suggestions with same score by @Damon07 in https://github.com/duckdb/duckdb/pull/14048 * New Algorithm to find a new line on parallel execution by @pdet in https://github.com/duckdb/duckdb/pull/14260 * Making client context lock optional for relation binding by @pdet in https://github.com/duckdb/duckdb/pull/14093 * [Feature] Allow passing the catalog during C API appender creation by @taniabogatsch in https://github.com/duckdb/duckdb/pull/14256 * Make test random output ordered by @Damon07 in https://github.com/duckdb/duckdb/pull/14267 * Skip test_window_distinct by @Mytherin in https://github.com/duckdb/duckdb/pull/14309 * Taxi Benchmark by @pdet in https://github.com/duckdb/duckdb/pull/14301 * Switch to shared pointer for multfilelists by @samansmink in https://github.com/duckdb/duckdb/pull/14291 * Push #14298 to feature branch by @flashmouse in https://github.com/duckdb/duckdb/pull/14311 * Implement PullUp Empty Results optimizer by @Tmonster in https://github.com/duckdb/duckdb/pull/13524 * [Export/Import] Use the DependencyManager to (stable) sort the entries before export by @Tishj in https://github.com/duckdb/duckdb/pull/14196 * Partitioning-Aware Aggregation and Partitioning-Aware Infrastructure by @Mytherin in https://github.com/duckdb/duckdb/pull/14329 * Add df.unionByName to PySpark API by @khalidmammadov in https://github.com/duckdb/duckdb/pull/14063 * Or filter pushdown into zone maps by @Tmonster in https://github.com/duckdb/duckdb/pull/14313 * Get the current setting in the database file opener by @Mytherin in https://github.com/duckdb/duckdb/pull/14361 * [Feature + Fix] Support ALTER TABLE tbl ALTER col TYPE USING and fix null handling in struct_insert by @taniabogatsch in https://github.com/duckdb/duckdb/pull/14359 * [C API] Add table_description_create_ext and table_description_get_column_name by @taniabogatsch in https://github.com/duckdb/duckdb/pull/14285 * Move _rtools platform to be equivalent to _mingw by @carlopi in https://github.com/duckdb/duckdb/pull/14368 * Fix for accidental like skip in the CSV Buffer by @pdet in https://github.com/duckdb/duckdb/pull/14380 * Table locks - always grab table locks through the transaction interface by @Mytherin in https://github.com/duckdb/duckdb/pull/14379 * Implementing array_slice and [] for BLOB by @hannes in https://github.com/duckdb/duckdb/pull/14358 * Rework settings handling and implement auto-generation for new ones by @Mytherin in https://github.com/duckdb/duckdb/pull/14383 * Rework settings handling and implement auto-generation for new ones by @chrisiou in https://github.com/duckdb/duckdb/pull/14018 * Arrow list buffer - suggest setting `arrow_large_buffer_size` to true when regular list buffer size is exceeded by @Mytherin in https://github.com/duckdb/duckdb/pull/14384 * Fix incorrect merge conflict resolution in workflow file by @Mytherin in https://github.com/duckdb/duckdb/pull/14390 * Update Parquet Thrift to latest version by @hannes in https://github.com/duckdb/duckdb/pull/14258 * Reformat list functions by @c-herrewijn in https://github.com/duckdb/duckdb/pull/14372 * Tidy Check to do complete run also on feature by @carlopi in https://github.com/duckdb/duckdb/pull/14394 * [Python] Use an `ArrowQueryResult` in `FetchArrowTable` when possible. by @Tishj in https://github.com/duckdb/duckdb/pull/14319 * Make mysql_scanner auto-loadable, and add mysql/postgres secrets by @Mytherin in https://github.com/duckdb/duckdb/pull/14392 * Improvement the speed of table sample systems by @continue-revolution in https://github.com/duckdb/duckdb/pull/12631 * Support defining column names in CTAS by @douenergy in https://github.com/duckdb/duckdb/pull/14327 * Fix pointer indirection in pyrelation.cpp by @carlopi in https://github.com/duckdb/duckdb/pull/14403 * Fix idx_t to int64_t implicit conversion flagged by clang-tidy by @carlopi in https://github.com/duckdb/duckdb/pull/14402 * Storage: make `ROW_GROUP_SIZE` configurable by @Mytherin in https://github.com/duckdb/duckdb/pull/14406 * [Dev] Update vendored ZSTD to v1.5.6 by @Tishj in https://github.com/duckdb/duckdb/pull/14360 * Top-N: Rework to use heap of sort keys by @Mytherin in https://github.com/duckdb/duckdb/pull/14424 * reformat string functions by @c-herrewijn in https://github.com/duckdb/duckdb/pull/14400 * Prefix Aliases in SQL by @hannes in https://github.com/duckdb/duckdb/pull/14436 * [Dev] Optimize `ValidityMask` when reading from a `ColumnDataCollection` by @Tishj in https://github.com/duckdb/duckdb/pull/14416 * [Dev] Further optimize the CDC ValidityMask deserialization by @Tishj in https://github.com/duckdb/duckdb/pull/14448 * Reformat date and map functions by @c-herrewijn in https://github.com/duckdb/duckdb/pull/14425 * Reformat generic functions by @c-herrewijn in https://github.com/duckdb/duckdb/pull/14423 * Push dynamically generated join filters through `UNION`, `UNNEST` and `AGGREGATE` by @Mytherin in https://github.com/duckdb/duckdb/pull/14453 * Try auto-casting for mismatching data chunks in the Appender API by @taniabogatsch in https://github.com/duckdb/duckdb/pull/14433 * Implement `DELTA_BINARY_PACKED` compression in Parquet writer by @lnkuiper in https://github.com/duckdb/duckdb/pull/14257 * Eviction Queue Partitioning by @lnkuiper in https://github.com/duckdb/duckdb/pull/14375 * Implement `map_extract_first` by @lnkuiper in https://github.com/duckdb/duckdb/pull/14175 * RowGroup no longer lives in format namespace by @Mytherin in https://github.com/duckdb/duckdb/pull/14469 * Convert the shell from C to C++ by @Mytherin in https://github.com/duckdb/duckdb/pull/14473 * Fixing an issue with parquet dictionary reading by @hannes in https://github.com/duckdb/duckdb/pull/14438 * Strip down unused/unsupported options from the CLI by @Mytherin in https://github.com/duckdb/duckdb/pull/14478 * [PySpark] Add withColumns, withColumnsRenamed, cos, acos, any_value, approx_count_distinct and various array functions by @binste in https://github.com/duckdb/duckdb/pull/14347 * CLI Code Cleanup: move all shell functions into the ShellState by @Mytherin in https://github.com/duckdb/duckdb/pull/14483 * CLI Code Cleanup: Move rendering logic into separate Renderer classes by @Mytherin in https://github.com/duckdb/duckdb/pull/14485 * Reformat compressed materialization functions by @c-herrewijn in https://github.com/duckdb/duckdb/pull/14470 * Internal #3273: Shared Window Expressions by @hawkfish in https://github.com/duckdb/duckdb/pull/14450 * CLI Code Cleanup: rework metadata commands in the shell by @Mytherin in https://github.com/duckdb/duckdb/pull/14503 * CSV Parallel Reading Validation by @pdet in https://github.com/duckdb/duckdb/pull/14439 * Avoid recompilations of duckdb when there are no actual changes by @carlopi in https://github.com/duckdb/duckdb/pull/14176 * Add `-safe` mode to shell which disables external access, and remove SQLite UDFs from the shell by @Mytherin in https://github.com/duckdb/duckdb/pull/14509 * [PySpark] Add functions covar_pop, covar_samp, call_functions, endswith, startswith, exp, factorial, log2, ln, degrees, radians, atan, atan2, tan, round, bround by @binste in https://github.com/duckdb/duckdb/pull/14454 * Reformat arithmetic operators by @c-herrewijn in https://github.com/duckdb/duckdb/pull/14489 * add attach with default tables by @samansmink in https://github.com/duckdb/duckdb/pull/14118 * Add duckdb_param_logical_type by @Giorgi in https://github.com/duckdb/duckdb/pull/14515 * Remove most BUILD_ options for extensions, using CORE_EXTENSIONS by @carlopi in https://github.com/duckdb/duckdb/pull/14531 * CLI: more code clean-up by @Mytherin in https://github.com/duckdb/duckdb/pull/14551 * Reformat nested and sequence functions by @c-herrewijn in https://github.com/duckdb/duckdb/pull/14495 * Parquet: Fixing selection vector calculation by @hannes in https://github.com/duckdb/duckdb/pull/14558 * CLI: Fix for .mode markdown rendering after refactor by @Mytherin in https://github.com/duckdb/duckdb/pull/14569 * Out-Of-Core Updates & Deletes by @Mytherin in https://github.com/duckdb/duckdb/pull/14559 * Manage `enable_external_access` at the FileSystem level, and add `allowed_paths` and `allowed_directories` option by @Mytherin in https://github.com/duckdb/duckdb/pull/14568 * feat(iejoin): use sort to replace binary search in iejoin by @my-vegetable-has-exploded in https://github.com/duckdb/duckdb/pull/14507 * Clean-up distinct statistics - add hashes cache add the Append and Vacuum layers, and remove unnecessary lock by @Mytherin in https://github.com/duckdb/duckdb/pull/14578 * [PySpark] Test Spark API with actual PySpark as backend by @binste in https://github.com/duckdb/duckdb/pull/14526 * Internal #3273: Shared Window Frames by @hawkfish in https://github.com/duckdb/duckdb/pull/14544 * Reformat aggregate functions by @c-herrewijn in https://github.com/duckdb/duckdb/pull/14530 * Expose threshold argument of Jaro-Winkler similarity by @zmbc in https://github.com/duckdb/duckdb/pull/12079 * No pushing filters below projections that cast to a lower logical type id by @Tmonster in https://github.com/duckdb/duckdb/pull/13617 * Implement `left_projection_map` for joins by @lnkuiper in https://github.com/duckdb/duckdb/pull/13729 * remove superfluous comment by @c-herrewijn in https://github.com/duckdb/duckdb/pull/14586 * [Dev] Make the `regression_test_runner` easier to replicate by @Tishj in https://github.com/duckdb/duckdb/pull/14557 * [PySpark] Add dataframe methods drop_duplicates, intersectAll, exceptAll, toArrow by @binste in https://github.com/duckdb/duckdb/pull/14458 * Internal #3381: Window Race Condition by @hawkfish in https://github.com/duckdb/duckdb/pull/14599 * Rework generated EnumUtil code by @Mytherin in https://github.com/duckdb/duckdb/pull/14391 * Force aggregate state to be `trivially_destructible`, unless `AggregateDestructorType::LEGACY` is used by @Mytherin in https://github.com/duckdb/duckdb/pull/14615 * AWS - remove expected error message by @Mytherin in https://github.com/duckdb/duckdb/pull/14633 * Temp directory compression by @lnkuiper in https://github.com/duckdb/duckdb/pull/14465 * Add support for SELECT * RENAME by @Mytherin in https://github.com/duckdb/duckdb/pull/14650 * [PySpark] Add autocompletion for column names to dataframes by @binste in https://github.com/duckdb/duckdb/pull/14577 * Force aggregate state to be `is_trivially_move_constructible` by @lnkuiper in https://github.com/duckdb/duckdb/pull/14640 * Correctly render EXPLAIN EXECUTE - use op.GetChildren() instead of hard-coding special cases by @Mytherin in https://github.com/duckdb/duckdb/pull/14651 * Buffer Manager - Make DestroyBufferUpon atomic by @Mytherin in https://github.com/duckdb/duckdb/pull/14656 * proposed enhancements to the query graphs by @peterboncz in https://github.com/duckdb/duckdb/pull/14637 * Sampling respects seed from random number generator if no seed is given. by @Tmonster in https://github.com/duckdb/duckdb/pull/14374 * Blockwise NL Join: Return control on every iteration in `ExecuteInternal` by @Mytherin in https://github.com/duckdb/duckdb/pull/14658 * feature(spark): add hex and unhex functions by @spenrose in https://github.com/duckdb/duckdb/pull/14573 * Support `SELECT * LIKE '%col%'` syntax by @Mytherin in https://github.com/duckdb/duckdb/pull/14662 * feature(spark): add base64 and unbase64 function by @spenrose in https://github.com/duckdb/duckdb/pull/14561 * Fix #14663: correctly propagate null values in list concat operator by @Mytherin in https://github.com/duckdb/duckdb/pull/14675 * `ALTER TABLE ADD PRIMARY KEY` by @taniabogatsch in https://github.com/duckdb/duckdb/pull/14419 * Merge feature into main by @Mytherin in https://github.com/duckdb/duckdb/pull/14690 * Support for CSV Encoding (UTF-16 and Latin-1) by @pdet in https://github.com/duckdb/duckdb/pull/14560 * Fix #14699 - Correctly handle SHOW TABLES in views by @Mytherin in https://github.com/duckdb/duckdb/pull/14705 * Fix #14701 - avoid flattening in-place in ColumnData Append method by @Mytherin in https://github.com/duckdb/duckdb/pull/14708 * Use TryCastAs instead of DefaultTryCastAs in comparison_simplification by @Mytherin in https://github.com/duckdb/duckdb/pull/14711 * Value interface & serialization clean-up by @Mytherin in https://github.com/duckdb/duckdb/pull/14710 * Fix various nightly CI issues by @Mytherin in https://github.com/duckdb/duckdb/pull/14720 * CLI: Add support for `.thousand_sep` and `.decimal_sep` by @Mytherin in https://github.com/duckdb/duckdb/pull/14721 * Propagate collations through functions in a generic manner by @Mytherin in https://github.com/duckdb/duckdb/pull/14717 * Add functions for handling null duckdb_values by @Giorgi in https://github.com/duckdb/duckdb/pull/14687 * adaptive filters should not reorder filters that can throw by @Tmonster in https://github.com/duckdb/duckdb/pull/14672 * [Python] Add `LambdaExpression` to the Python Expression API by @Tishj in https://github.com/duckdb/duckdb/pull/14713 * Add fallback for thread count if jemalloc cannot identify by @lnkuiper in https://github.com/duckdb/duckdb/pull/14688 * csv: parse escape character in unquoted fields by @fanyang01 in https://github.com/duckdb/duckdb/pull/14464 * [Python][Expression API] Add the `between` method on the `Expression` class by @Tishj in https://github.com/duckdb/duckdb/pull/14726 * [Attach][Macro] Fix issues identified with an attached macro by @Tishj in https://github.com/duckdb/duckdb/pull/14715 * Dont quote strings on csv files if quote='' by @pdet in https://github.com/duckdb/duckdb/pull/14731 * sqlite3_api_wrapper: avoid nullptr dereference by @ProjectMutilation in https://github.com/duckdb/duckdb/pull/14748 * Rework `BlockHandle` to no longer have friend classes, and rework `ConvertToPersistent` so it fails if there are active outstanding pins by @Mytherin in https://github.com/duckdb/duckdb/pull/14746 * Revert "CMake: Avoid dependency-inducing codegeneration of extension headers" by @carlopi in https://github.com/duckdb/duckdb/pull/14723 * [PySpark] Add more functions such as ascii, asin, btrim, char, corr, ... and fix differences in ordering of null values between PySpark and DuckDB by @binste in https://github.com/duckdb/duckdb/pull/14738 * Added list value getters duckdb_get_list_child and duckdb_get_list_size by @prashanthellina in https://github.com/duckdb/duckdb/pull/14714 * [Python][Expression API] Add `collate` to create a `CollateExpression` by @Tishj in https://github.com/duckdb/duckdb/pull/14749 * copy to operator still write schema for empty rows by @wenjun93 in https://github.com/duckdb/duckdb/pull/14524 * [Python] Use nullable dtypes in Pandas `DataFrame` creation when possible by @Tishj in https://github.com/duckdb/duckdb/pull/14377 * Update metrics generation script and include it in CI run by @taniabogatsch in https://github.com/duckdb/duckdb/pull/14756 * Add support for projection pushdown into struct fields by @Mytherin in https://github.com/duckdb/duckdb/pull/14750 * Optimistic writes: flush the last row group in all scenarios by @Mytherin in https://github.com/duckdb/duckdb/pull/14759 * Improve SqlStatement::ToString for UPDATE and DELETE statement to include alias of RETURNING clause by @HarshLunagariya in https://github.com/duckdb/duckdb/pull/14765 * Add JSON Logical Type metadata to parquet writer by @niger-prequel in https://github.com/duckdb/duckdb/pull/14747 * [Python] Add support for `Expression` to `values` to create a ValueRelation by @Tishj in https://github.com/duckdb/duckdb/pull/14757 * Add missing global options to Python's `write_parquet` by @fr3fou in https://github.com/duckdb/duckdb/pull/14766 * Add operator name to profiling output by @ywelsch in https://github.com/duckdb/duckdb/pull/14744 * Detect catalog changes on DROP IF EXISTS by @ywelsch in https://github.com/duckdb/duckdb/pull/14742 * Correctly deal with continued operation after reading a truncated WAL, and clean up WAL handling logic in storage manager by @Mytherin in https://github.com/duckdb/duckdb/pull/14785 * [Fix] Error message in transaction manager by @taniabogatsch in https://github.com/duckdb/duckdb/pull/14788 * Initialize the grouping sets when there is a group by all to enable filter pushdown by @Tmonster in https://github.com/duckdb/duckdb/pull/14660 * Merge feature into main again by @Mytherin in https://github.com/duckdb/duckdb/pull/14793 * [Python][Expression API] Add `update` to `DuckDBPyRelation`, accepting `Expression` objects | Add `DefaultExpression` by @Tishj in https://github.com/duckdb/duckdb/pull/14780 * Fix #14540: fix unnest rewriter by @flashmouse in https://github.com/duckdb/duckdb/pull/14784 * [PySpark] Add approxCountDistinct, add_months, and various array functions by @binste in https://github.com/duckdb/duckdb/pull/14620 * Add syntax highlighting support for errors in the CLI by @Mytherin in https://github.com/duckdb/duckdb/pull/14799 * Implement #14787: allow expressions in the aggregate clause of a PIVOT statement, as long as the aggregate clause only modifies the aggregate result and does not contain other columns by @Mytherin in https://github.com/duckdb/duckdb/pull/14800 * When repeatable is set, set ParallelSink to false by @Tmonster in https://github.com/duckdb/duckdb/pull/14797 * [Catalog] Fix issue related to uncaught problems during a COMMIT by @Tishj in https://github.com/duckdb/duckdb/pull/14150 * [Upsert] Support non-distinct values in the inserted data by @Tishj in https://github.com/duckdb/duckdb/pull/14293 * Fix issue copying a TABLE that references a SEQUENCE by @Tishj in https://github.com/duckdb/duckdb/pull/14693 * fix duckdb_extension.h macros for C by @samansmink in https://github.com/duckdb/duckdb/pull/14808 * LTO CMake setting was not working anymore on MacOS, fixing that by @carlopi in https://github.com/duckdb/duckdb/pull/14811 * Add syntax highlighting support to the DuckBox query result by @Mytherin in https://github.com/duckdb/duckdb/pull/14820 * Avoiding unnecessary rebinding by @samansmink in https://github.com/duckdb/duckdb/pull/14616 * Support struct projection pushdown in Parquet files by @Mytherin in https://github.com/duckdb/duckdb/pull/14839 * Internal #3263: Window Distinct Deadlock by @hawkfish in https://github.com/duckdb/duckdb/pull/14775 * Issue #14737: DISTINCT ORDER Dependency by @hawkfish in https://github.com/duckdb/duckdb/pull/14840 * [Python][Dev] Skip `test_pandas_selection` on Python3.8 by @Tishj in https://github.com/duckdb/duckdb/pull/14851 * [Python][Dev] Fix issues with new/updated tests in the python sqllogictest implementation by @Tishj in https://github.com/duckdb/duckdb/pull/14850 * add function ends_with back by @Damon07 in https://github.com/duckdb/duckdb/pull/14859 * Require `capacity` in ValidityMask by @Mytherin in https://github.com/duckdb/duckdb/pull/14846 * Issue #11557: DECIMAL Downcast Rounding by @hawkfish in https://github.com/duckdb/duckdb/pull/14860 * Increase map inference threshold by @lnkuiper in https://github.com/duckdb/duckdb/pull/14848 * Output exception message on parse exception by @ackxolotl in https://github.com/duckdb/duckdb/pull/14852 * Use `LogicalTypeId::Unknown` instead of `LogicalTypeId::SQLNULL` for macro binding by @lnkuiper in https://github.com/duckdb/duckdb/pull/14809 * return InsertionOrderPreservingMap from TableFunction to_string by @samansmink in https://github.com/duckdb/duckdb/pull/14835 * Support default values when appending data chunks by @taniabogatsch in https://github.com/duckdb/duckdb/pull/14733 * [PySpark] Add a lot more functions incl. some regexp ones by @binste in https://github.com/duckdb/duckdb/pull/14761 * Added getters for enum and struct type values by @prashanthellina in https://github.com/duckdb/duckdb/pull/14831 * Fix write partition columns false by @ykskb in https://github.com/duckdb/duckdb/pull/14871 * Generate In-Clause filters from hash joins by @Mytherin in https://github.com/duckdb/duckdb/pull/14864 * Move FTS extension out-of-tree by @lnkuiper in https://github.com/duckdb/duckdb/pull/14872 * [C API] More tests and nits by @taniabogatsch in https://github.com/duckdb/duckdb/pull/14758 * Issue #14885: DATEPART Cache Bounds by @hawkfish in https://github.com/duckdb/duckdb/pull/14891 * Fix arrow table filters by @Tmonster in https://github.com/duckdb/duckdb/pull/14893 * [Python] Fix various issues uncovered by #12959 by @Tishj in https://github.com/duckdb/duckdb/pull/13149 * Remove some Snappy definitions by @lnkuiper in https://github.com/duckdb/duckdb/pull/14897 * [Fix] Binder exception when creating a foreign key on a view by @taniabogatsch in https://github.com/duckdb/duckdb/pull/14882 * [C API] Implement AddColumn and ClearColumns for the Appender by @taniabogatsch in https://github.com/duckdb/duckdb/pull/14880 * python: use PyUnicode_FromStringAndSize() by @methane in https://github.com/duckdb/duckdb/pull/14895 * Top-N: Improve performance with large heaps, and correctly call Reduce by @Mytherin in https://github.com/duckdb/duckdb/pull/14900 * Append to child column first in list column append by @Mytherin in https://github.com/duckdb/duckdb/pull/14902 * Update cardinality during limit pushdown by @jeewonhh in https://github.com/duckdb/duckdb/pull/14901 * Add `struct_concat` by @Maxxen in https://github.com/duckdb/duckdb/pull/14853 * [Compression] Add ZSTD compression by @Tishj in https://github.com/duckdb/duckdb/pull/14514 * Improve timestamp functionality by @taniabogatsch in https://github.com/duckdb/duckdb/pull/14818 * Fix #14833: split_part follow pg by @flashmouse in https://github.com/duckdb/duckdb/pull/14875 * C API: Add Value Relation constructor with RelationContextWrapper and ParsedExpression as argument by @anshuldata in https://github.com/duckdb/duckdb/pull/14892 * Issue #14734: Wrap Parquet TIMETZ by @hawkfish in https://github.com/duckdb/duckdb/pull/14908 * [Fix] release shared connection pointer before it goes out of scope by @roj516 in https://github.com/duckdb/duckdb/pull/14926 * [Fix] Nightly async build by @taniabogatsch in https://github.com/duckdb/duckdb/pull/14913 * [Tests] Re-enable test for vector verification run by @taniabogatsch in https://github.com/duckdb/duckdb/pull/14911 * Return timestamp with timezone in `read_text`/`read_blob` by @Maxxen in https://github.com/duckdb/duckdb/pull/14925 * Fix several CLI issues by @Mytherin in https://github.com/duckdb/duckdb/pull/14929 * improve ReadAheadBuffer::AddReadHead error message by @stephaniewang526 in https://github.com/duckdb/duckdb/pull/14940 * Skip Dynamic Join Ordering Algorithm if there are many relations by @Tmonster in https://github.com/duckdb/duckdb/pull/14943 * remove failing benchmark by @hmeriann in https://github.com/duckdb/duckdb/pull/14945 * Typo in csv UnterminatedQuotesError how_to_fix_it by @bradleybuda in https://github.com/duckdb/duckdb/pull/14951 * Pullup empty results through delim joins as well by @Tmonster in https://github.com/duckdb/duckdb/pull/14920 * Fix getting named parameter type information. by @Giorgi in https://github.com/duckdb/duckdb/pull/14952 * Fix casting long to int via explicit cast in parquet by @carlopi in https://github.com/duckdb/duckdb/pull/14959 * Fix script/regression/benchmark.py rework by @carlopi in https://github.com/duckdb/duckdb/pull/14958 * Explicit install of pkg-config broke, removing it by @carlopi in https://github.com/duckdb/duckdb/pull/14965 * Improve code generation of storage and serialization version infos by @carlopi in https://github.com/duckdb/duckdb/pull/14947 * C API support for non-standard timestamp values by @jraymakers in https://github.com/duckdb/duckdb/pull/14954 * Implement Logical Compaction in Hash Join Operator by @YimingQiao in https://github.com/duckdb/duckdb/pull/14956 * Disable row group size bytes default initialization by @lnkuiper in https://github.com/duckdb/duckdb/pull/14974 * [Swift.yml] Bump to macos-14, and switch simulation targets by @carlopi in https://github.com/duckdb/duckdb/pull/14984 * Use IOException for failed fstat calls by @ywelsch in https://github.com/duckdb/duckdb/pull/14975 * Logical Sample requires child to have separate join order optimization by @Tmonster in https://github.com/duckdb/duckdb/pull/14969 * Properly register successful dialect runs by @pdet in https://github.com/duckdb/duckdb/pull/14977 * Run containerized builds requiring deprecatd ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION only on main/feature by @carlopi in https://github.com/duckdb/duckdb/pull/14998 * Fuzzer #3297: Nth Value Indexing by @hawkfish in https://github.com/duckdb/duckdb/pull/14997 * [Arrow] Filter pushdown decimal fix by @Tishj in https://github.com/duckdb/duckdb/pull/14995 * Support multiple function descriptions by @c-herrewijn in https://github.com/duckdb/duckdb/pull/14838 * Join Filter Pushdown does not push down in filters when nulls are present by @Tmonster in https://github.com/duckdb/duckdb/pull/14970 * [Fix] Throw on invalid MAP input in Value::MAP by @taniabogatsch in https://github.com/duckdb/duckdb/pull/14916 * Rely on extension-ci-tools workflow to build linux_amd64_gcc4 extensions by @carlopi in https://github.com/duckdb/duckdb/pull/14987 * Rework Auto-Complete To Work Based On PEG grammar by @Mytherin in https://github.com/duckdb/duckdb/pull/15003 * for-loop-erase bugfix in filter pushdown by @peterboncz in https://github.com/duckdb/duckdb/pull/15008 * Internal #861: Window Code Refactoring by @hawkfish in https://github.com/duckdb/duckdb/pull/15007 * Internal #3574: INTERVAL Normlisation Carries by @hawkfish in https://github.com/duckdb/duckdb/pull/15009 * [Arrow] Fix scan of an object providing the PyCapsuleInterface when projection pushdown is possible. by @Tishj in https://github.com/duckdb/duckdb/pull/14993 * [PySpark] - Add extra str functions to pyspark api by @mariotaddeucci in https://github.com/duckdb/duckdb/pull/14921 * [PySpark] - Add .isNull and .isNotNull methods to Column class by @mariotaddeucci in https://github.com/duckdb/duckdb/pull/14960 * DuckDB Arrow Non Canonical Extensions to use arrow.opaque by @pdet in https://github.com/duckdb/duckdb/pull/15002 * Autocomplete test fix by @Mytherin in https://github.com/duckdb/duckdb/pull/15019 * Add check_peg_parser to extension_entries by @carlopi in https://github.com/duckdb/duckdb/pull/15021 * Re-enable jemalloc on ARM by @lnkuiper in https://github.com/duckdb/duckdb/pull/14810 * Dynamically decide whether to do a Perfect Hash Join by @lnkuiper in https://github.com/duckdb/duckdb/pull/14971 * No salt for Android by @lnkuiper in https://github.com/duckdb/duckdb/pull/14923 * Fixup linux_arm64 extension builds by @carlopi in https://github.com/duckdb/duckdb/pull/15016 * Issue #14834: INTERVAL Collations by @hawkfish in https://github.com/duckdb/duckdb/pull/15022 * SUM(x + C) rewrite by @Mytherin in https://github.com/duckdb/duckdb/pull/15017 * Spell NULL with uppercase in configuration description and comments by @szarnyasg in https://github.com/duckdb/duckdb/pull/15006 * Force download doesn't require to do a head request by @pdet in https://github.com/duckdb/duckdb/pull/14979 * CSV Reader - 4 byte delimiters by @pdet in https://github.com/duckdb/duckdb/pull/14670 * More regression tests by @lnkuiper in https://github.com/duckdb/duckdb/pull/14973 * [PySpark] Add more functions such as slice, split, standard deviations, etc. by @binste in https://github.com/duckdb/duckdb/pull/14863 * Fix extension entries by @Mytherin in https://github.com/duckdb/duckdb/pull/15027 * Speed up scans of RLE compressed data by @Mytherin in https://github.com/duckdb/duckdb/pull/15023 * Speed up scans of Uncompressed strings by @Mytherin in https://github.com/duckdb/duckdb/pull/15024 * Internal #3583: INGNORE NULLS Race by @hawkfish in https://github.com/duckdb/duckdb/pull/15032 * [Regression.yml] Add icu, needed for external regression tests by @carlopi in https://github.com/duckdb/duckdb/pull/15044 * Fix internal error of list_zip with only truncate argument provided by @Damon07 in https://github.com/duckdb/duckdb/pull/15039 * Avoid sum rewrite for hugeint/uhugeint since it could introduce overflow errors by @Mytherin in https://github.com/duckdb/duckdb/pull/15040 * BarScalarFunction needs to keep track of width != string.size() by @carlopi in https://github.com/duckdb/duckdb/pull/15041 * Add SUM(BOOL) overload by @Mytherin in https://github.com/duckdb/duckdb/pull/15042 * Add virtual callback to get dependency manager to the catalog by @Mytherin in https://github.com/duckdb/duckdb/pull/15043 * Flip OR filter comparison if constant is on the other side by @Mytherin in https://github.com/duckdb/duckdb/pull/15045 * Fix #15010: in map cast only access validity when child elements were not fully converted by @Mytherin in https://github.com/duckdb/duckdb/pull/15046 * Various fixes for vector size = 2 CI by @Mytherin in https://github.com/duckdb/duckdb/pull/15047 * Add `require ram` to test runner, and use to limit distinct_grouping_tpch.test by @Mytherin in https://github.com/duckdb/duckdb/pull/15048 * [pystubs] Fix type of `proto` parameter in `from_substrait` methods. by @ingomueller-net in https://github.com/duckdb/duckdb/pull/15004 * CLI: Add -f [FILE] argument that allows execution of a file by @Mytherin in https://github.com/duckdb/duckdb/pull/15050 * max_temp_directory_size - print "90% of available disk space" as value if temp directory is not initialized by @Mytherin in https://github.com/duckdb/duckdb/pull/15057 * Interrupt query on error in `ClientContext::Query` by @Mytherin in https://github.com/duckdb/duckdb/pull/15058 * Turn count_if into an actual aggregate function by @Mytherin in https://github.com/duckdb/duckdb/pull/15061 * CLI: Add .safe_mode as a dot command as well by @Mytherin in https://github.com/duckdb/duckdb/pull/15064 * Pushdown inequality filters by @Mytherin in https://github.com/duckdb/duckdb/pull/15059 * Restore support for DEBUG_STACKTRACE by @carlopi in https://github.com/duckdb/duckdb/pull/15053 * Shell: Provide a summary of numbers if we are rendering only a single row by @Mytherin in https://github.com/duckdb/duckdb/pull/15031 * Issue #15067: Postgres Age Compatibility by @hawkfish in https://github.com/duckdb/duckdb/pull/15070 * add duckdb_append_value to C API by @jraymakers in https://github.com/duckdb/duckdb/pull/15065 * Speed up Main CI workflow by @Mytherin in https://github.com/duckdb/duckdb/pull/15071 * [CSV Reader] Being more flexible with unescaped quotes in quoted values. by @pdet in https://github.com/duckdb/duckdb/pull/15018 * IEJoin GetProgress: Normalize to 0-100 by @carlopi in https://github.com/duckdb/duckdb/pull/15081 * Avoid building for Python 3.7 on Windows by @carlopi in https://github.com/duckdb/duckdb/pull/15085 * Allow inputting a base hash in Regression workflow by @lnkuiper in https://github.com/duckdb/duckdb/pull/15082 * Top-N: Perform global boundary checking before doing sort-key conversion by @Mytherin in https://github.com/duckdb/duckdb/pull/15087 * Fix aggregate regression by @lnkuiper in https://github.com/duckdb/duckdb/pull/15025 * Sum Rewriter: correctly match only Sum aggregations in sum rewriter by @Mytherin in https://github.com/duckdb/duckdb/pull/15088 * new answers for some JOIN benchmarks by @hmeriann in https://github.com/duckdb/duckdb/pull/15090 * Ensure checkpoint tasks complete on IO exceptions by @ywelsch in https://github.com/duckdb/duckdb/pull/15089 * Internal #3615: Quantile Cursor Allocation by @hawkfish in https://github.com/duckdb/duckdb/pull/15102 * Issue #15056: DISTINCT Insensitive Aggregation by @hawkfish in https://github.com/duckdb/duckdb/pull/15066 * Bloom Filter Support in Parquet Reader/Writer by @hannes in https://github.com/duckdb/duckdb/pull/14597 * Dynamically push table filters from Top-N operator by @Mytherin in https://github.com/duckdb/duckdb/pull/15099 * Fix for #15080 cgroup v2 memory limit not being read correctly by @nickzoic in https://github.com/duckdb/duckdb/pull/15103 * Provide support for continuous profiling by @ywelsch in https://github.com/duckdb/duckdb/pull/14972 * fix bundle-library step by @samansmink in https://github.com/duckdb/duckdb/pull/15093 * Internal #861: Value Function SubFrames by @hawkfish in https://github.com/duckdb/duckdb/pull/15100 * Parquet reader: correctly reset vector in between calls to read when skipping by @Mytherin in https://github.com/duckdb/duckdb/pull/15107 * Do not swap `RIGHT` joins to `LEFT` when `BuildProbeSideOptimizer` is disabled by @lnkuiper in https://github.com/duckdb/duckdb/pull/15105 * Fix CheckMarkToSemi conversion in FilterPushdown optimizer by @kryonix in https://github.com/duckdb/duckdb/pull/15104 * Setting `temp_directory` to `NULL` should be same as setting it to `''` by @lnkuiper in https://github.com/duckdb/duckdb/pull/15113 * Add make_date(INT) function, similar to make_timestamp(BIGINT) by @Mytherin in https://github.com/duckdb/duckdb/pull/15109 * Support unlimited precision in JSON by using yyjson "raw" values by @lnkuiper in https://github.com/duckdb/duckdb/pull/15112 * Avoid repartitioning out-of-core hash joins if very, very skewed by @lnkuiper in https://github.com/duckdb/duckdb/pull/15114 * Linux dockerized extensions: invoke script in right folder by @carlopi in https://github.com/duckdb/duckdb/pull/15122 * Operator's GetProgress to return ProgressData instead of double by @carlopi in https://github.com/duckdb/duckdb/pull/15084 * Skip building azure extension due to problems installing libxml by @carlopi in https://github.com/duckdb/duckdb/pull/15126 * Test now passes due to flexible quote on CSVs by @pdet in https://github.com/duckdb/duckdb/pull/15133 * Avoid cleaning up past releases if we have not just uploaded a new one by @carlopi in https://github.com/duckdb/duckdb/pull/15134 * Implement struct projection pushdown for JSON reads by @lnkuiper in https://github.com/duckdb/duckdb/pull/15116 * Update the `.clang-format` file to disable sorting includes by @Tishj in https://github.com/duckdb/duckdb/pull/15131 * `rowid` filter pushdown by @Maxxen in https://github.com/duckdb/duckdb/pull/15020 * Parquet Reader: use aligned unpack in RleBpDecoder when possible by @Mytherin in https://github.com/duckdb/duckdb/pull/15106 * Fixup deployment of extensions for build_extensions_dockerized by @carlopi in https://github.com/duckdb/duckdb/pull/15136 * Parquet reader: rename metadata cache setting to `parquet_metadata_cache`, and avoid using it for stats by @Mytherin in https://github.com/duckdb/duckdb/pull/15129 * Fix `BLOB` conversion in `parquet_metadata` by @lnkuiper in https://github.com/duckdb/duckdb/pull/15132 * Add explicit_cardinality to ParquetOptions [de]serialized fields by @carlopi in https://github.com/duckdb/duckdb/pull/15135 * Issue #15138: Friendlier ICU Settings by @hawkfish in https://github.com/duckdb/duckdb/pull/15139 * Execute test/sql/aggregate/aggregates/first_memory_usage.test_slow single threaded by @carlopi in https://github.com/duckdb/duckdb/pull/15146 * Store transactions that have deletes on a table with indexes by @Mytherin in https://github.com/duckdb/duckdb/pull/15144 * Only generate physical plan for LogicalPrepare when it is going to be used by @ywelsch in https://github.com/duckdb/duckdb/pull/15145 * [CSV Sniffer] Selecting file to sniff from Glob and List by @pdet in https://github.com/duckdb/duckdb/pull/13703 * Refactor signing linux extensions by @carlopi in https://github.com/duckdb/duckdb/pull/15159 * FileHandle should retain the FileOpenFlags it was opened with by @jkub in https://github.com/duckdb/duckdb/pull/15153 * transform modifiers in pivot with no columns by @Damon07 in https://github.com/duckdb/duckdb/pull/15155 * Fix wrong type append of base vector by @pdet in https://github.com/duckdb/duckdb/pull/15157 * Add cross-version testing CI by @carlopi in https://github.com/duckdb/duckdb/pull/15161 * Fix wrongly used github.ref to sha by @carlopi in https://github.com/duckdb/duckdb/pull/15167 * Fix Regression workflow running against itself by @lnkuiper in https://github.com/duckdb/duckdb/pull/15165 * Add dictionary size, and use dictionary/constant vectors in the aggregate hash table to speed up finding groups by @Mytherin in https://github.com/duckdb/duckdb/pull/15152 * Fix ci issues by @carlopi in https://github.com/duckdb/duckdb/pull/15169 * Do not assume constant comparison is compare equal by @Tmonster in https://github.com/duckdb/duckdb/pull/15164 * Read file in 100mb chunks in read_file/read_blob by @Maxxen in https://github.com/duckdb/duckdb/pull/15160 * [Compression] Add RoaringBitmap Compression by @Tishj in https://github.com/duckdb/duckdb/pull/14878 * bump spatial + VCPKG Commit by @Maxxen in https://github.com/duckdb/duckdb/pull/15158 * Fix various ci nightly by @carlopi in https://github.com/duckdb/duckdb/pull/15178 * Keep track of compression function in ColumnData, and add dedicated `select` call to compression function by @Mytherin in https://github.com/duckdb/duckdb/pull/15186 * Push dynamic Top-N filters for VARCHAR columns as well by @Mytherin in https://github.com/duckdb/duckdb/pull/15188 * Issue #15069: Postgres CURRENT_XXX Compatibility by @hawkfish in https://github.com/duckdb/duckdb/pull/15125 * Add DictionaryId that can be used to uniquely identify dictionaries, and use this in the aggregate HT to cache look-ups by @Mytherin in https://github.com/duckdb/duckdb/pull/15196 * NULL check for invalid result by @MonkeybreadSoftware in https://github.com/duckdb/duckdb/pull/15194 * Rework `TableFilterType::CONSTANT_COMPARISON` to work identically to constant comparisons in SQL by @Mytherin in https://github.com/duckdb/duckdb/pull/15197 * Fix spelling mistakes in some comments by @tomhanks2024 in https://github.com/duckdb/duckdb/pull/14982 * Move httpfs to external repository by @carlopi in https://github.com/duckdb/duckdb/pull/14727 * Review no_extension_autoloading requires in tests: either remove, add FIXME or add EXPECTED by @carlopi in https://github.com/duckdb/duckdb/pull/15191 * Fix for row-id pushdown, and remove unnecessarily complicated method by @Mytherin in https://github.com/duckdb/duckdb/pull/15216 * Fix deserialization of approx decimal quantile aggregate by @Mytherin in https://github.com/duckdb/duckdb/pull/15215 * LoadInfo::Copy needs to copy the version by @Mytherin in https://github.com/duckdb/duckdb/pull/15214 * RE2: reduce unnecessary allocations in BitState by @Mytherin in https://github.com/duckdb/duckdb/pull/15210 * Increase stale bot's timeout by @szarnyasg in https://github.com/duckdb/duckdb/pull/15224 * [Python][Dev] Remove noisy / faulty test by @Tishj in https://github.com/duckdb/duckdb/pull/15220 * Add dedicated `filter` method to compression algorithms by @Mytherin in https://github.com/duckdb/duckdb/pull/15209 * [Python][Dev] Fix `test_filter_pushdown.py` by @Tishj in https://github.com/duckdb/duckdb/pull/15225 * Rework Wasm extensions CI, and use out_of_tree_extensions.cmake by @carlopi in https://github.com/duckdb/duckdb/pull/15223 * Fix #15221: use TryCast when converting Parquet stats - and fallback to not having stats by @Mytherin in https://github.com/duckdb/duckdb/pull/15233 * Fix #15177 - detect corruption in dictionary compressed strings by @Mytherin in https://github.com/duckdb/duckdb/pull/15227 * Fix #15175 - use case-insensitive comparison when de-duplicating hive columns from files by @Mytherin in https://github.com/duckdb/duckdb/pull/15228 * CLI: only render large numbers if ALL values are large numbers by @Mytherin in https://github.com/duckdb/duckdb/pull/15229 * Fix several fuzzer issues by @Mytherin in https://github.com/duckdb/duckdb/pull/15226 * In Clause Rewriter: add mark column to the filter projection map to avoid projecting it upwards which can cause issues with set operations by @Mytherin in https://github.com/duckdb/duckdb/pull/15213 * Skip spatial on MinGW, given otherwise mingw extensions CI will fail by @carlopi in https://github.com/duckdb/duckdb/pull/15237 * Add filter on repository_dispatch to Regression nightly run by @carlopi in https://github.com/duckdb/duckdb/pull/15241 * Rework upload ci via reusable workflow by @carlopi in https://github.com/duckdb/duckdb/pull/15243 * Bump excel extension by @Maxxen in https://github.com/duckdb/duckdb/pull/15222 * `OR`/`IN` filter pushdown for `VARCHAR` by @lnkuiper in https://github.com/duckdb/duckdb/pull/15219 * Issue #15054: Windowed Aggregate Macros by @hawkfish in https://github.com/duckdb/duckdb/pull/15181 * feat: Add CHECK expression to error message on constraint failure by @rustyconover in https://github.com/duckdb/duckdb/pull/15148 * Linenoise: make Ctrl+G execute the query by @Mytherin in https://github.com/duckdb/duckdb/pull/15244 * Fix #15072 and #15073: propagate aliases correctly in * SIMILAR TO, and forbid `RENAME` as well by @Mytherin in https://github.com/duckdb/duckdb/pull/15247 * Fix #15051: support ORDER BY rowid in ARRAY by @Mytherin in https://github.com/duckdb/duckdb/pull/15248 * CLI: improve quote handling in syntax highlighting of errors and don't throw in shell renderer by @Mytherin in https://github.com/duckdb/duckdb/pull/15249 * Histogram: convert decimals to doubles for histogram binning function by @Mytherin in https://github.com/duckdb/duckdb/pull/15250 * Revert "RE2: reduce unnecessary allocations in BitState" by @Mytherin in https://github.com/duckdb/duckdb/pull/15252 * Grouped aggregation performance improvements by @lnkuiper in https://github.com/duckdb/duckdb/pull/15251 * Add run_benchmark.py script by @Mytherin in https://github.com/duckdb/duckdb/pull/15253 * Fix #15012: transform large literals in the range of > HUGEINT_MAX < UHUGEINT_MAX to uhugeint by @Mytherin in https://github.com/duckdb/duckdb/pull/15255 * Clang-tidy fixes in Parquet writer by @Mytherin in https://github.com/duckdb/duckdb/pull/15256 * Fix for VERIFY_VECTOR=Dictionary in Window Bounds by @Mytherin in https://github.com/duckdb/duckdb/pull/15257 * Fix #15239: detect subqueries in lateral join conditions and throw an explicit error when encountered by @Mytherin in https://github.com/duckdb/duckdb/pull/15260 * Implement #14513: implement support for (a, b) IN (SELECT ...) for uncorrelated subqueries by @Mytherin in https://github.com/duckdb/duckdb/pull/15259 * Various nightly CI fixes by @Mytherin in https://github.com/duckdb/duckdb/pull/15258 * Fix #15261: turn AuxInfo into a safe optional_ptr instead of a raw pointer, and check whether or not enum is complete in pivot by @Mytherin in https://github.com/duckdb/duckdb/pull/15263 * Fix for JSONSerializer of BLOB by @Mytherin in https://github.com/duckdb/duckdb/pull/15274 * Do not exclude nulls when multiple mark join conditions by @Tmonster in https://github.com/duckdb/duckdb/pull/15275 * [Python] Fix an issue with double quotes in `getattr` of DuckDBPyRelation by @Tishj in https://github.com/duckdb/duckdb/pull/15277 * Fixup extension selection by @carlopi in https://github.com/duckdb/duckdb/pull/15272 * [Fix] Bind the ALTER TABLE ADD PK code into the duck catalog by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15231 * Realnest HEP benchmarks by @hmeriann in https://github.com/duckdb/duckdb/pull/14468 * Feature #12699: XXX_VALUE Secondary Sorts by @hawkfish in https://github.com/duckdb/duckdb/pull/15270 * Join order bugs by @Tmonster in https://github.com/duckdb/duckdb/pull/15230 * Various nightly CI test fixes by @Mytherin in https://github.com/duckdb/duckdb/pull/15273 * Bugfixes by @lnkuiper in https://github.com/duckdb/duckdb/pull/15276 * Ungrouped aggregate gets cardinality of 1 by @jeewonhh in https://github.com/duckdb/duckdb/pull/15279 * More nightly tidy fixes by @Mytherin in https://github.com/duckdb/duckdb/pull/15280 * bump vss by @Maxxen in https://github.com/duckdb/duckdb/pull/15283 * Fix #15183: correctly handle NULL values in generic GREATEST implementation by @Mytherin in https://github.com/duckdb/duckdb/pull/15287 * Issue #15246: Negative Nanosecond Timestamps by @hawkfish in https://github.com/duckdb/duckdb/pull/15289 * Don't decode special characters on redirect by @lcostantino in https://github.com/duckdb/duckdb/pull/15101 * remove O_SYNC from O_DIRECT by @jkub in https://github.com/duckdb/duckdb/pull/15294 * Fix #14938: when combining ENUM with SQLNULL/UNKNOWN types, preserve the ENUM type by @Mytherin in https://github.com/duckdb/duckdb/pull/15297 * allow positional access in named structs by @peterboncz in https://github.com/duckdb/duckdb/pull/15151 * Fix 2 unconnected small problems in CI by @carlopi in https://github.com/duckdb/duckdb/pull/15304 * Add value creation and accessor functions to the C API for VARINT, DECIMAL, BIT, and UUID by @jraymakers in https://github.com/duckdb/duckdb/pull/15212 * Only create information_schema/pg_catalog catalogs in the system catalog by @Mytherin in https://github.com/duckdb/duckdb/pull/15286 * Add `get_partition_stats` callback to TableFunction to get a list of all row group metadata, and use this to speed up `COUNT(*)` by @Mytherin in https://github.com/duckdb/duckdb/pull/15301 * Fix for bitstring_agg on empty result - only complain about missing stats when we actually process rows by @Mytherin in https://github.com/duckdb/duckdb/pull/15305 * Correctly propagate child-types in MAP to the internal struct values, and test httpfs in LATEST_STORAGE by @Mytherin in https://github.com/duckdb/duckdb/pull/15303 * remove conditional around fsync in single_file_block_manager by @jkub in https://github.com/duckdb/duckdb/pull/15306 * Move away from upload-artifacts@v3 / download-artifacts@v3 by @carlopi in https://github.com/duckdb/duckdb/pull/15309 * Fix update_extensions_ci test by @carlopi in https://github.com/duckdb/duckdb/pull/15310 * Addressing over-eager constraint checking with delete indexes by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15092 * Fix internal issue #3740 by @hannes in https://github.com/duckdb/duckdb/pull/15320 * EXPLAIN/EXPLAIN ANALYZE - limit max lines of each extra info element, instead of truncating the entire node by @Mytherin in https://github.com/duckdb/duckdb/pull/15317 * Minor nightly test fixes by @Mytherin in https://github.com/duckdb/duckdb/pull/15318 * Bump Extension C API to stable by @samansmink in https://github.com/duckdb/duckdb/pull/14992 * Pass down DUCKDB_EXTENSION_SIGNING_PK as env by @carlopi in https://github.com/duckdb/duckdb/pull/15324 * Bump to latest sqlsmith and re-enable wasm by @carlopi in https://github.com/duckdb/duckdb/pull/15323 * Skipping lookups in `GroupedAggregateHashTable` if (almost) everything is unique by @lnkuiper in https://github.com/duckdb/duckdb/pull/15321 * Add automatic sampling regression fix 2 by @Tmonster in https://github.com/duckdb/duckdb/pull/14914 * [Dev] Fix Roaring compression bug on appending small vectors by @Tishj in https://github.com/duckdb/duckdb/pull/15326 * Fix JSON reader hang by @lnkuiper in https://github.com/duckdb/duckdb/pull/15328 * [Dev] Clean up `Dictionary` compression code by @Tishj in https://github.com/duckdb/duckdb/pull/15300 * Adjustments on test to bypass sniffing limitation on vector_size by @pdet in https://github.com/duckdb/duckdb/pull/15330 * Enable stack traces by default, split into getting the frame pointers and resolve symbols only when the error is finalized, and add support for demangling by @Mytherin in https://github.com/duckdb/duckdb/pull/15337 * Use correct element rename_list_el in grammar by @Mytherin in https://github.com/duckdb/duckdb/pull/15339 * Unified use of constant MainHeader: FLAG_COUNT by @guoxiangCN in https://github.com/duckdb/duckdb/pull/15338 * Append default to appender by @Giorgi in https://github.com/duckdb/duckdb/pull/15121 * add core functions make_timestamp_ns(nanos) and epoch_ns(timestamp_ts) by @andreimatei in https://github.com/duckdb/duckdb/pull/14930 * feat: support create_on_conflict in create_table_relation by @scgkiran in https://github.com/duckdb/duckdb/pull/15245 * Fix error message checking in test concurrent index by @Mytherin in https://github.com/duckdb/duckdb/pull/15340 * CI: Use mirror for Spark binaries by @szarnyasg in https://github.com/duckdb/duckdb/pull/15372 * Fix skip CSV Rejects test by @pdet in https://github.com/duckdb/duckdb/pull/15359 * Vectorize lookups in `GroupedAggregateHashTable` by @lnkuiper in https://github.com/duckdb/duckdb/pull/15368 * Bump azure and remove patches by @carlopi in https://github.com/duckdb/duckdb/pull/15382 * Fix conditional jump or move depends on uninitialised value(s) by @pdet in https://github.com/duckdb/duckdb/pull/15367 * Start encapsulating `BaseExpression` by @Maxxen in https://github.com/duckdb/duckdb/pull/15360 * [Python] Allow use of `DuckDBPyType` as child objects in implicit conversions by @Tishj in https://github.com/duckdb/duckdb/pull/15346 * [Dev] Made `reference<CompressionFunction> function` private in `ColumnSegment` by @Tishj in https://github.com/duckdb/duckdb/pull/15347 * [Dev] Fix erroneous assert in `ZSTD` scan for `LogicalTypeId::VARCHAR` by @Tishj in https://github.com/duckdb/duckdb/pull/15357 * [Dev] Reset to the vector cache so the vectors are clean for the scan by @Tishj in https://github.com/duckdb/duckdb/pull/15383 * Fix tests not to use compatibility version latest by @carlopi in https://github.com/duckdb/duckdb/pull/15361 * Fix Test introduced by new sampling by @Tmonster in https://github.com/duckdb/duckdb/pull/15378 * Feature #12699: RANK Secondary Sorts by @hawkfish in https://github.com/duckdb/duckdb/pull/15331 * [Fix] Uninitialised values in list_reverse by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15387 * [Dev] Check in `insert` if the InsertionOrderPreservingMap contains the key, do nothing in that case by @Tishj in https://github.com/duckdb/duckdb/pull/15385 * AFL++ Fuzzer Tests and Fixes by @pdet in https://github.com/duckdb/duckdb/pull/15329 * Fix RelationStatisticsHelper to estimate table filters correctly by @Tmonster in https://github.com/duckdb/duckdb/pull/15308 * [PySpark] - Add broadcast function by @mariotaddeucci in https://github.com/duckdb/duckdb/pull/15037 * feat: refactor getting tie_break_offset in SelectBestMatch by @stephaniewang526 in https://github.com/duckdb/duckdb/pull/15235 * Added dashes to test case csv_buffer_size_rejects.test_slow by @hannes in https://github.com/duckdb/duckdb/pull/15398 * [Dev] Split last part of `ColumnDataCheckpointer::Checkpoint` into `FinalizeCheckpoint` by @Tishj in https://github.com/duckdb/duckdb/pull/15388 * Fix JSON reader hang found by fuzzer by @lnkuiper in https://github.com/duckdb/duckdb/pull/15397 * Better partition selection for external hash joins by @lnkuiper in https://github.com/duckdb/duckdb/pull/15389 * fix arm extensions ci by @samansmink in https://github.com/duckdb/duckdb/pull/15400 * Feature #12699: ROW_NUMBER Secondary Sorts by @hawkfish in https://github.com/duckdb/duckdb/pull/15403 * Improve hash combining by @lnkuiper in https://github.com/duckdb/duckdb/pull/15408 * allow multifilereaders to delete entire chunks in FinalizeChunk by @samansmink in https://github.com/duckdb/duckdb/pull/15401 * Fix issue #14659 by @pdet in https://github.com/duckdb/duckdb/pull/15411 * Fix for issue #14648 by @pdet in https://github.com/duckdb/duckdb/pull/15409 * Re-enable some tests, removing `mode skip` or moving it later by @carlopi in https://github.com/duckdb/duckdb/pull/15488 * [Fix] Adjust reclaim space test to smaller block size nightly by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15414 * Feature #12699: CUME_DIST Secondary Sorts by @hawkfish in https://github.com/duckdb/duckdb/pull/15413 * Fix issue with cleanup of buffers when reading same file multiple times by @pdet in https://github.com/duckdb/duckdb/pull/15358 * [Fix] Track correct allocation size of evicted memory by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15433 * Fix internal issue 3813 by @lnkuiper in https://github.com/duckdb/duckdb/pull/15427 * Exploit RFC_4180 to be more strict with newline settings by @pdet in https://github.com/duckdb/duckdb/pull/15426 * Adds comment to Python Object + small adjustment do sniffer with comment detection. by @pdet in https://github.com/duckdb/duckdb/pull/15425 * Fix more nightly test errors due to sampling by @Tmonster in https://github.com/duckdb/duckdb/pull/15423 * Type mismatch set operation by @Tmonster in https://github.com/duckdb/duckdb/pull/15422 * Making the names option of CSV Files more restrictive when reading one file. by @pdet in https://github.com/duckdb/duckdb/pull/15431 * [Python][Dev] Lock `mypy` at 1.13 by @Tishj in https://github.com/duckdb/duckdb/pull/15448 * Fix InFilter::ToString, visible via EXPLAIN ANALYZE for example by @carlopi in https://github.com/duckdb/duckdb/pull/15487 * Mention configuration option that avoids total string size error in error message by @soerenwolfers in https://github.com/duckdb/duckdb/pull/15489 * Fix the seed of RandomLocalState to be 64bit instead of 32bits by @carlopi in https://github.com/duckdb/duckdb/pull/15482 * Fix ADBC Leak when reusing statements by @pdet in https://github.com/duckdb/duckdb/pull/15475 * chore: Add physical type translations for new timestamp types by @krlmlr in https://github.com/duckdb/duckdb/pull/15472 * [Dev] Slight cleanup of `assert.hpp` by @Tishj in https://github.com/duckdb/duckdb/pull/15453 * Retain join partition order by @lnkuiper in https://github.com/duckdb/duckdb/pull/15460 * Use system threads for parallelism on read_csv if reading from pipe by @pdet in https://github.com/duckdb/duckdb/pull/15461 * C API header generation for Go bindings by @taniabogatsch in https://github.com/duckdb/duckdb/pull/14944 * Move InitSegment into roaring namespace (nit) by @arjenpdevries in https://github.com/duckdb/duckdb/pull/15495 * chore: Add header for g++15 compatibility by @krlmlr in https://github.com/duckdb/duckdb/pull/15509 * Functions can throw errors by @Tmonster in https://github.com/duckdb/duckdb/pull/15166 * Improve candidate error message and relax constraint of rfc_4180 = false on quotes by @pdet in https://github.com/duckdb/duckdb/pull/15371 * Implement Union By Name on read csv relation by @pdet in https://github.com/duckdb/duckdb/pull/15452 * Add behaviour to remove unescaped quotes of unquoted values by @pdet in https://github.com/duckdb/duckdb/pull/15454 * [CSV Sniffer] If a column with Time/Date/Timestamp values encounter any other value, immediately go to VARCHAR by @pdet in https://github.com/duckdb/duckdb/pull/15494 * Introduce 2 new platforms: `musllinux_arm64` and `musllinux_amd64` by @carlopi in https://github.com/duckdb/duckdb/pull/15429 * 15128: failed to bind column reference for function under unnest. by @Tmonster in https://github.com/duckdb/duckdb/pull/15421 * Setting descriptions grammar by @szarnyasg in https://github.com/duckdb/duckdb/pull/15500 * Feature #12699: LEAD/LAG Secondary Sorts by @hawkfish in https://github.com/duckdb/duckdb/pull/15497 * Replace funcs copies with moves in sorted_aggregate_function.cpp by @ttsugriy in https://github.com/duckdb/duckdb/pull/15442 * Re-enable iceberg extension by @carlopi in https://github.com/duckdb/duckdb/pull/15456 * Fix a binder issue with type aliases and foreign key constraints by @Tishj in https://github.com/duckdb/duckdb/pull/15517 * Properly ignore empty spaces after end of quotes by @pdet in https://github.com/duckdb/duckdb/pull/15522 * Fix window/test_window_wide_frame.test_slow after random() changes by @carlopi in https://github.com/duckdb/duckdb/pull/15524 * Add atomic ptr class, use in ColumnData to protect Compression function by @Mytherin in https://github.com/duckdb/duckdb/pull/15518 * fix broken link by @alexravenna in https://github.com/duckdb/duckdb/pull/15532 * Various fuzzer fixes by @Mytherin in https://github.com/duckdb/duckdb/pull/15531 * remove duplicate FastMem copies in binary by @xuke-hat in https://github.com/duckdb/duckdb/pull/15470 * [Julia] Improves Julia support for scalar UDFs by @tqml in https://github.com/duckdb/duckdb/pull/15430 * Update year in license file to 2025 by @szarnyasg in https://github.com/duckdb/duckdb/pull/15545 * [Python] Align the behavior between `sql` and `execute` for `.pl()` call by @Tishj in https://github.com/duckdb/duckdb/pull/15537 * Don't create config folder on extension listing by @lcostantino in https://github.com/duckdb/duckdb/pull/15530 * Add `ExtensionTypeInfo` to `ExtraTypeInfo` by @Maxxen in https://github.com/duckdb/duckdb/pull/15373 * Fix some external join benchmark specifications by @lnkuiper in https://github.com/duckdb/duckdb/pull/15561 * Update progress_bar.cpp / drop DUCKDB_DISABLE_PRINT macro by @meztez in https://github.com/duckdb/duckdb/pull/15560 * Fix answers for benchmarks containing `random()` function by @hmeriann in https://github.com/duckdb/duckdb/pull/15562 * Make `max_temp_directory_size` round-trip by @carlopi in https://github.com/duckdb/duckdb/pull/15549 * Allow databases with table_macros to be copyable via COPY FROM DATABASE by @carlopi in https://github.com/duckdb/duckdb/pull/15548 * Allow a variable type `rowid` pseudocolumn in tables by @rustyconover in https://github.com/duckdb/duckdb/pull/14674 * Internal #3860: Deserialise Secondary Orderings by @hawkfish in https://github.com/duckdb/duckdb/pull/15541 * Throw IO exception on 1.1.3 database file with incorrect dependency order by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15568 * Use ISNULL in conjunction or filters by @Tmonster in https://github.com/duckdb/duckdb/pull/15529 * Avoid fast fail: change defaults to run all tests in more cases by @carlopi in https://github.com/duckdb/duckdb/pull/15558 * Asof join adds rows in specific case by @Tmonster in https://github.com/duckdb/duckdb/pull/15567 * [Julia]: Auto-generate api.jl (requires duckdb v1.2?) by @tqml in https://github.com/duckdb/duckdb/pull/15474 * Implicit STRUCT to STRUCT cast for mismatching member names by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15477 * make test always fail in case of internal exception by @c-herrewijn in https://github.com/duckdb/duckdb/pull/15569 * CI: Bump container for Android build by @szarnyasg in https://github.com/duckdb/duckdb/pull/15577 * Fix #15526: CTE use operator type modified by intersect_all by @flashmouse in https://github.com/duckdb/duckdb/pull/15575 * [Julia]: Auto-generate api.jl with new order by @tqml in https://github.com/duckdb/duckdb/pull/15580 * [Dev] `ColumnDataCheckpointer` can now checkpoint column data and validity data together by @Tishj in https://github.com/duckdb/duckdb/pull/15566 * Feature #12699: Secondary Sort Framing by @hawkfish in https://github.com/duckdb/duckdb/pull/15523 * [Test] More STRUCT cast tests by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15578 * Making RFC4180=True more reestrisctive when it comes to newline delimiters by @pdet in https://github.com/duckdb/duckdb/pull/15581 * In PhysicalInsert call FinalFlush before merging row groups into local storage by @Mytherin in https://github.com/duckdb/duckdb/pull/15583 * HTTPFS test - no longer check for IS NOT NULL filter as this is no longer necessary by @Mytherin in https://github.com/duckdb/duckdb/pull/15585 * Clean-up stack traces on MacOS, fix demangling on Linux, and add `EXPORT_DYNAMIC_SYMBOLS` flag which enables stack traces on Linux by @Mytherin in https://github.com/duckdb/duckdb/pull/15587 * InternalException should only invalidate database when encountered during execution by @Mytherin in https://github.com/duckdb/duckdb/pull/15588 * DuckFuzz Fix on Null parameters for both read_csv and sniff_csv by @pdet in https://github.com/duckdb/duckdb/pull/15565 * Annotate errors in table macros with the call position of the table macro by @Mytherin in https://github.com/duckdb/duckdb/pull/15590 * Line dependent buffer by @pdet in https://github.com/duckdb/duckdb/pull/14512 * More bugfixes by @lnkuiper in https://github.com/duckdb/duckdb/pull/15605 * csv_scanner: fix order of evaluation of arguments to a function by @ProjectMutilation in https://github.com/duckdb/duckdb/pull/15609 * [Dev] Fix an unnecessary copy in Dictionary compression by @Tishj in https://github.com/duckdb/duckdb/pull/15594 * [Julia] Fix incorrect types by @tqml in https://github.com/duckdb/duckdb/pull/15612 * Update URLs by @szarnyasg in https://github.com/duckdb/duckdb/pull/15617 * [Compression] `Dictionary` compression data now also includes the validity data by @Tishj in https://github.com/duckdb/duckdb/pull/15591 * Issue #14996: Aggregate Secondary Orderings by @hawkfish in https://github.com/duckdb/duckdb/pull/15592 * Backport ENTRY_VISIBILITY from duckdb/extension-template-c by @carlopi in https://github.com/duckdb/duckdb/pull/15611 * Adjust list_reduce to use a 1-based indexing by @szarnyasg in https://github.com/duckdb/duckdb/pull/15614 * window: fix nullptr dereference by @ProjectMutilation in https://github.com/duckdb/duckdb/pull/15610 * Improve reading duplicate column names in JSON by @lnkuiper in https://github.com/duckdb/duckdb/pull/15615 * Build/test/distribute linux_amd64_musl core extensions by @carlopi in https://github.com/duckdb/duckdb/pull/15607 * Implement `simple_update` for `first` aggregate function by @lnkuiper in https://github.com/duckdb/duckdb/pull/15619 * Issue #15596: Infinite Value Checks by @hawkfish in https://github.com/duckdb/duckdb/pull/15620 * Issue #15610: Wide Secondary Ordering by @hawkfish in https://github.com/duckdb/duckdb/pull/15625 * Issue template updates by @szarnyasg in https://github.com/duckdb/duckdb/pull/15618 * [C API] Expose the DB instance cache in the C API by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15579 * File url scheme by @samansmink in https://github.com/duckdb/duckdb/pull/15563 * Fix an if statement that is always True by @cclauss in https://github.com/duckdb/duckdb/pull/15630 * Issue #15597: Temporal Error Messages by @hawkfish in https://github.com/duckdb/duckdb/pull/15635 * Parallel `union_by_name` for `read_json` by @lnkuiper in https://github.com/duckdb/duckdb/pull/15593 * [Tidy] create index info in static function for reusability by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15633 * [Arrow] Fix a bug related to ArrowArray lifetimes in the arrow scan code by @Tishj in https://github.com/duckdb/duckdb/pull/15632 * Not using Random Device in DuckDB Core by @pdet in https://github.com/duckdb/duckdb/pull/15540 * Initialize random_seed to silence warning on uninitialized variable by @carlopi in https://github.com/duckdb/duckdb/pull/15649 * Cleanup the GitHub Action for Python by @cclauss in https://github.com/duckdb/duckdb/pull/15643 * Added `weighted_avg` function using macro by @gropaul in https://github.com/duckdb/duckdb/pull/15616 * Skip tests, cleaning up known failures in CI by @carlopi in https://github.com/duckdb/duckdb/pull/15651 * Extension type modifier followup by @Maxxen in https://github.com/duckdb/duckdb/pull/15638 * Index scan on (dynamic) table filters by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15410 * Feature #12699: Windowed Aggregate Ordering by @hawkfish in https://github.com/duckdb/duckdb/pull/15634 * Make MemoryStream non-copyable by @Maxxen in https://github.com/duckdb/duckdb/pull/15656 * Implement `DELTA_LENGTH_BYTE_ARRAY` and `BYTE_STREAM_SPLIT` encodings for Parquet writer by @lnkuiper in https://github.com/duckdb/duckdb/pull/15653 * Arrow Extension Type to be registered in DuckDB Extensions by @pdet in https://github.com/duckdb/duckdb/pull/15285 * fix creating VARINT logical type in C API by @jraymakers in https://github.com/duckdb/duckdb/pull/15670 * Allow switching to a different catalog from a detached catalog by @jeewonhh in https://github.com/duckdb/duckdb/pull/15624 * Logging by @samansmink in https://github.com/duckdb/duckdb/pull/15119 * TableCatalogEntry instead of DuckTableEntry in TableScanBindData by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15668 * Throw on unknown logging_storage set by @carlopi in https://github.com/duckdb/duckdb/pull/15681 * Remove mention to not existing logging_disabled_thread_local.benchmark by @carlopi in https://github.com/duckdb/duckdb/pull/15680 * [Dev] Remove the `CompressionValidity::NO_VALIDITY_REQUIRED` from `Dictionary` by @Tishj in https://github.com/duckdb/duckdb/pull/15636 * [Dev] Fix wrong result reported by Roaring Compression `FinalAnalyze` by @Tishj in https://github.com/duckdb/duckdb/pull/15677 * Fix Python dictionary key is repeated by @cclauss in https://github.com/duckdb/duckdb/pull/15663 * Fix sign-compare compilation warning by @dentiny in https://github.com/duckdb/duckdb/pull/15672 * Deploy bundled static libraries for OSX arm64 and amd64 by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15682 * Varint to varchar optimization by @Damon07 in https://github.com/duckdb/duckdb/pull/15521 * Nightly Fixes by @pdet in https://github.com/duckdb/duckdb/pull/15690 * Reduce test size so CI is less likely to fail by @lnkuiper in https://github.com/duckdb/duckdb/pull/15689 * Clean up temporary test directory in `run_tests_one_by_one.py` even if test segfaults by @lnkuiper in https://github.com/duckdb/duckdb/pull/15688 * Late Materialization Optimizer by @Mytherin in https://github.com/duckdb/duckdb/pull/15692 * [Fix] Make next_batch_index atomic by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15699 * Add late_materialization_max_rows setting that allows you to configure the threshold at which late materialization is triggered by @Mytherin in https://github.com/duckdb/duckdb/pull/15697 * Default to BOOL on csv sniffer for files with only a header by @pdet in https://github.com/duckdb/duckdb/pull/15701 * DatabaseInstance's destructor: avoid throwing (and not cleaning up) by @carlopi in https://github.com/duckdb/duckdb/pull/15707 * Bugfixes by @lnkuiper in https://github.com/duckdb/duckdb/pull/15704 * Remove iceberg, again by @carlopi in https://github.com/duckdb/duckdb/pull/15716 * Allow shift-tab to be used to revert auto-complete suggestion, and implement SHOW [table] auto-completion by @Mytherin in https://github.com/duckdb/duckdb/pull/15708 * [Dev] Fix alignment issue in Roaring compression method by @Tishj in https://github.com/duckdb/duckdb/pull/15711 * Minor fixes by @Mytherin in https://github.com/duckdb/duckdb/pull/15715 * Move the DatabaseCacheEntry into the DBConfig, and set it before the constructor is called by @Mytherin in https://github.com/duckdb/duckdb/pull/15714 * Patching comparison operators in ICU to actually return bool by @hannes in https://github.com/duckdb/duckdb/pull/15700 * Preserve stack trace information when re-throwing by @NiclasHaderer in https://github.com/duckdb/duckdb/pull/15709 * [MultiFileReader] Extend support for column mapping from local -> global column by @Tishj in https://github.com/duckdb/duckdb/pull/15446 * Fix Arrow extension type Locks by @pdet in https://github.com/duckdb/duckdb/pull/15705 * Dont encode + on URL by @pdet in https://github.com/duckdb/duckdb/pull/15693 * Print an error when using "duckdb -f [file]" on a file that does not exist by @Mytherin in https://github.com/duckdb/duckdb/pull/15718 * Implement `parquet_version` parameter for Parquet writer by @lnkuiper in https://github.com/duckdb/duckdb/pull/15684 * [Testing] Temporarily skip tests by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15727 * Add NATIVE_ARCH option to compile using -march=native, and in the CLI time queries that are send through "-c" by @Mytherin in https://github.com/duckdb/duckdb/pull/15726 * Remove httpfs patch by @lnkuiper in https://github.com/duckdb/duckdb/pull/15729 * Fix #15659: VARCHAR parameters now count as STRING_LITERAL again by @Mytherin in https://github.com/duckdb/duckdb/pull/15724 * Parquet reader: fix for filter on file_row_number column by @Mytherin in https://github.com/duckdb/duckdb/pull/15736 * Scan validity from dictionary vectors directly, and skip scanning validity when we encounter a dictionary vector by @Mytherin in https://github.com/duckdb/duckdb/pull/15737 * Make entries field non-nullable for Arrow map type by @samansmink in https://github.com/duckdb/duckdb/pull/15733 * Properly set `external` flag again in `RadixPartitionedHashTable` by @lnkuiper in https://github.com/duckdb/duckdb/pull/15728 * Storage version 65 by @carlopi in https://github.com/duckdb/duckdb/pull/15702 * Enable index scan for dynamic IN filter by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15665 * Ignore pushes to version branches by @Mytherin in https://github.com/duckdb/duckdb/pull/15743 * Move changes in v1.2 to main by @Mytherin in https://github.com/duckdb/duckdb/pull/15744 * Initialize create_index_info.catalog by @philippmd in https://github.com/duckdb/duckdb/pull/15738 * Feature #15717: Window GROUPS by @hawkfish in https://github.com/duckdb/duckdb/pull/15739 * Fetch only required columns in physical delete by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15746 * Add duckdb secret types function by @samansmink in https://github.com/duckdb/duckdb/pull/15564 * First round of extension bumps by @Maxxen in https://github.com/duckdb/duckdb/pull/15655 * Move core_functions to use unity builds by @Mytherin in https://github.com/duckdb/duckdb/pull/15753 * Add `disabled_compression_methods` setting that can be used to disable certain compression methods by @Mytherin in https://github.com/duckdb/duckdb/pull/15754 * Add support for deserializing a list of SetOperations in the SetOperationNode by @Mytherin in https://github.com/duckdb/duckdb/pull/15755 * Feature #15717: Window GROUPS by @hawkfish in https://github.com/duckdb/duckdb/pull/15761 * Check for mark join indexes in aggregate and group by by @Tmonster in https://github.com/duckdb/duckdb/pull/15691 * Default end of binding to varchar and not bool in CSV Reader by @pdet in https://github.com/duckdb/duckdb/pull/15747 * If arrow extension is not registered, use format information instead of failing by @pdet in https://github.com/duckdb/duckdb/pull/15749 * Merge 1.2 into main by @Mytherin in https://github.com/duckdb/duckdb/pull/15769 * Fix CI for Linux Release Building by @hannes in https://github.com/duckdb/duckdb/pull/15748 * Merge changes in main into v1.2 by @Mytherin in https://github.com/duckdb/duckdb/pull/15770 * When loading LogicalDependency from a database file or WAL file, modify the catalog to the catalog that we are loading into by @Mytherin in https://github.com/duckdb/duckdb/pull/15767 * Fix minor DuckDB-Wasm problem with stacktraces, that would be shown twice by @carlopi in https://github.com/duckdb/duckdb/pull/15765 * Move the instance cache entry when configuring by @Mytherin in https://github.com/duckdb/duckdb/pull/15768 * nitpick: Sequence Scan -> Sequential Scan by @Mytherin in https://github.com/duckdb/duckdb/pull/15772 * Bundle MingW static library with the default extension configuration by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15774 * [Fix] Fix truncate + FK internal exception and another index bug by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15771 * Switch logging to macros by @samansmink in https://github.com/duckdb/duckdb/pull/15751 * Add back Iceberg extension by @carlopi in https://github.com/duckdb/duckdb/pull/15780 * Internal #4002: SQLite EXCLUDE Tests by @hawkfish in https://github.com/duckdb/duckdb/pull/15785 * Skip 3 tests, to be reviewed on a side by @carlopi in https://github.com/duckdb/duckdb/pull/15790 * Add MD to autoload list by @Mytherin in https://github.com/duckdb/duckdb/pull/15797 * Connection manager: make count available without a lock by keeping track of it with an atomic by @Mytherin in https://github.com/duckdb/duckdb/pull/15798 * Add `STORAGE_VERSION` option that allows you to specify the target storage version when serializing a database by @Mytherin in https://github.com/duckdb/duckdb/pull/15794 * Fix some memory/storage issues in CI by @lnkuiper in https://github.com/duckdb/duckdb/pull/15795 * Fix map_extract backwards compatability by @Maxxen in https://github.com/duckdb/duckdb/pull/15799 * Fixes for vsize=2 tests by @Mytherin in https://github.com/duckdb/duckdb/pull/15809 * Fix tests for storage 65 by @carlopi in https://github.com/duckdb/duckdb/pull/15807 * Enable tests using no_alternative_verify by @ywelsch in https://github.com/duckdb/duckdb/pull/15806 * V1.2 histrionicus by @Mytherin in https://github.com/duckdb/duckdb/pull/15812 * Fix dependency conflict in PK FK benchmark by @taniabogatsch in https://github.com/duckdb/duckdb/pull/15800 * Remove shuffle from sampling by @Tmonster in https://github.com/duckdb/duckdb/pull/15703 * bump inet by @Maxxen in https://github.com/duckdb/duckdb/pull/15804 * Fix `map_inference_threshold` issue in JSON reader by @lnkuiper in https://github.com/duckdb/duckdb/pull/15802 * [CI] Invert operations for Linux CLI: first deploy, then test by @carlopi in https://github.com/duckdb/duckdb/pull/15820 * Fixup shell & autocomplete versioning information by @carlopi in https://github.com/duckdb/duckdb/pull/15823 * Skip end of test/sql/storage/parallel/insert_many_compressible_batches.test_slow by @carlopi in https://github.com/duckdb/duckdb/pull/15814 * Attempted parquet warning fix by @Mytherin in https://github.com/duckdb/duckdb/pull/15827 * Issue #15758: Streaming LEAD Buffering by @hawkfish in https://github.com/duckdb/duckdb/pull/15834 * Removing all core code and CI related to the substrait extension by @pdet in https://github.com/duckdb/duckdb/pull/15810 * CSV AFL Tests by @pdet in https://github.com/duckdb/duckdb/pull/15805 * improve error messages for mismatching versions of extensions by @samansmink in https://github.com/duckdb/duckdb/pull/15829 * dbgen: correctly join threads in case an error is thrown while generating data in parallel by @Mytherin in https://github.com/duckdb/duckdb/pull/15840 * Do not change type of empty files, if the types were manually set by @pdet in https://github.com/duckdb/duckdb/pull/15841 * Fix #15760 - when a SQL value function conflicts with an alias in the WHERE clause, prefer the alias by @Mytherin in https://github.com/duckdb/duckdb/pull/15842 * Fix #15570: preserve alias when using bind_replace in table functions by @Mytherin in https://github.com/duckdb/duckdb/pull/15843 * Fix CAPI chunk tests by @pdet in https://github.com/duckdb/duckdb/pull/15846 * fix: Fix compiler warning for uninitialized access by @krlmlr in https://github.com/duckdb/duckdb/pull/15849 * Relax RFC_4180=False a bit more flexible by @pdet in https://github.com/duckdb/duckdb/pull/15832 * More lenient test limits by @Mytherin in https://github.com/duckdb/duckdb/pull/15845 * bump delta, remove patches by @samansmink in https://github.com/duckdb/duckdb/pull/15824 * enable autoloading for iceberg and delta for storage by @samansmink in https://github.com/duckdb/duckdb/pull/15822 * Fix get_current_time, today, current_date backwards compatibility by @Maxxen in https://github.com/duckdb/duckdb/pull/15803 * Reset buffer before allocating a new one in `ResizableBuffer` by @lnkuiper in https://github.com/duckdb/duckdb/pull/15838 * V1.2 histrionicus by @Mytherin in https://github.com/duckdb/duckdb/pull/15851 * [tpch] dbgen: Avoid throwing interrupt that can't be caught by @carlopi in https://github.com/duckdb/duckdb/pull/15856 * Add CI run testing also slow tests on PRs by @carlopi in https://github.com/duckdb/duckdb/pull/15854 * More memory for external aggregate test by @Mytherin in https://github.com/duckdb/duckdb/pull/15861 * Fixes for nightly tests related to the CSV Parser by @pdet in https://github.com/duckdb/duckdb/pull/15855 * Fix latest storage tests CI by @Mytherin in https://github.com/duckdb/duckdb/pull/15863 * Fix duckdb_extensions() listing by @carlopi in https://github.com/duckdb/duckdb/pull/15858 * Use const T& and T instead of const T&& and T&& in (de)serializer by @Mytherin in https://github.com/duckdb/duckdb/pull/15866 * Make tests more lenient for smaller block sizes by @Mytherin in https://github.com/duckdb/duckdb/pull/15872 * Remove default in MultiFileReaderColumnDefinition constructor by @Mytherin in https://github.com/duckdb/duckdb/pull/15871 * Fix spurious test/sql/copy/partitioned/partitioned_write_tpch.test_slow:53 error by @pdet in https://github.com/duckdb/duckdb/pull/15869 * BindLogicalType should return a new type, instead of modifying an existing type in-place by @Mytherin in https://github.com/duckdb/duckdb/pull/15868 * V1.2 histrionicus by @Mytherin in https://github.com/duckdb/duckdb/pull/15875 * Issue #15877: CUME_DIST Moving Frame by @hawkfish in https://github.com/duckdb/duckdb/pull/15878 * Nightly CI fixes by @Mytherin in https://github.com/duckdb/duckdb/pull/15885 * Disable the RealNest benchmark nightly by @hmeriann in https://github.com/duckdb/duckdb/pull/15839 * disable iceberg tests by @samansmink in https://github.com/duckdb/duckdb/pull/15883 * [Linux CI] Remove examples, already tested as part of OSX Release by @carlopi in https://github.com/duckdb/duckdb/pull/15879 * Fix fuzzer issue found by the DuckFuzzer by @pdet in https://github.com/duckdb/duckdb/pull/15886 * Avoid unnecessarily reading the string dictionary size when scanning uncompressed strings by @Mytherin in https://github.com/duckdb/duckdb/pull/15887 * GCC-4.8 fixes by @Mytherin in https://github.com/duckdb/duckdb/pull/15884 * Several nightly CI fixes by @Mytherin in https://github.com/duckdb/duckdb/pull/15889 * Merge main into v1.2 by @Mytherin in https://github.com/duckdb/duckdb/pull/15895 * When Deserializing, Sample Selection Vectors should be initialized to `FIXED_SAMPLE_SIZE` by @Tmonster in https://github.com/duckdb/duckdb/pull/15890 * Faster re-builds by @hannes in https://github.com/duckdb/duckdb/pull/15891 * Add missing ExpressionType::COMPARE_NOTEQUAL no arrow pushdown by @pdet in https://github.com/duckdb/duckdb/pull/15892 * Fix race/deadlock in `FixedSizebuffer::Get()` by @Maxxen in https://github.com/duckdb/duckdb/pull/15893 * Call ProcessError also for PendingQueries by @carlopi in https://github.com/duckdb/duckdb/pull/15899 * Removed unused variable in LoggingContext by @NiclasHaderer in https://github.com/duckdb/duckdb/pull/15898 * CI: Handle 'fixed on nightly' label by @szarnyasg in https://github.com/duckdb/duckdb/pull/15900 * CheckMagicBytes: zero initialise buffer by @carlopi in https://github.com/duckdb/duckdb/pull/15902 * Rename RFC_4180 to STRICT_MODE. Change default to true. Use the same option in the sniffer as the parser. by @pdet in https://github.com/duckdb/duckdb/pull/15896 * Fix Arrow Type Registration on Extensions by @pdet in https://github.com/duckdb/duckdb/pull/15901 * V1.2 histrionicus by @Mytherin in https://github.com/duckdb/duckdb/pull/15909 * Use Arrow extension GetType() implementation when converting Arrow arrays by @paleolimbot in https://github.com/duckdb/duckdb/pull/15813 **Full Changelog**: https://github.com/duckdb/duckdb/compare/v1.1.3...v1.2.0