Subject: CVS commit: pkgsrc/databases/duckdb
From: Ryo ONODERA
Date: 2024-06-05 20:22:39
Message id: 20240605182239.5F8BCFC74@cvs.NetBSD.org

Log Message:
databases/duckdb: Update to 1.0.0

Changelog:
DuckDB 1.0.0 "Nivis"
What's Changed

  * Fix move constants optimization by @gitccl in #12189
  * FALLOC_FL_PUNCH_HOLE requires GLIBC 2.18 or above - check for this using an
    #ifdef by @Mytherin in #12193
  * Fix cmake install for shared_ptr headers by @carlopi in #12194
  * Fix minor warnings by @carlopi in #12195
  * Install .ipp files in addition to the usual .hpp files by @smonkewitz in #
    12198
  * Set a default value to the connection param in stubs by @tm-drtina in #
    12207
  * Fix #12190: add SYSTEM to set of reserved database names by @Mytherin in #
    12206
  * Add enable_view_dependencies which defaults to false by @Tishj in #12209
  * [Python] Fix replacement scans incorrectly finding duckdb connection method
    objects by @Tishj in #12208
  * [CI] Diff against the right remote + branch in Regressions.yml - Regression
    Test new micro benchmark by @Tishj in #12106
  * [Python] Fix bug where enable_external_access was not being respected by
    the replacement scan by @Tishj in #12224
  * Remove outdated CI for extensions, check duckdb/extension-ci-tools by
    @carlopi in #12229
  * Python: Avoid packaging for both 3.7 on OSX and MacOS 11 by @carlopi in #
    12236
  * Issue #12215: AsOf Predicate Pushdown by @hawkfish in #12238
  * [DependencyManager] Don't block ADD COLUMN statements if there are
    dependencies. by @Tishj in #12226
  * [Python] Add check for 'params' to table_function by @Tishj in #12233
  * Extension installing/updateing fixes by @samansmink in #12221
  * Move excel extension out of tree by @carlopi in #12123
  * Fix #12225: revert OVERWRITE_OR_IGNORE to previous behavior, move new
    behavior to OVERWRITE flag by @Mytherin in #12240
  * Fix warning on unannotated fallthrough by @carlopi in #12244
  * Fixup staged uploads /3 by @carlopi in #12245
  * [Python] fix build when BUILD_HTTPFS set by @paparodeo in #12223
  * Use --always option of git describe for extension tags. by @carlopi in #
    12253
  * [Docs] Fix up examples/python/duckdb-python.py by @Tishj in #12255
  * [Fix] Skip lazy WAL creation test for alternative verification by
    @taniabogatsch in #12258
  * add missing virtual destructor by @samansmink in #12266
  * Add storage callbacks for checkpoint start and end by @bleskes in #12260
  * Do not prefix error messages with an unknown type by @bleskes in #12265
  * Fix minor duckdb_extensions table function bug by @samansmink in #12269
  * C API: Adding deprecation and move notices to duckdb.h and a test case by
    @hannes in #12259
  * Issue #12252: APPROX_QUANTILE Array Argument by @hawkfish in #12271
  * Turn InternalException into NotImplementedException in COPY FROM DATABASE
    by @Mytherin in #12264
  * Add descriptions for vss and delta extensions by @carlopi in #12267
  * [C-API] Properly handle exceptions caused by name collisions in
    duckdb_register_table_function by @Tishj in #12257
  * Fix for multifilereader extra_columns feature by @samansmink in #12281
  * Add enable_macro_dependencies which defaults to false by @Mytherin in #
    12291

v0.10.3 Bugfix Release
Highlights

Even though this is "only" a bug fix release, there have been some \ 
major areas
of work that warrant a separate mention:

  * We have added a feature to update extensions using the UPDATE EXTENSIONS
    syntax #11677
  * There have been some serious internal improvements around checkpointing,
    most notably, checkpoints can run while other connections are reading, and
    no longer block new connections while checkpointing #11918. Also, FORCE
    CHECKPOINT no longer actively cancels transactions, it now waits until it
    can checkpoint #12061
  * DuckDB now has native support to load data from HuggingFace using the hf://
    prefix #11831
  * We have slightly changed NULL casting behaviour with the MAP type #11745
  * The Java JDBC driver has been moved to its own repo: https://github.com/
    duckdb/duckdb-java #11873
  * DuckDB now cleanly compiles with -Wconversion and all conversions are
    actually being checked #11716, #11673

What's Changed

  * Add setting to control the maximum swap space by @Tishj in #10978
  * [Python][Dev] Dynamically generate the Connection wrapper methods by @Tishj
    in #11202
  * Fixes duckdb wasm by @carlopi in #11688
  * Checked conversions between signed and unsigned integers by @hannes in #
    11673
  * Bump Julia to v0.10.2 by @Mytherin in #11700
  * Minor improvements to sql_reduce script by @Mytherin in #11701
  * Properly avoid build-time dependency on Python by @carlopi in #11713
  * Test dockerized compilation in Alpine:latest and Ubuntu:20.04 by @carlopi
    in #11708
  * [COPY CSV] Enable TIMESTAMP_TZ formats by @Tishj in #11711
  * Full conversion warnings / checks by @hannes in #11716
  * [Safety] Add safety checks to shared_ptr access by @Tishj in #11696
  * Remove bound_defaults from BoundCreateTableInfo by @Mytherin in #11721
  * Improve mkdir error reporting by @Mytherin in #11723
  * [Dev] Fix failing CI in Python SQLLogicTest Runner by @Tishj in #11724
  * More docker tests, fix compilation up to C++23 standard by @carlopi in #
    11725
  * Upload staging: from 'git describe --tags' to 'git log -1' by @carlopi in #
    11715
  * Internal #1848: Window Progress by @hawkfish in #11702
  * Remove BoundConstraint from the TableCatalogEntry by @Mytherin in #11735
  * Implicit Cast for any Date/Timestamp by @pdet in #11733
  * feat: rewrite which_secret() into a table function by @stephaniewang526 in
    #11726
  * [Map] Rework MAP creation method behavior when input is NULL by @Tishj in #
    11730
  * [Dev] Always use SQLStatement->Copy() when ALTERNATIVE_VERIFY is defined by
    @Tishj in #11732
  * Reconstruct Error Messages for Flush Cast by @pdet in #11736
  * Getting Rid of Value.TryCast in the CSV Sniffer by @pdet in #11717
  * Fix Join order optimizer so that plan generation is always via the most
    current entry in the DP table. by @Tmonster in #11719
  * fix(py): support DuckDBPyType#children for array and enum by @Mause in #
    11754
  * Consider not null values when doing export database by @pdet in #11679
  * Add missing space in error message by @szarnyasg in #11759
  * Allow to build python packages without c++ sources by @carlopi in #11758
  * No Mark to Semi join conversion in statistics propagation by @Tmonster in #
    11596
  * Hive partitioned write: lazy partitioning initialization by @Mytherin in #
    11765
  * Hive partitioning: avoid calling CreateDirectories for every flush, instead
    create the directory for a partition only when that partition is
    instantiated by @Mytherin in #11777
  * [Parquet] Support reading the non-standard NULL ConvertedType by @Tishj in
    #11774
  * Only store CSV Errors if we are doing rejects table, otherwise just ignore
    it. by @pdet in #11763
  * CI: Add job for 'expected behavior' label by @szarnyasg in #11784
  * Move recursive_query_csv.test to slow test by @pdet in #11770
  * [StatementVerifier] Fix up issues in ToString implementations of classes
    derived from SQLStatement by @Tishj in #11625
  * Hive partitioning: make OVERWRITE_OR_IGNORE remove files on local file
    systems by @Mytherin in #11787
  * [ODBC] Add ODBC Test for Database Reconnection and Data Persistence by
    @maiadegraaf in #11783
  * Correctly parse dollar-quoted strings in sqlite3_complete and linenoise by
    @Mytherin in #11789
  * Add a configurable compression_level parameter to the parquet writer by
    @Mytherin in #11791
  * Close file after file lock failure by @awitten1 in #11795
  * Python: Add missing options to write_parquet by @jzavala-gonzalez in #11790
  * [PythonDev] Fix up failing tests in CI by @Tishj in #11801
  * Fix static bitpacking_width_t FindMinimumBitWidth(T *values, idx_t count)
    in class BitpackingPrimitives by @Lloyd-Pottiger in #11757
  * Add note on CMAKE_BUILD_PARALLEL_LEVEL by @mlafeldt in #11808
  * Elaborate on internal errors by @szarnyasg in #11816
  * Fix #11756: Don't throw exception on CREATE UNIQUE INDEX IF NOT EXISTS if
    index already exists by @ewencp in #11821
  * Python CI fixes: skip two tests by @carlopi in #11818
  * Fix #11798 - lateral join parameters should not be visible in views by
    @Mytherin in #11825
  * Fix #11804: make sure json_type can check null by @lnkuiper in #11807
  * Fixing performance regression in [u]hugeint cast by @hannes in #11829
  * [Dev] ClientContextWrapper yak shaving by @Tishj in #11830
  * [Python] Add checkpoint method, improve shutdown experience by @Tishj in #
    11810
  * [Benchmark] Enable benchmarking result collection by @Tishj in #11529
  * [DependencyManager] Create dependencies between foreign key tables and
    primary key tables. by @Tishj in #11524
  * [Python] Synchronize defaults of DuckDBPyRelation method fetch_df_chunk by
    @Tishj in #11834
  * Internal #1888 TIMETZ Collation Keys by @hawkfish in #11861
  * Removing old code that used to check if a buffer was the last buffer from
    the file handler by @pdet in #11846
  * Use ToSQLString() in ConstantFilter for escaped filter output by @rcurtin
    in #11797
  * [StatementVerifier] Add ToString for every remaining SQLStatement, is pure
    virtual now by @Tishj in #11788
  * Pushdown Tables Types to CSV Scanner by @pdet in #11792
  * [Python Dev] Fix shift between requirements-dev.txt and pyproject.toml
    before-test section by @Tishj in #11863
  * Join order optimizer asan bug Follow up by @Tmonster in #11794
  * BugFix: Introducing Introducing Delim Joins and Delim_Get(s) should respect
    positionally by @Tmonster in #11812
  * Provide the native OID of PG type in pg_type by @goldmedal in #11746
  * Move JDBC (Java) Driver to Separate Repo by @hannes in #11873
  * Link Java client in issue template by @szarnyasg in #11877
  * Change specificity of sniffed types to check time related types earlier by
    @pdet in #11878
  * fix complex top n test case for constant vector verification by @Tmonster
    in #11882
  * [Dev] Merge overloads for HUGEINT cast functions by @Tishj in #11879
  * Make " default for quote and " default for escape by @pdet in #11880
  * Set secret directory to a test directory when running sqllogictest by
    @Mytherin in #11885
  * Bugfixes by @lnkuiper in #11785
  * [Map] Rework interaction (entries, keys, values, extract) of NULL MAPs by
    @Tishj in #11745
  * Add case when expression for grouping sets when collations are used. by
    @Tmonster in #11884
  * Internal #11892: Interval Quarter Keyword by @hawkfish in #11898
  * HTTP Logging by @lnkuiper in #11771
  * [Dev] Use strings in the SQLLogicTest REQUIRE calls so they are visible
    with -s by @Tishj in #11714
  * [Dev] Fix a SerializationException on CopyInfo by @Tishj in #11902
  * MultiFileReader refactor by @samansmink in #11806
  * Allow checkpoints to run while other connections are reading, and no longer
    block new connections while checkpointing by @Mytherin in #11918
  * Allow converting TIMETZ to Arrow by @LoganDark in #11906
  * Issue #11894: MIN/MAX_BY DECIMAL Casting by @hawkfish in #11912
  * Issue #1917: WinNode 22 Compilation by @hawkfish in #11913
  * [Relation] Add MaterializedRelation by @Tishj in #11835
  * Enable purging of BufferPool pages based on time-since-last-unpinned by
    @jkub in #11441
  * Correctly render duckbox for empty results by @Mytherin in #11920
  * Always store transactions that had errors during the commit phase by
    @Mytherin in #11929
  * More anonymous struct zapping in RE2 by @hannes in #11956
  * Add the corrupt block location to the exception by @Vegetable26 in #11966
  * Fix assertion in bitpacking by @nickgerrets in #11955
  * [Python] Add CoalesceOperator to Python Expression API. by @Tishj in #11941
  * CMake: Handle git failures on invalid inputs better by @carlopi in #11951
  * Internal #2005: DISTINCT ORDER BY by @hawkfish in #11967
  * Fix overlooked function argument rename that leads to seg faults. by
    @smonkewitz in #11969
  * [Nightly] Block size test fixes by @taniabogatsch in #11972
  * Optimizing InsertionSort by reducing the size of the comparison by @gitccl
    in #11964
  * [Python] Keep referenced Python objects alive by @Tishj in #11761
  * Move mysql_scanner into main duckdb CI by @carlopi in #11999
  * Fix CURRENT_SETTING with a NULL string arg by @gitccl in #12015
  * Issue #12009: APPROX_QUANTILE NULL List by @hawkfish in #12014
  * Issue #12003: TIMESTAMP Stack Overflow by @hawkfish in #12012
  * fix extension load error message grammar by @softprops in #11994
  * [Python] Fix InternalException from scanning Polars DF with no columns by
    @Tishj in #11982
  * Issue #11959: TIMESTAMPTZ >= DATE by @hawkfish in #11987
  * More fixes for RE2 to pass CRAN tests by @hannes in #11978
  * chore: update exception message by @stephaniewang526 in #11965
  * Issue #12005: RESERVOIR_QUANTILE DECIMAL Binding by @hawkfish in #12013
  * [Python] Grab the GIL in the destructor of PyFilesystem by @Tishj in #11980
  * [Python] Make the NumPy module optional, not throwing if it's not installed
    by @Tishj in #11981
  * Add support for HuggingFace to httpfs by @samansmink in #11831
  * [Fix] lambda binding in ALTER TABLE statements by @taniabogatsch in #11976
  * Distinguish between exact and case insensitive matching JSON keys in
    json_structure by @lnkuiper in #11948
  * Rework index binding by @Maxxen in #11867
  * Issue #11995: TIMESTAMP Rounding by @hawkfish in #12011
  * Fix sample serialization by @Tmonster in #12025
  * Correctly skipping errors when ignore_errors is set and we have columns
    with escaped values by @pdet in #12027
  * Update comment to reflect correct data state post-compression by @wangxuqi
    in #12022
  * Fix ordering issue with nested list type by @gitccl in #11937
  * Adding Fix to properly pass timestamp/date formats in the relational API
    for CSV Files by @pdet in #12029
  * Add more MultiFilereader features/hooks by @samansmink in #11984
  * Rethrow serialization errors by @carlopi in #12030
  * Move yyjson into core by @Maxxen in #11998
  * Bugfixes + large allocation hardening by @Maxxen in #12028
  * Ensure HT capacity is greater than lower bound by @lnkuiper in #12039
  * Fix materialized CTE plan issue by @kryonix in #11874
  * Fix some fuzzer issues by @hannes in #12043
  * [Fix] Return NULL for deprecated getter calls in the C API by
    @taniabogatsch in #12035
  * Grab checkpoint lock during storage metadata reads by @Mytherin in #12053
  * Issue #12041: TIMETZ Parquet Nanoseconds by @hawkfish in #12052
  * Parquet: Correctly return min/max string stats if empty by @lnkuiper in #
    12054
  * Even more fuzzer fixes by @Maxxen in #12050
  * [Fix] Silent constraint violation error when destroying the appender in the
    C API by @taniabogatsch in #12051
  * Add "Tags" support to catalog entries by @Maxxen in #12044
  * Rework FORCE CHECKPOINT - instead of actively cancelling transactions it
    now blocks until it can checkpoint by @Mytherin in #12061
  * Aggregation bugfixes by @lnkuiper in #12055
  * [Fix] Disable test for block size nightly run by @taniabogatsch in #12062
  * Bind art index in local storage by @Maxxen in #12064
  * Cast keys to VARCHAR before creating JSON from MAP by @lnkuiper in #12065
  * [Python] Add pyspark hash and organize unit tests by @mariotaddeucci in #
    11935
  * Check context.interrupted during force checkpoint by @Mytherin in #12068
  * [Fix] Lazy WAL creation by @taniabogatsch in #12049
  * Test docker images: improvement and connected fixes by @carlopi in #12026
  * More fuzzer fixes by @hannes in #12045
  * [Python] Add pyspark null functions by @mariotaddeucci in #11940
  * CI fixes: unused variable & toolchain version by @carlopi in #12083
  * Add autoloading for delta extension by @samansmink in #12063
  * S3FileHandle Destructor should call Close() conditionally by @onderkalaci
    in #12031
  * [Fix] Internal segment tree exception in on conflict clause by
    @taniabogatsch in #12084
  * Remove ClientContext usage in Checkpoint Reader by @Mytherin in #12076
  * Fixed Parquet crash on missing dictionary by @hannes in #12085
  * [Fix] Add lambda binding to the HAVING binder by @taniabogatsch in #12070
  * Decimal/Time implicit casting + Multi-Error store in Flush by @pdet in #
    11848
  * [Testing Infra Fix] Make input data chunks immutable in the vector
    verification tests by @taniabogatsch in #12088
  * Correctly rewrite correlated columns inside window functions by @Mytherin
    in #12087
  * Fix #11780 - handle qualifications in ORDER BY of ARRAY clause by @Mytherin
    in #12090
  * Nightly CI fixes by @Mytherin in #12093
  * Change ExtensionOptimizer input by @Maxxen in #12094
  * Fix for issue related to the execution of union by all from .sql in Python
    by @pdet in #12098
  * yyjson bump version to 2020 by @carlopi in #12072
  * [Dev] Collect CatalogEntry Dependencies during Binding by @Tishj in #11493
  * Internal #2040: ICU Collation Serialisation by @hawkfish in #12077
  * Run python tests in Pyodide build by @cpcloud in #11914
  * Add support for type modifiers on extension types by @Maxxen in #12081
  * Bump extensions by @carlopi in #12107
  * fix huggingface credential_chain autoload issue by @samansmink in #12112
  * Fix fuzzer issue 2690 by @lnkuiper in #12108
  * Throw exception in case of WAL failure instead of only printing a message
    by @Mytherin in #12091
  * Change type of columns from sniff_csv to list of structs by @pdet in #12099
  * [Python][Dev] Skip statements with decorators (only if, skip if) in the
    Python SQLLogicTester by @Tishj in #12102
  * Mark unspecialized C++ Append template as delete by @j1ah0ng in #12116
  * SQLLogicTest - skip these tests now that we have dependencies between views
    by @Mytherin in #12118
  * Correctly determine if we need to scan flat vectors in all cases - and add
    an enum to clarify code by @Mytherin in #12119
  * Avoid signed integer overflow in sequence generation by @Mytherin in #12120
  * Use Binder::BindCreateTableCheckpoint in WAL ReplayCreateTable by @Mytherin
    in #12121
  * Avoid checking if wal is set directly and call GetWALSize instead - a WAL
    might be present even if wal is not set by @Mytherin in #12124
  * Call StringVector::AddString here for when inlining is disabled by
    @Mytherin in #12125
  * Minor fixes for vsize=2 tests by @Mytherin in #12126
  * Internal #2078: Nested Nulls First by @hawkfish in #12131
  * Bump extensions, part 2 by @carlopi in #12122
  * Internal #2081: Window Distinct Reset by @hawkfish in #12130
  * Read scan count once instead of once per vector to avoid issue where scan
    counts between vectors could become mis-aligned in concurrent scenarios by
    @Mytherin in #12135
  * Extension Updating by @samansmink in #11677
  * Move pyodide from repository_dispatch to NightlyTests.yml by @carlopi in #
    12153
  * [Storage] Add storage_compatibility_version to control for what version the
    DB has to be serialized. by @Tishj in #12110
  * Allow quotes to be escaped in JSON path by @lnkuiper in #12033
  * [Python] Fix issue in the SQLLogicTestRunner implementation by @Tishj in #
    12155
  * Higher memory limit for test by @lnkuiper in #12158
  * Fix internal error of list_zip and map_concat by @gitccl in #12086
  * fix row format of arrays larger than vector size with null by @Maxxen in #
    12143
  * Issue #12136: Streaming Window Structs by @hawkfish in #12150
  * Set max vector size to 128GB instead of 4GB by @Mytherin in #12144
  * Pass prepared statement parameters to OnExecutePrepared callback by
    @Mytherin in #12156
  * In string to list try_cast - set the target index to NULL, not the source
    index by @Mytherin in #12160
  * More Nightly CI Fixes by @Mytherin in #12154
  * Fixing unchecked malloc() calls in Parser and elsewhere by @hannes in #
    12162
  * Modify the pandas analyzer code to always respect the sample size by @pdet
    in #12097
  * Allow community extensions: add setting and keys by @carlopi in #12152
  * Fixing parquet dictionary / data page offset bug by @hannes in #12109
  * small fix to extension origin checks and direct installing over http by
    @samansmink in #12165
  * [DependencyManager] Provide details in case of a DROP statement that needs
    CASCADE. by @Tishj in #12159
  * Remove UnsafeNumericCast in create_sort_key by @Mytherin in #12168
  * [Dev] enable_verification now serializes for compatibility version 'latest'
    by @Tishj in #12157
  * [Relation] Disable creating a VIEW from a MaterializedRelation by @Tishj in
    #12163
  * Move community keys to proper values by @carlopi in #12175
  * Remove release assertions timeout by @Mytherin in #12176
  * Internal #2095: Streaming Window Structs by @hawkfish in #12173
  * [CSV Reader] Bug-fix related to skip parameter over vector size in the
    sniffer by @pdet in #12167
  * Expression rewrite filter pushdown for dates by @Tmonster in #12056
  * [Python] Throw if replacement scan is attempted on cross-connection
    DuckDBPyRelation by @Tishj in #12169
  * [Fix] Correctly allocate the ARRAY target child vector in a MAP function by
    @taniabogatsch in #12111
  * Remove java from CI invoker by @hannes in #12182
  * Mark correct database as modified in CreateIndex by @Mytherin in #12183

v0.10.2 Bugfix Release
SQL Modifications

This release has a number of bug fixes that change SQL semantics in a few edge
cases:

  * Nested Boolean Comparisons now have consistent NULL comparison semantics -
    #11496
  * Structs with non-matching keys require explicit casts when compared or
    combined - #11396

What's Changed

  * Bump julia version & fix release script for sub-versions > 9 by @Mytherin
    in #11225
  * Flatten Rewrite by @maiadegraaf in #11223
  * ORDER BY ColumnNumber with Collations by @tiagokepe in #11139
  * Fix differences to implementation for to_parquet, write_parquet, to_csv,
    write_csv, Expression.alias, DuckDBPyRelation.map by @binste in #11135
  * Issue template: Ask for MWEs by @szarnyasg in #11192
  * Cleaning up FSST: Remove unused AVX512 code by @hannes in #11222
  * Fix #11211 - correctly fill in string_t padding for bit type by @Mytherin
    in #11231
  * Fix #3391: Stop creating background threads if the thread constructor
    throws an exception by @Mytherin in #11236
  * R_CMD_CHECK: Pin to duckdb/duckdb-r 0ed106a71c by @carlopi in #11245
  * Add support for HEX(BLOB) by @Mytherin in #11243
  * Remove no_vector_verification in Map Subscript Test by @maiadegraaf in #
    11242
  * Update logos in README by @szarnyasg in #11256
  * Ignore user defined parameters that change names or types of csv columns in
    sniffer's prompt. by @pdet in #11257
  * [Python] Fix error caused by looking up a TypeCatalogEntry without an
    active transaction. by @Tishj in #11255
  * [Fix] Fuzzer issue in list_select by @taniabogatsch in #11248
  * [Parquet] Support for LZ4 Compression by @hannes in #11220
  * Fix #11254: Add missing includes to terminal by @Mytherin in #11265
  * Issue #10867: AsOf Predicate Pushdown by @hawkfish in #11233
  * Fix plan cost runner regression script by @Tmonster in #11129
  * Check if we need to throw any remaining errors at end of CSV scanning by
    @pdet in #11276
  * Allow duplicate names in json objects when ignore_errors is true by
    @lnkuiper in #11271
  * Do not surround JSON with quotes in sqlite shell output by @lnkuiper in #
    11268
  * add TRIM support to virtual filesystem, and implementation on linux by
    @jkub in #11258
  * Perform direct write operation if input data are larger than buffer size by
    @quentingodeau in #11203
  * Fuzzer fixes by @lnkuiper in #11286
  * Compile spatial also for rtools by @carlopi in #11291
  * allow injecting custom BufferManager implementation by @jkub in #11215
  * Default to RECORDS in JSON reader if more than one column is specified by
    @lnkuiper in #11295
  * Add support for materialized CTEs in INSERT/UPDATE/DELETE statements by
    @kryonix in #10878
  * Only throw exception if je_mallctl fails in DEBUG mode by @lnkuiper in #
    11303
  * Fixing casting issue in generators by @hannes in #11304
  * Rework FileSystem::OpenFile call, and add FILE_FLAGS_NULL_IF_NOT_EXISTS by
    @Mytherin in #11297
  * Fix potential UB when list() aggregate is used in combination with other
    arena using aggregate functions by @Maxxen in #11306
  * Fix #11293 - for ARRAY([subquery]) explicitly push the ORDER BY of the
    underlying subquery into the array aggregate by @Mytherin in #11316
  * Fix #11281: explicitly select column types of information_schema tables for
    all columns, even if they are always NULL by @Mytherin in #11317
  * Fixup py upload by @carlopi in #11308
  * Issue #11279: TIMESTAMP => TIMESTAMPTZ by @hawkfish in #11320
  * Fix null pointer exception when rolling back updates if the rollback was
    caused by an OOM by @Mytherin in #11309
  * Fix #11283 - report consistent foreign key constraint name in
    information_schema by @Mytherin in #11318
  * Fix #11294 - avoid applying Filter Pushdown optimization for UNION/EXCEPT
    without ALL by @Mytherin in #11315
  * Fix #10695 - handle ? prepared statement parameters correctly for POSITION
    (x IN y) by @Mytherin in #11314
  * Windows CLI - emit UTF8 directly using SetConsoleOutputCP(CP_UTF8) if
    possible by @Mytherin in #11324
  * Fix #11319: use modulo when computing day of the week in excel extension by
    @Mytherin in #11328
  * [CI] Fix bash syntax in TwineUpload by @carlopi in #11333
  * Fix #11284: avoid adding the same column multiple times to a primary key/
    unique constraint name list by @Mytherin in #11325
  * In ColumnData, limit scan to the current count in the column by @Mytherin
    in #11329
  * Issue #11269: DISTINCT Sorted Aggregates by @hawkfish in #11321
  * [Attach] Fix bug causing sequences to break attaching databases. by @Tishj
    in #11327
  * Flatten hash vector before combining list hashes by @lnkuiper in #11340
  * Make sniffer more consistent when nullpadding/ignore_errors are on by @pdet
    in #11313
  * fix(arrow): union buffer count & handle schema errors by @Mause in #11326
  * fix duckdb-r script by @Tmonster in #11345
  * Fix regression_test_runner.py by @carlopi in #11346
  * Issue #11234: IEJoin Scan Reset by @hawkfish in #11347
  * TPC-H: Use BIGINT for ID fields schema where required by the specification
    by @szarnyasg in #11341
  * Another round of polishing staged releases by @carlopi in #11342
  * CI: Remove issue labeling workflow by @szarnyasg in #11355
  * RE2 upgrade to version 2023-02-01 by @hannes in #11252
  * File System: Add optional_ptr<FileOpener> to various calls, and add support
    for attaching DuckDB files over S3 by @Mytherin in #11343
  * README: Display different logo for light/dark mode by @szarnyasg in #11366
  * Fix bug in duckdb_bind_blob by @pfarndt in #11368
  * Fix OSX CI by @samansmink in #11379
  * Enable clang-tidy on headers and fix all headers to conform to our
    clang-tidy rules by @Mytherin in #11376
  * Add logical_type to parameters of format_pg_type by @Flogex in #11369
  * Issue #10965: RESPECT IGNORE NULLS by @hawkfish in #11372
  * Fix building issues in WIN32, remove unnecessary modification. by
    @kindred77 in #11356
  * Zero-initialize aggregate states with destructors immediately after
    allocating by @lnkuiper in #11360
  * Update README.md by @jingshi-ant in #11357
  * Issue #10885: Negative Window RANGEs by @hawkfish in #11390
  * Issue #11377: Invertible TIMESTAMP_XXX Casts by @hawkfish in #11392
  * Update init.py To export "extract_statements" function by \ 
@oomojola in #
    11394
  * Internal #1657: Stricter STRUCT Casts by @hawkfish in #11396
  * allow set readonly on attached db by @stephaniewang526 in #11397
  * Give preference to FSSPEC defined FS by @pdet in #11400
  * Default serialize optional_idx, add skip_default option to
    json_serialize_sql() by @Maxxen in #11405
  * CI: Also label PRs as 'stale' and close them when there's no activity by
    @szarnyasg in #11420
  * fix(jdbc): 1-index getBytes() by @Mause in #11421
  * Remove redundant default descriptions by @szarnyasg in #11415
  * clang-tidy: enable cppcoreguidelines-pro-type-const-cast by @Mytherin in #
    11414
  * clang-tidy: enable cppcoreguidelines-avoid-non-const-global-variables by
    @Mytherin in #11424
  * Issue #11419: Quantile Order By by @hawkfish in #11428
  * [CSV Sniffer] Give preference to quoted candidates by @pdet in #11418
  * clang-tidy: enable cppcoreguidelines-virtual-class-destructor by @Mytherin
    in #11437
  * clang-tidy: enable cppcoreguidelines-[interfaces-global-init|slicing|
    rvalue-reference-param-not-moved] by @Mytherin in #11435
  * Fix #11393 - improve error message when trying to use a lateral join column
    in a table function that does not support it by @Mytherin in #11436
  * add readonly to duckdb_databases() by @stephaniewang526 in #11429
  * Fix missing opener propagation by @quentingodeau in #11454
  * Fix #11246: Use SetConsoleCP function to set input to UTF8 when reading by
    @Mytherin in #11452
  * CLI: Add support for ".edit" or "\e" by @Mytherin in #11447
  * Fix VS2022 Preview ClangCl build by @bodand in #11456
  * Remove an unnecessary line from bind_insert.cpp by @huachaohuang in #11443
  * [CI] Skip ccache for R.yml by @carlopi in #11459
  * Improve binding of CTEs by @kryonix in #11399
  * Move BindCreateIndex from Catalog to Binder by @philippmd in #11402
  * [Substrait-ADBC] Fix for substrait plan execution via ADBC by @pdet in #
    11358
  * Removing abort() from RE2 again because Google refuses to use exceptions by
    @hannes in #11458
  * Defer allocation in read_json by @lnkuiper in #11378
  * [ODBC] Add escape character to ParseStringFilter to support Power Query
    ('table_name' is escaped to 'table_name') by @guenp in #11432
  * Bump to post-portfile change for duckdb_azure by @carlopi in #11476
  * Reduce memory usage of DELETE operations by @Mytherin in #11470
  * Use optional_idx in more places by @Mytherin in #11466
  * Revert "Move BindCreateIndex from Catalog to Binder" by @Mytherin \ 
in #11478
  * [Arrow] Throw on invalid STRUCT type by @Tishj in #11464
  * [Dev] Do not use CatalogEntry references inside Dependency objects. by
    @Tishj in #11408
  * Fix extension builds by @carlopi in #11486
  * [Fix] Throw BinderException for UNNEST expressions in WINDOW expressions by
    @taniabogatsch in #11247
  * Check for IUTF8 flag defined before setting it by @patmaddox in #11488
  * Fix #11445: correctly detect recursive aliases when using struct unnest by
    @Mytherin in #11497
  * Fix #11444: avoid using recursion in string -> list parsing by @Mytherin in
    #11498
  * Add serialization for LogicalCopyDatabase operator by @Flogex in #11401
  * add support in Julia appender for missing and nothing values by @rdavis120
    in #11508
  * [Python] Produce datetime.time values when converting TIME columns to
    Pandas DataFrame by @Tishj in #11468
  * [Fix][ADBC] Implement required ADBCConnectionGetObjects schema by @joellubi
    in #11446
  * Add support for decimal modulo operation by @Mytherin in #11506
  * Move CompressedMaterialization inside of StatisticsPropagator by @lnkuiper
    in #11495
  * Bump stale bot version by @szarnyasg in #11509
  * Rework issue workflow by @Mytherin in #11522
  * [RE2] Add includes and remove potential throw from destructor by @carlopi
    in #11513
  * Issue #11292: Nested Boolean Compares by @hawkfish in #11496
  * [Dev] Initialize new buffers with garbage data if DESTROY_UNPINNED_BLOCKS
    is set by @Tishj in #11270
  * Fix timeout in async workflow by @samansmink in #11525
  * Move assertion in json_scan.cpp by @lnkuiper in #11530
  * Issue #11518: TryParseTime by @hawkfish in #11519
  * Fuzzer Bugfixes by @Maxxen in #11544
  * [CI] Fix CI failure on C Enum Integrity Check by @Tishj in #11547
  * [ICU] Use the correct lookup precedence for TimeZone settings by @Tishj in
    #11546
  * [CI] Move from default GITHUB_TOKEN to specific one by @carlopi in #11556
  * [CI] Fix Deploy step to execute only for duckdb organization by @carlopi in
    #11553
  * Rework RadixPartitionHashTable task assignment in source phase by @lnkuiper
    in #11528
  * Run new micro benchmarks in CI when they are added by @Tmonster in #11532
  * Rework vector_hash for ARRAYs by @Maxxen in #11558
  * [Dev] Add assertions around Uncompressed String storage by @Tishj in #11267
  * python: Add missing global options to write_csv by @jzavala-gonzalez in #
    10382
  * [Python] Fix issue with lists containing dictionaries of different sizes by
    @Tishj in #11095
  * [Dev][Python] Add nightly test to execute all sqllogic tests using the
    python package by @Tishj in #11137
  * Parquet Writer: Early out creating dictionary by @lnkuiper in #11461
  * ODBC driver should ignore "driver" and \ 
"trusted_connection" keywords in
    connection string by @guenp in #11382
  * [ODBC] Fix: Support loading UTF-8 encoded data with Power BI by @guenp in #
    11423
  * Draft permissions - bot does not have permission for drafting by @Mytherin
    in #11575
  * CI: Remove 'needs reproducible example' when 'reproduced' label is applied
    by @szarnyasg in #11576
  * Various fixes & clean-up around STRUCT UNNEST by @Mytherin in #11580
  * Update token by @Mytherin in #11592
  * Update issue template by @szarnyasg in #11577
  * [CI] Remove GITHUB_PAT variable from R-CMD-check by @carlopi in #11593
  * Respect read-only mode in dbgen and dsdgen by @Mytherin in #11585
  * Bump-back duckdb_azure to pre-lzma custom vcpkg-port by @carlopi in #11595
  * Correctly handle database names with quotes in USE statement by @Mytherin
    in #11587
  * Bump postgres version and build arrow also for windows by @carlopi in #
    11604
  * Support reading gzipped files in the test runner by @chrisiou in #11600
  * initializes unknown indexes on catalog lookup by @Maxxen in #11551
  * Fix Progress Bar for many large CSV Files + Adjustment to not store buffers
    from compressed files over single threaded scans by @pdet in #11273
  * CSV Rejects Tables 2.0 by @pdet in #11512
  * Fix topn placement by @Tmonster in #11601
  * Fix various issues found by oss-fuzz by @Mytherin in #11613
  * [ODBC] Fix: timestamps and times are parsed as dates by Power Query by
    @guenp in #11610
  * Fix various fuzzer issues, move fuzzer scripts into this repo, and expand
    reduce_sql_statement to improve test case reduction capabilities of fuzzer
    by @Mytherin in #11622
  * [Dev] Make the extension_entries.hpp generation script more modular by
    @Tishj in #11623
  * [Fix][ADBC] Don't filter system catalogs/schemas in ConnectionGetObjects by
    @joellubi in #11618
  * Add pyodide wheel building github action by @cpcloud in #11531
  * Move away from dynamic_cast to Cast<> infrastructure by @carlopi in #11619
  * Extension Metadata by @carlopi in #11515
  * [Dev] Regenerate query string for IndexCatalogEntry. by @Tishj in #11462
  * Upload pyodide by @carlopi in #11626
  * Add docker alpine build to check on builds by @carlopi in #11490
  * Add Vector Similarity Search (VSS) Extension by @Maxxen in #11614
  * Metadata fix by @carlopi in #11629
  * Fix extension config for arrow, remove patch from sqlite by @carlopi in #
    11628
  * [CSV Reader] Resets the buffer manager over recursive scans by @pdet in #
    11631
  * Make path to append_metadata.cmake relative to top-level CMakeLists.txt by
    @Flogex in #11635
  * [CSV Reader] Fixes an issue with conflicting strategies for buffer cleaning
    by @pdet in #11630
  * Fix more issues found by the fuzzer, extend SQL reduction further by
    @Mytherin in #11642
  * fix(jdbc): support non-string parameter types by @Mause in #11646
  * Few more fuzzer fixes by @Mytherin in #11648
  * Bump spatial by @Maxxen in #11650
  * Avoid performing Apple codesign on extensions by @carlopi in #11652
  * Filter out single relation predicates before join ordering by @wangxiaoying
    in #11645
  * Fix last_value in the duckdb_sequences metadata function by @Tishj in #
    11465
  * Limit batch insert threads based on available memory, similar to Parquet
    write by @Mytherin in #11655
  * [Vacuum] Fix serialization and Copy of the VacuumStatement by @Tishj in #
    11656
  * More index initialization by @Maxxen in #11659
  * Skip tests with the unzip keyword in python and disable unzip.test for
    32bit systems by @chrisiou in #11658
  * Bump extension versions, remove patches by @carlopi in #11662
  * Accept a list of multiple nullstring values for CSV Files by @pdet in #
    11616
  * Include falloc to fix build on some Linux systems by @zmbc in #11663
  * Fix #11469 - make unnest parameters case-insensitive by @Mytherin in #11667
  * Fix #11467: correctly merge unnamed structs and structs in
    CombineEqualTypes by @Mytherin in #11668
  * Skip ADBC tests if python version is not 3.9 or higher by @pdet in #11653
  * Fix #11621 - correctly zero-initialize padding bits in bitpacking
    compression by @Mytherin in #11671
  * Fix #11542 - correctly check if a column data segment has updates, and
    clean up the updates by @Mytherin in #11670
  * Make UNION BY NAME also use ForceMaxLogicalType, similar to UNION by
    @Mytherin in #11665
  * Fix extension_version propagation for external extensions by @carlopi in #
    11672
  * Allow decimal type in CSV auto_type_candidates option by @pdet in #11675
  * Fix #11484: support constant indexes in ARRAY - e.g. ARRAY(SELECT .. ORDER
    BY 1) by @Mytherin in #11674
  * Improve hive type auto-casting so that it looks at all files instead of
    only the first file by @Mytherin in #11676
  * Fix #11669: deduplicate column names in pivot correctly by @Mytherin in #
    11678
  * Disable setting console pages by default, and add .utf8 setting by
    @Mytherin in #11682
  * bump vss, handle reverting append when index is unknown by @Maxxen in #
    11681

v0.10.1 Bugfix Release
What's Changed

  * Remove visualizer leftovers by @Y-- in #10642
  * Add explicit numbering to C enums + various compilation/CI fixes by
    @Mytherin in #10649
  * Disable print method for CSV scanner for R build by @hannes in #10650
  * Fix #10548 for the DUCKDB_NO_THREADS case by @carlopi in #10654
  * Allow StorageExtension to extend DuckCatalog implementation in order to
    integration with observability system by @bleskes in #10643
  * Update storage info for v0.10.0 by @szarnyasg in #10660
  * Revamp duckdb-wasm extensions CI by @carlopi in #10672
  * [CI] Re-enable skipped test window-rows-overflow.test by @Tishj in #10679
  * Catch: prominently display skipped tests by @Mytherin in #10669
  * Update Julia to 0.10.0 by @Mytherin in #10689
  * Ingestion benchmark framework by @Tmonster in #10341
  * [ICU] Add casts from Timestamp_* to TimestampTZ by @Tishj in #9539
  * DISTINCT ON - greatly improve performance by rewriting ordered FIRST
    aggregate into arg_min_null by @Mytherin in #10684
  * Fix #10685 - support aliases in join clause by @Mytherin in #10691
  * Use assertThrows for throwing assertions in JDBC tests by @peteraisher in #
    10448
  * Casts: report error location in query for failed casts by @Mytherin in #
    10694
  * Fix duckdb spelling in _extension_deploy.yml by @carlopi in #10717
  * Fuzzer #1374: ARG_XXX By Decimal by @hawkfish in #10728
  * [Python] Rework the python regression test script by @Tishj in #10715
  * Removes static member string by @TinyTinni in #10733
  * Fuzzer #1372: Order Bind Failure by @hawkfish in #10727
  * Fuzzer #1380: To Weeks Overflow by @hawkfish in #10726
  * Various fixes by @carlopi in #10708
  * Unittest does not satify assertion on MSVC/Debug by @TinyTinni in #10738
  * Fix OrderPreservationType issue of MATERIALIZED CTEs by @kryonix in #10587
  * Map creation fixes and refactoring by @taniabogatsch in #10436
  * Fuzzer #1383: NULL Range Arguments by @hawkfish in #10723
  * Fuzzer #1382: Window Stats Overflow by @hawkfish in #10725
  * Comment on view columns by @samansmink in #10710
  * Union exclude by @Tmonster in #10688
  * move the logic for immediate_transaction_mode to the physical operator by
    @peterboncz in #10739
  * [C API] Small fix and more tests by @taniabogatsch in #10748
  * List_slice bug fix by @maiadegraaf in #10747
  * Enable azure autoload by @samansmink in #10746
  * Parquet writer - reduce memory usage of order-preserving write by @Mytherin
    in #10756
  * Refactor csv reader includes because of r path length limitations by
    @hannes in #10658
  * Arrow String View Type by @pdet in #10481
  * local_file_system.cpp: minor fix for macOS libproc code by @barracuda156 in
    #10758
  * Make unnamed_subquery naming predictable by @Mytherin in #10765
  * [Python] Fix overflow issue in PandasAnalyzer by @Tishj in #10768
  * Throw when trying to consume over 128 byte decimals by @pdet in #10601
  * CLI: Right-align numerics in markdown tables by @Mytherin in #10767
  * Fuzzer #1399: Window NULL RANGE by @hawkfish in #10776
  * [CSV Sniffer] Minor sniffer tweak to give preference to dialects that
    generate the least errors if ignore_errors = true by @pdet in #10777
  * Add large benchmark directory by @Tmonster in #10763
  * Improve UNPIVOT error messages, and allow expressions in unpivot by
    @Mytherin in #10773
  * Add a method UUID::FromUHugeint to generate a UUID from a uhugeint_t by
    @Mytherin in #10771
  * [CSV Reader] Add lock to buffer reset by @pdet in #10791
  * [WINDOWS] Add "/bigobj" that solves compile issue during debug by
    @maiadegraaf in #10782
  * fix: not over-call AllSecrets by @stephaniewang526 in #10807
  * Update readme by @szarnyasg in #10814
  * [ODBC] Rework Connect to the ODBC driver and add functionality to set all
    DuckDB configurations in the Connection String by @maiadegraaf in #10692
  * Fix arrow conversion, map doesn't support large offset by @yiyuanliu in #
    10796
  * [CSV Reader] Spinlock over GetLine Error + New Strategy for dialect
    candidates by @pdet in #10755
  * Trivial fixes by @carlopi in #10816
  * Fix unicode handling in underscore of LIKE operator by @Mytherin in #10821
  * JDBC spurious CI failure - an exception being thrown in this test is a race
    condition by @Mytherin in #10825
  * Benchmark runner - allow files (e.g. CSV/Parquet) to be cached using the
    cache command by @Mytherin in #10817
  * Fix #10803 - correctly reclaim space of list indexes when columns are
    dropped by @Mytherin in #10822
  * [Upsert] INSERT OR REPLACE fixes by @Tishj in #10789
  * [Dev] Add an optional time out in seconds to run_tests_one_by_one.py by
    @Tishj in #10744
  * Maintain names in COLUMNS(*) expression, and allow aliasing multiple
    columns using {column} by @Mytherin in #10774
  * Disable AWS/Azure on Windows for now by @Mytherin in #10827
  * [Dev] Bump memory limit on batch_memory_usage.test_slow by @carlopi in #
    10845
  * Fix coverity apt-get by @carlopi in #10838
  * minor: FixedSizeBuffer::Pin move shared_ptr rather than copying by @mapleFU
    in #10837
  * ci: Upgrade workflows to actions/setup-python@v5 by @krlmlr in #10832
  * Fuzzer #1389: ARG_XXX Decimal Casts by @hawkfish in #10742
  * Contributor guide: Fix new issue link by @szarnyasg in #10836
  * Changing source to src in relational_constraints query by @Dtenwolde in #
    10848
  * Fix: correctly calculate the range of build side for perfect hash join by
    @gitccl in #10446
  * [Python] Fix issue caused by deadlock between thread.join() and acquiring
    the GIL by @Tishj in #10854
  * [CSV Parser] 8-Byte Skipping instead of 1-Byte when possible by @pdet in #
    10855
  * Add components of the version to duckdb.hpp by @ahuarte47 in #10840
  * [CSV Sniffer] Tweaking header detection by @pdet in #10714
  * Check if directory exists before removing files in regression test runner
    by @Tmonster in #10859
  * [Extension] Add CatalogType to the list of functions generated in
    extension_entries.hpp by @Tishj in #10597
  * Regression test build side probe side by @Tmonster in #10585
  * [Arrow] Fix issue surrounding lifetime of dictionary arrays by @Tishj in #
    10610
  * Fix #10745 - correctly deal with empty float columns in floating point
    compression routines by @Mytherin in #10863
  * [Extensions] Build fixes by @carlopi in #10860
  * Fix MSVC linking issue with workaround by @samansmink in #10865
  * Reduce memory usage & avoid spilling to disk unnecessarily for
    order-preserving table creation/insertion by @Mytherin in #10862
  * pb/avoid GetSchema opening a transaction by @peterboncz in #10740
  * Support dollar-quoted string-constants in the CLI by @Mytherin in #10879
  * Shell: avoid printing "Error: " prefix if the error message \ 
already has a
    prefix (e.g. Binder Error:, Parser Error:, etc) by @Mytherin in #10880
  * Partially fix #10751: correctly catch exceptions in sqlite3_print_duckbox
    by @Mytherin in #10881
  * Reset refresh in CompressedFile::Close() by @Maxxen in #10882
  * [CSV Reader] Lock when getting progress by @pdet in #10884
  * [CSV Sniffer] Early out if things go wrong in dialect detection by @pdet in
    #10872
  * [CSV Reader] Fix for skipping mix of newline delimiters by @pdet in #10864
  * Parallelize format.py script by @hatvik in #10646
  * Remove Old PSQLODBC scripts by @maiadegraaf in #10888
  * Add update_odbc_path.py to ODBC bundle by @maiadegraaf in #10895
  * Improve Wasm.yml workflow by @carlopi in #10899
  * [Parquet] Fix #10829, write correct data page offset in the presence of
    dictionaries by @hannes in #10890
  * Table name binding does not fail for non-existent tables in DROP TABLE
    statements by @NiclasHaderer in #10893
  * Fix #10889 - correctly deal with compressed vectors in struct
    filterpushdown of ColumnSegment::FilterSelection by @Mytherin in #10896
  * CI: Disable julia nightly for now by @Mytherin in #10905
  * CLI - add support for rendering errors/matching brackets for square ([])
    and curly ({}) brackets as well by @Mytherin in #10904
  * Storage: Fix an internal exception that could be triggered when deleting
    many rows and checkpointing repeatedly by @Mytherin in #10897
  * LIMIT/OFFSET clean-up by @Mytherin in #10873
  * Add ARRAY to test_all_types + IO and some clients by @Maxxen in #10850
  * Use M1 (ARM) OSX runners by @hannes in #10670
  * build: restore tarball build support by @Mause in #10900
  * Fix #10902 - allow more expressions to be used with an indirection without
    brackets (. or [], etc) by @Mytherin in #10909
  * feat(jdbc): fixed size array support by @Mause in #10911
  * Add regexp_split_to_table macro by @szarnyasg in #10898
  * [MetaTransaction] Add lock on modifying all_transactions and transactions
    by @Tishj in #10799
  * Issue #10809: RANGE Hint Corrections by @hawkfish in #10828
  * Enable the progress bar (without printing) in unittests by @Mytherin in #
    10908
  * [Python][Dev] Fix issue in read_csv related to the s3 extension by @Tishj
    in #10690
  * Add support for the C API duckdb_query function to the Julia api by
    @rdavis120 in #10886
  * Fix #10501 - in LocalFileSystem::Write split writes into batches of at most
    2GB by @Mytherin in #10912
  * Correctly reset data chunk in RETURNING of DELETE by @Mytherin in #10915
  * bitstring_agg had a trigger-able assertion, [duckdb-fuzzer/#1414] by
    @hannes in #10918
  * Shell: Remove IEE754 function from CLI by @Mytherin in #10919
  * Use correct index in string to nested cast error handling by @Mytherin in #
    10920
  * Batch memory manager - keep track of all used memory correctly and enforce
    that unflushed memory is correctly set to 0 when we are finished by
    @Mytherin in #10922
  * Fix #9975 - correctly open (and keep open) a transaction when checking if
    prepared statement needs to be rebound by @Mytherin in #10923
  * CLI - Insert spaces when copy-pasting tabs by @Mytherin in #10924
  * feat: exposing ssl ca cert path to httpfs by @pvaezi in #10704
  * Centralize dynamic cast check and disable on MacOS by @Mytherin in #10925
  * Checked Numeric Casts by @hannes in #10870
  * Avoid running numeric cast checks when CRASH_ON_ASSERT is enabled by
    @Mytherin in #10942
  * Set duckdb_api to 'python jupyter' if in Jupyter notebook by @guenp in #
    10931
  * Array fuzzer issue fixes by @Maxxen in #10944
  * Fix assertion trigger in FilterCombiner::AddTransitiveFilters by @Mytherin
    in #10941
  * Support recursive describe queries (i.e. DESCRIBE(DESCRIBE ..)) by
    @Mytherin in #10945
  * Avoid throwing null pointer exception in Window Segment Tree destructor by
    @Mytherin in #10937
  * Fix an issue where partitions were not correctly considered in bound window
    expression equality by @Mytherin in #10939
  * Fix for limit % with subquery on an empty table by @Mytherin in #10946
  * Correctly visit all expressions during lateral join decorrelation,
    particularly with nested lateral joins by @Mytherin in #10936
  * when you add the relation, make sure you call gettableIndexes() on th?? by
    @Tmonster in #10949
  * Internal #1428: Interval Subtract Overflow by @hawkfish in #10957
  * Fuzzer #1445: Trap MAKE_DATE/TIME Overflows by @hawkfish in #10958
  * Python.yml: Revert to macos-latest for OSX workflow by @carlopi in #10970
  * Purge queue refactor by @taniabogatsch in #10594
  * Change time from duckdb_time to duckdb_time_struct in duckdb_time_tz_struct
    by @Giorgi in #10933
  * Add require block_sizes 262144 on tests reading db files by @carlopi in #
    10974
  * [duckdb-fuzzer/#1368] - overflow in bitstring_agg on hugeint & uhugei?? by
    @hannes in #10971
  * Fix LIST->ARRAY TRY_CAST when list sizes mismatch by @Maxxen in #10973
  * Add a micro extended benchmark. by @Tmonster in #10943
  * [Dev] Move TemporaryFileManager and friends out of StandardBufferManager by
    @Tishj in #10938
  * [ODBC] Reorganize Directory Structure by @maiadegraaf in #10979
  * Internal #1385: Window Partition Collation by @hawkfish in #10985
  * Fuzzer #1471: Trap MAKE_DATE Overflows by @hawkfish in #10987
  * Range checks for ACOS by @hannes in #10972
  * improve CheckBoundaryValues in TopN by @xuke-hat in #10955
  * CSV tests - use TEST_DIR to prevent leaking file by @Mytherin in #10991
  * Autoload INET and ICU (and add back sqlite and postgres as autoloadable) by
    @carlopi in #10948
  * Fuzzer #1468: Window RANGE Types by @hawkfish in #10990
  * Fuzzer #1446: Quantile Hugeint Interpolation by @hawkfish in #10983
  * Override git hash / git version by @carlopi in #10977
  * [Storage] Only call FinalizeOptimisticWriter after storage merge has
    succeeded by @Mytherin in #10998
  * Add MetaTransaction::GetTransaction to threadsan suppressions (false
    positive) by @Mytherin in #11001
  * Various fixes: CMake + generated extension_entries.hpp checks by @carlopi
    in #10994
  * Nightly Wasm build fix by @taniabogatsch in #10993
  * Fix return null constant in array_slice and other array issues by @Maxxen
    in #10992
  * Add correct table bindings for window relations. by @Tmonster in #10997
  * Clean up ExecutorTask and simplify waiting for all tasks to be cancelled by
    @Mytherin in #11005
  * Various JSON thread sanitizer fixes by @Mytherin in #11004
  * Fix warnings in ALP and logical_insert by @carlopi in #11008
  * Check IsLoaded() before importing cached item by @Tmonster in #11007
  * Issue #10995: ICU VARCHAR TIMETZ by @hawkfish in #11002
  * Fix #10982 - only update total rows of row group collection after we finish
    appending to prevent other readers from attempting to initialize scans on
    in-progress appends by @Mytherin in #11011
  * [Nightly] Block size nightly test changes by @taniabogatsch in #11010
  * ATTACH with reserved names (temp/main) by @Mytherin in #11020
  * Fix various tests for vector_size = 2 by @Mytherin in #11027
  * [CI] Create a bigger table in interrupt test by @Mytherin in #11025
  * Issue #10995: TIMETZ DST Fix by @hawkfish in #11024
  * Fixup LinuxRelease.yml release: unittester was not invoked correctly by
    @carlopi in #11022
  * In DatabaseInstance destructor - destroy TaskScheduler first by @Mytherin
    in #11021
  * Refactor ATTACH options by @taniabogatsch in #11016
  * Fix #11033: don't reset arena allocator in between calls to streaming
    window expression by @Mytherin in #11039
  * Avoid checking LastModifiedTime for remote files in object cache by
    @Mytherin in #11034
  * [Block Size Nightly] Enable more block size nightly tests by @taniabogatsch
    in #11036
  * Add missing pipeline dependencies in recursive CTE by @kryonix in #11043
  * Use batch limit only when limit + offset are small constants by @Mytherin
    in #11035
  * Add New CSV Error for Invalid Unicode by @pdet in #10984
  * [FIX] Lambda bug in subqueries by @taniabogatsch in #11046
  * [Swift] performance optimisations by @tcldr in #11052
  * add concat_ws to spark API by @nicornk in #11051
  * feat(jdbc): expose comments via jdbc methods by @Mause in #11031
  * [CI / Tests] Disable CSV sniffer test for smaller vector sizes and reduce
    block-size nightly runtime by @taniabogatsch in #11055
  * [CSV Sniffer] Consider date/timestamp formats from the user when sniffing
    by @pdet in #11057
  * Extend the "Contents of view were altered" error with more \ 
information by
    @Tishj in #11064
  * [Python] Add some numeric and string functions to spark API by
    @mariotaddeucci in #11067
  * [ODBC] Allow multiple statements to be executed using SQLExecDirect by
    @maiadegraaf in #11038
  * [CSV Reader] Apply projection on over buffer values. by @pdet in #11056
  * Python: use short paths for Windows by @Mytherin in #11068
  * Fix #10752: Add support for Parquet encryption on Windows by @Mytherin in #
    11069
  * [Python] Code Quality - PEP8 Compliant + only relevant imports by
    @mariotaddeucci in #11070
  * [CI] Add patch argument to patch the extension's sources before building by
    @krlmlr in #10831
  * fix(jdbc): support fractional seconds in getTime by @Mause in #10707
  * Fix #11071 - correctly report progress when scanning multiple Parquet files
    by @Mytherin in #11072
  * Add ipv6 inet + minor fixes by @carlopi in #11073
  * Implement IPv6 support in the inet extension. by @troycurtisjr in #10839
  * [CI] Add step to verify C API enum integrity. by @Tishj in #10664
  * Issue #10995: TIMETZ DST Fix by @hawkfish in #11079
  * Check Nested Types for UTF-8 Correctness by @pdet in #11086
  * Add scope column to duckdb_settings by @Tishj in #11017
  * Partitioned write - flush batches periodically (every 500K rows) instead of
    only writing when all data has been gathered by @Mytherin in #10976
  * [Python] Add extract_statements and the Statement class by @Tishj in #10891
  * [Python] Improve performance of conversion to Numpy/Pandas for nested lists
    by @Tishj in #10826
  * Fix an InternalException caused by DICTIONARY_VECTOR inside
    map_from_entries by @Tishj in #11091
  * Fix #11084 - fixes an issue with the Parquet writer when writing vectors of
    lists with repeated list elements (as can be generated through a join) by
    @Mytherin in #11094
  * Add callbacks for newly added connections, and allow extensions to rebind
    queries as a result of planning failures by @Mytherin in #11096
  * Fuzzer #2376: INTERVAL Muliply Overflow by @hawkfish in #11100
  * Make test/sql/copy/csv/test_limit_spinlock.test a slowtest by @pdet in #
    11088
  * Fix #11063 - avoid throwing exception in InClauseRewriter by @Mytherin in #
    11090
  * Add a hint on how to resolve lockups when using ninja. by @troycurtisjr in
    #11074
  * Fix LocalFileSystem::Read/Write, update location after read/write some data
    by @yiyuanliu in #11105
  * run_tests_one_by_one - add a default timeout of 1 hour by @Mytherin in #
    11104
  * [Fix] Aliases in subqueries by @taniabogatsch in #11103
  * [CSV Scan] Implement ignore_erros for Dates/Timestamps/Decimals by @pdet in
    #11083
  * Fix TaskScheduler deadlock on NumberOfThreads by @Tishj in #11093
  * Fix return null constant in list_resize and list_aggr by @maiadegraaf in #
    11111
  * Add rowsort to more tests for queries that don't have a defined order by
    @Mytherin in #11110
  * Do not extract filters that cannot be hyper edges (Join Order Optimizer) by
    @Tmonster in #11108
  * Add Dictionary vector verification by @Mytherin in #11114
  * [Dev][Python] Make test_httpfs.py error test more lenient by @Tishj in #
    11125
  * Fix ConstantVector::Reference for dictionary arrays by @Maxxen in #11136
  * Disable jemalloc for ARM distributions and clean up when closing DB by
    @lnkuiper in #11130
  * Case senstivity issue secret manager by @samansmink in #11128
  * Bump az aw vcpkg by @samansmink in #11127
  * Fix broken micro benchmarks so they can be run weekly by @Tmonster in #
    11113
  * Refactor OSX.yml, now inputs can be provided by @carlopi in #11133
  * Merge main into feature by @Tishj in #11141
  * Revert "Merge main into feature" by @Mytherin in #11145
  * Fix upload assets script by @carlopi in #11144
  * Bump spatial by @Maxxen in #11132
  * Fix upload assets OSX/2 by @carlopi in #11148
  * Add more vector type verification tests/settings by @Mytherin in #11138
  * Allow for customization of catalog lookup behavior for different catalog
    types by @Mytherin in #11151
  * [Python][Arrow] Don't deduplicate column names when outputting to Arrow by
    @Tishj in #11160
  * More Array and Union fixes by @Maxxen in #11161
  * Refactor upload logic (towards staged releases) by @carlopi in #11156
  * Fuzzer #2490: Generate NULL TIMESTAMPTZ by @hawkfish in #11143
  * Add folder parameter to upload logic and upload also twine artifacts by
    @carlopi in #11169
  * CI: Find mirror issues among all issues, not just open issues by @szarnyasg
    in #11170
  * Fix TupleDataCollection serialization of dictionary vectors containing
    nested data by @lnkuiper in #11174
  * Allow overriding of git describe also in scripts (via OVERRIDE_GIT_DESCRIBE
    environment variable) by @carlopi in #11179
  * Python staged releases: centralized staged upload by @carlopi in #11187
  * Fix RevertAppendInternal by @Mytherin in #11177
  * TwineUpload: Add awscli dependency + minor rework by @carlopi in #11193
  * Fix issue in copy constructor of ExtraDropSecretInfo by @samansmink in #
    11190
  * Unify CSV/JSON and Parquet Batch Writing Code - and fix memory management
    issues in CSV/JSON writing by @Mytherin in #11188
  * More conservative dummy list entry estimation by @Maxxen in #11185
  * retry on 500 error by @samansmink in #11184
  * Fix warning on unused utf_type by @carlopi in #11198
  * Remove outdated duckdb-node related scripts by @carlopi in #11180
  * Add StagedUpload.yml by @carlopi in #11189
  * Improving CSV Casting error message by @pdet in #11183
  * Improve conversion error message in Parquet reader by @Mytherin in #11199
  * Fix thread sanitizer issues by @Mytherin in #11200
  * Internal #1564: Range Join DISTINCT by @hawkfish in #11205
  * small fix secret autoloading, bump azure by @samansmink in #11182
  * CSV reader - suggest enabling null_padding and ignore_errors in case of
    missing columns by @Mytherin in #11201
  * CI: Create/label mirror issue job should list all internal issues by
    @szarnyasg in #11204
  * [Python] Add IS NULL / IS NOT NULL support to Expression API by
    @cmdlineluser in #11175
  * Remove old assertions in SegmentTree by @Mytherin in #11208
  * [lambda] Fix for list_reduce giving the wrong result by @maiadegraaf in #
    11171
  * [Dev] Fix various issues discovered by #11137 by @Tishj in #11210
  * [Dev] Fix py override describe by @carlopi in #11209
  * Sanitize CSV Newline identifier for writing CSV files by @pdet in #11106
  * Fix persistent secret file permissions by @samansmink in #11172
  * Retry Binding Prior To Execution by @Mytherin in #11149
  * Avoid copying LogicalType in FlatVector::SetNull. by @yiyuanliu in #11214
  * Review of CI on tags + add R extensions CI to InvokeCI.yml by @carlopi in #
    11212
  * Fix python and apply patches + bump extensions by @carlopi in #11217
  * Disable jemalloc on arm in Python package as well by @Mytherin in #11218

DuckDB 0.10.0 "Fusca"
What's Changed

  * feat(jdbc): support uuid param type by @Mause in #9164
  * Bump ADBC to v0.7 by @pdet in #9185
  * Add support for parquet key-value metadata by @Maxxen in #9126
  * Default to JSON type if objects have an inconsistent structure by @lnkuiper
    in #9086
  * Add schema parameter to read_parquet by @lnkuiper in #9123
  * [Python] Add the ability to provide a list of files to read_csv by @Tishj
    in #8977
  * Issue #7672: TIMESTAMP_XX to DATE by @hawkfish in #9279
  * N-ary lambdas, and indexes as lambda parameters by @taniabogatsch in #8851
  * Feature: Fixed size list nested type (ARRAY) by @Maxxen in #8983
  * Fix unused warning by @Maxxen in #9318
  * Internal #215: Window EXCLUDE Functionality by @hawkfish in #9220
  * Add json_serialize_plan, json_serialize_sql tweaks by @Maxxen in #9230
  * Add create statement support to fuzzer by @Tmonster in #9011
  * Fix for issue #8108: Random() in lambda by @maiadegraaf in #9353
  * Fix Lambda Serialization by @taniabogatsch in #9323
  * Allow file_row_number with parquet schema option by @samansmink in #9290
  * CSV - Always run sniffer by default by @pdet in #9250
  * [Python Dev] Import items lazily by @Tishj in #8741
  * Array fixes + make validity more lazy by @Maxxen in #9400
  * Lambda performance revamp by @taniabogatsch in #9395
  * [Python] Support replacement scan on connection.table(<name>) method by
    @Tishj in #9427
  * [Dev] Fix failure in Format Check CI job by @carlopi in #9516
  * Fix parquet serialization by @Maxxen in #9485
  * Support gcs:// and r2:// URLs to read data from GCS and R2 by @chrisiou in
    #9388
  * Don't reset validity target count by @Maxxen in #9565
  * Merge into feature by @carlopi in #9583
  * Additional list functions by @cryoEncryp in #8907
  * [Python] Support Optional[...] in DuckDBPyType by @Tishj in #8658
  * C-API: support streaming arrow query by @Virgiel in #8642
  * Add ToString and Print method for JoinRelationSetManager and Fix JoinNode
    Print by @Light-City in #9040
  * Removed artificial HUGEINT minimum by @nickgerrets in #9441
  * Parquet Encryption by @lnkuiper in #9392
  * Internal #330: Quantile Performance by @hawkfish in #9461
  * CAPI: Make it possible to create enum types by @alnkesq in #8788
  * 5614 database invalidated by @Tmonster in #9513
  * Add support for proper scoping (catalog + schema) to custom types by
    @Mytherin in #9622
  * Internal #576: strptime strftime infinities by @hawkfish in #9615
  * ATTACH IF NOT EXISTS by @Mytherin in #9627
  * Small benchmark changes by @taniabogatsch in #9638
  * add option for keep_alive setting by @samansmink in #9648
  * Add "getenv" function to shell which can be used to read environment
    variables, and allow functions to be used in SET statements/PRAGMA
    statements by @Mytherin in #9651
  * Julia release by @Mytherin in #9670
  * In set operations ORDER BY columns refer to the first set operation in SQL
    - so the reference is not ambiguous by @Mytherin in #9658
  * Replace old logos by @szarnyasg in #9674
  * Fix dbgen/dsdgen when using custom catalog and schema by @ywelsch in #9686
  * [Arrow] Properly use the parent's array.offset in many places in the scan
    by @Tishj in #9661
  * Update issue template with API/extension repositories by @szarnyasg in #
    9693
  * [Python] Fix lossy datetime.timedelta to INTERVAL conversion by @Tishj in #
    9688
  * Issue template: Report vulnerabilities via dedicated channel by @szarnyasg
    in #9711
  * Fix #9601: Call correct method in duckdb_pending_execution_is_finished by
    @Mytherin in #9728
  * Merge Feature Into Main by @Mytherin in #9726
  * feat(c): add functions for determining statement/return types by @Mause in
    #9430
  * Issue #9673: ICU DST Truncation by @hawkfish in #9705
  * Deserialize header fields by @carlopi in #9687
  * fix: restore support for windows network paths by @Mause in #9725
  * Constant time attach path lookup and locking to ensure unique file handles
    by @taniabogatsch in #9671
  * [ART] WAL serialization, automatic checkpointing, decoupling catalog and
    storage, index names by @taniabogatsch in #9339
  * Fix expanding structs in queries with ORDER BY by @taniabogatsch in #9481
  * Only emit batch indices valid within the current pipeline by @ywelsch in #
    9702
  * Fix #9717: Correctly set null statistics of children of structs by
    @Mytherin in #9733
  * Fixes to warning and rendering of bar() by @carlopi in #9734
  * Don't show "blabla" as part of syntax error by @mlafeldt in #9746
  * Fix #9742: correctly catch empty ROW case in UPDATE by @Mytherin in #9744
  * Explicitly attach duckdb file type by @taniabogatsch in #9747
  * For ATTACH - Resolve extension prefix before determining the name so
    "sqlite:file.db" is again correctly aliased as "file" \ 
instead of
    "sqlite:file" by @Mytherin in #9753
  * Wasm: Add wasm_threads as a class of built extensions by @carlopi in #9735
  * Remove index joins by @taniabogatsch in #9751
  * Support EXCEPT ALL and INTERSECT ALL by @hannes in #9636
  * Add nightly deploy script by @samansmink in #9761
  * update vcpkg by @samansmink in #9759
  * Close s3 filehandle on destruction by @samansmink in #9758
  * add list of collations that are required to determine equality. by
    @Tmonster in #9757
  * Apply fix for patching vcpkg in extension workflow by @samansmink in #9767
  * Internal #766: SkipList Coin Toss by @hawkfish in #9772
  * Support reading large decimals into doubles in the Parquet reader by
    @Mytherin in #9770
  * ATTACH - Always run ExtractExtensionPrefix also if a name is provided by
    @Mytherin in #9771
  * Issue #9762: Interval Fractional Seconds by @hawkfish in #9773
  * Internal #716: Summarize approx_unique BIGINT by @hawkfish in #9774
  * Issue #9755: TIMESTAMP_XX DOUBLE Parts by @hawkfish in #9769
  * Add support for COPY FROM DATABASE statement by @Mytherin in #9765
  * chore: move links duckdblabs -> duckdb by @dpprdan in #9779
  * Detect FreeBSD platform by @szarnyasg in #9782
  * Extention template: Enable DuckDB-Wasm extensions by @carlopi in #9356
  * Version: add info on v0.9.2 by @carlopi in #9788
  * [JDBC] Sync all methods from a statement that interact with a query result
    by @pdet in #9659
  * format_bytes rework, moving from decimal multipliers to binary ones by
    @carlopi in #9736
  * Make FORCE CHECKPOINT abort transactions of concurrently running queries by
    @Mytherin in #9790
  * Bugfix/9768 by @nbc in #9791
  * Cleanup raw pointers from transaction manager by @Mytherin in #9237
  * Partially fix #4182 - write distinct stats for string dictionary columns by
    @Mytherin in #9518
  * fix(python): minimal changes to support compiling for python 3.12 by @Mause
    in #9797
  * Implement #2534 - add parquet_file_metadata function that supports scanning
    top-level file metadata by @Mytherin in #9793
  * Correctly clean up database path when an error is thrown in attach by
    @Mytherin in #9792
  * Fix cotangent(0.0): should also throw OutOfRange by @carlopi in #9799
  * Call BindSchemaOrCatalog when binding functions so that we can qualify
    functions with only a database as well by @Mytherin in #9810
  * Fix #9739 - UNIQUE USING INDEX is not supported by @Mytherin in #9809
  * Fix #8596 - use ConstructConstantFromExpression for PIVOT IN list by
    @Mytherin in #9813
  * Fix #8500 - if we encounter any ambiguity while binding a function with a
    parameter we rebind during execution by @Mytherin in #9814
  * Remove watchOS from CI tests by @carlopi in #9820
  * Fix #9262 - avoid checking exclusion/replace list when extracting table
    names by @Mytherin in #9812
  * LIST to VARCHAR cast fix by @taniabogatsch in #9819
  * Fix #9806 - when an overflow is detected during filter pushdown the
    pushdown should be halted, instead of claiming the result is always false
    by @Mytherin in #9816
  * Parquet: Include column key-value metadata in parquet_metadata function by
    @Mytherin in #9798
  * Add duckdb_optimizers function by @Mytherin in #9815
  * Internal #805: Summarize NULL Percentage by @hawkfish in #9822
  * Add s3a s3n protocols for httpfs by @samansmink in #9817
  * S3: Add more details to error on multipart upload by @carlopi in #9826
  * CI fixes by @Mytherin in #9827
  * [Python] Pandas Analyzer no longer trips up when the pandas_analyze_sample
    would only let it find nulls. by @Tishj in #9811
  * Create streaming result from a prepared statement. by @Giorgi in #9802
  * Clear all updates during checkpoint by @Mytherin in #9829
  * Fix #9825 - disable adding transitive filters for <> in filter combiner by
    @Mytherin in #9832
  * [Upsert] Do not require ON CONFLICT clause on INSERT OR REPLACE in some
    situations. by @Tishj in #9730
  * Issue #9631: Time/Interval Hours by @hawkfish in #9643
  * feat(c): support creating nested values in C API by @Mause in #9438
  * For EXPORT DATABASE - always write forward slashes in COPY statements by
    @Mytherin in #9833
  * Make checking the database path atomic again by turning db_paths into a
    bloom filter instead of a source of truth by @Mytherin in #9828
  * Issue #9785: Missing Interval Parts by @hawkfish in #9796
  * Issue#604 Support collations during IN/NOT IN operations. by @StarveZhou in
    #9724
  * Reset expression before returning binder error by @taniabogatsch in #9821
  * Fix: Undefined behaviour in Bitpacking compression by @nickgerrets in #9844
  * Add ORDER BY to List_Select test by @maiadegraaf in #9847
  * CSV Sniffer Function by @pdet in #9522
  * Expand Progress API by @pdet in #9531
  * Fix #8095: Adjust the LG_PAGE parameter in jemalloc to accommodate the 64KB
    PAGE SIZE in aarch64 Linux systems. by @vincent-chang in #9642
  * Improve error message for index limitations by @szarnyasg in #9862
  * Fix empty box in explain analyze statement by @chrisiou in #9860
  * [Python] No longer scan datetime.datetime.max as infinity by @Tishj in #
    9848
  * Move Wasm logic to inside CMake by @carlopi in #9830
  * Fix s3fs close issue by @samansmink in #9846
  * Fix TSAN issue related to db_paths_lock by @Mytherin in #9868
  * Fix #9863 - avoid moving constants for DATE - DATE subtractions by
    @Mytherin in #9874
  * Disable progress bar test by @Mytherin in #9875
  * add FROM to InitialKeywords vector in autocomplete extension by @hamilton
    in #9877
  * [Optimizer] regexp_matches fix InternalException caused by NULL by @Tishj
    in #9872
  * [ADBC Test] Prevent segfault in test by @Tishj in #9871
  * Fix progress test by properly initialising variables by @pdet in #9882
  * Capitalize URL in httpfs extension flags by @szarnyasg in #9884
  * Mark BufferPool getters const by @Y-- in #9885
  * make BufferPool members protected by @jkub in #9886
  * Parquet: Support more physical types of time columns with time zone by
    @hannes in #9895
  * docs(capi): add tests for prepared statement streaming by @Mause in #9892
  * Fix deadlock in LockClients when checkpointing multiple databases, and
    avoid locking all clients for regular checkpoints by @Mytherin in #9898
  * Disable copy constructor of connection by @Mytherin in #9899
  * Add TableCatalogEntry to bind info by @Mytherin in #9896
  * Issue #9869: Strptime Week Start by @hawkfish in #9890
  * Fix #9867 - correctly propagate relation name in COLUMNS expression by
    @Mytherin in #9904
  * Fix progress bar (again) by @pdet in #9905
  * Safeguard uses of ColumnDefinition::DefaultValue by @Tishj in #9842
  * Various CI fixes by @Mytherin in #9903
  * [ADBC] Add support for windows. by @pdet in #9357
  * Fix #8905 - make duckdb_rows_changed work with both new and deprecated
    results by @Mytherin in #9907
  * ART duckdb versions test requires 64-bit system by @taniabogatsch in #9906
  * Internal #751: Shared Window Partition by @hawkfish in #9839
  * Issue #9887: ISO Format Directives by @hawkfish in #9910
  * Fix: string to integer cast by @nickgerrets in #9581
  * [Test] Make test_progress_bar.cpp output more verbose by @Tishj in #9916
  * Refactor and fix ART concurrency tests to avoid spurious CI failures by
    @taniabogatsch in #9919
  * Write old (empty) index_pointers to table metadata for forwards
    compatibility with v0.9.2 by @Mytherin in #9923
  * User agent in http header by @elefeint in #9632
  * Add support for vacuuming partial deletes during CHECKPOINT by @Mytherin in
    #9931
  * JDBC: DuckDBNative - Close Shared Object InputStream Properly by @brianwyka
    in #9933
  * Fix ATTACH of foreign key by @taniabogatsch in #9932
  * [DependencyManager] Rework internals of the DependencyManager by @Tishj in
    #9715
  * Internal #873: Empty Aggregate Frames by @hawkfish in #9936
  * Add support for right_semi and right_anti. PR 2 by @Tmonster in #9897
  * httpfs: fix null pointer dereference in AWSEnvironmentCredentialsProvider
    by @mlafeldt in #9953
  * Limit initial combine capacity in RadixPartitionedHashTable by @lnkuiper in
    #9946
  * [Python][Dev] Switch to using pyproject.toml when building and running CI.
    by @Tishj in #9944
  * Issue#9795 min/max doesn't use collation by @StarveZhou in #9855
  * [Arrow][UDF] Properly support side_effects parameter for Arrow UDFs. by
    @Tishj in #9959
  * JDBC - Appender for Decimal by @Jens-H in #9568
  * [Fix] No duplicates in list_intersect by @taniabogatsch in #9947
  * [Python] Fix the ability to provide pandas_analyze_sample_size in the
    config dictionary to connect by @Tishj in #9961
  * [SQLLogicTest] Expected error message is no longer optional for statement
    error by @Tishj in #9962
  * fix offset type in list_casts and array_casts. by @yiyuanliu in #9972
  * Issue #9978: Approximate Quantile Overflow by @hawkfish in #9985
  * fix regexp_replace bug by @alitrack in #9938
  * chore: Remove dead code by @krlmlr in #9992
  * Internal #898: Totally Ordered Intervals by @hawkfish in #9994
  * Swift Readme.md small fix by @atacan in #9977
  * Issue #9956: Alternative TIME Casts by @hawkfish in #9984
  * Make IEJoin code more clear by @xuke-hat in #9973
  * Parallel Checkpointing by @Mytherin in #9999
  * [Fix] ambiguous lambda parameters by @taniabogatsch in #9974
  * [Python][Dev] Disable test causing issues on Python3.7 by @Tishj in #10005
  * Shell: Many improvements/fixes to multi-line mode, enable multi-line mode
    by default by @Mytherin in #10015
  * Increase CLI history's max length to 1000 by @szarnyasg in #10006
  * [Fix] nullptr dereference when analyzing nested types by @taniabogatsch in
    #10004
  * Improving error message when trying to open a locked database by @hannes in
    #9988
  * fix(function): fix ceil function by @sundy-li in #10014
  * fix read parquet progress and read csv progress. by @yiyuanliu in #10013
  * [Python][StreamQueryResult] Fix memory ownership issues in
    StreamQueryResult::FetchRaw by @Tishj in #9968
  * Revert to old method of computing terminal size as new method does not play
    nice with lldb by @Mytherin in #10026
  * Issue #9762: Interval Fractional Parts by @hawkfish in #9954
  * Fix #9380 and #9738 by @lnkuiper in #9990
  * Fix array subquery by @chenzl25 in #10025
  * Issue #4545: Windowed Distinct Aggregates by @hawkfish in #9754
  * add rowsort to test by @stephaniewang526 in #10036
  * The UHUGEINT type by @nickgerrets in #8635
  * build(python): fix python pkg version by @Mause in #10049
  * Add support for FixedPointDeclimals v0.5 by @mcmcgrath13 in #10039
  * DuckDB Secrets by @samansmink in #10042
  * Improve progress bar for Aggregation and limit threads for large data sizes
    by @lnkuiper in #9989
  * Internal #940: GCC Window Distinct by @hawkfish in #10054
  * Fix #10058: correctly handle unicode literals in regexp optimizer by
    @Mytherin in #10061
  * Update database_size.hpp by @rjatwal in #10072
  * enable overriding per-query working-memory target. by @jkub in #9544
  * fix(c): fix duckdb_create_union_type by @Mause in #10097
  * Call InitialCleanup in PendingQuery(SQLStatement) by @ywelsch in #10083
  * Removing useless variables by @ywgrit in #10082
  * [WIP] Support dot notation for JSON by @ankrgyl in #9499
  * Refactor deploy script for extensions by @samansmink in #10063
  * Add list_reduce lambda function by @maiadegraaf in #9909
  * Handle s3_endpoint that includes path by @tom-s-powell in #9918
  * Update year in license file to 2024 by @szarnyasg in #10103
  * Not including stdlib for just size_t, stddef is smaller header by @hannes
    in #10104
  * Bump iceberg extension version by @samansmink in #10102
  * Internal #783: ICU DatePart Serializers by @hawkfish in #10055
  * CI: Add backlink to original issue when its status changes by @szarnyasg in
    #10111
  * Streamline handling issues that come with PRs fixing them by @szarnyasg in
    #10116
  * Fix ParquetScanMaxThreads. by @yiyuanliu in #10113
  * test(python): fix blind catches by @Mause in #10118
  * CI: Create separate job for handling 'PR submitted' label by @szarnyasg in
    #10119
  * Lazy WAL creation by @taniabogatsch in #10086
  * [BREAKING] Modify implicit casting rules to differentiate between string
    literals and VARCHAR columns, and disable implicit casting to VARCHAR for
    many types by @Mytherin in #10115
  * For parsed expressions and table references - serialize query location, and
    obtain query location for more properties in transformer by @Mytherin in #
    10130
  * Checksum WAL entries by @Mytherin in #10126
  * Display unnamed structs as tuples instead of as structs with empty keys by
    @Mytherin in #10134
  * Fix #10008 - disallow parameters in DEFAULT clause, and remove unsupported
    SQLite code for handling parameters in shell by @Mytherin in #10135
  * Issue #10140: NULL Constant Lists by @hawkfish in #10142
  * feat(py): support python 3.12 by @Mause in #10144
  * fix create_function python stub by @yiyuanliu in #10132
  * fix(py): don't use jemalloc on windows by @Mause in #10145
  * Build manylinux_2_28 arm python wheels by @samansmink in #10137
  * Slightly improve performance of the first aggregate function by @lnkuiper
    in #9957
  * Add csv & parquet write functions and toPandas to experimental PySpark API
    by @TomBurdge in #9672
  * Add handling for duckdb-wasm extensions in extension-upload-from-nightly by
    @carlopi in #9883
  * Add some pg session function to pg_catalog by @goldmedal in #10156
  * Fix CSE elimination for window functions with bind data. Fixes #10124 by
    @How-u-doing in #10152
  * feat(py): Py3.12 support for Windows by @Mause in #10159
  * Py3.12 Windows nightly fixes by @Mause in #10160
  * Serialization for scalar functions nextval and currval by @ywelsch in #
    10146
  * Pushdown filters into semi and anti joins by @Tmonster in #10110
  * Issue #9950: Ordered Aggregate Performance by @hawkfish in #10045
  * uhugeint_t/hugeint_t operator changes by @nickgerrets in #10117
  * add regexp_escape function by @chrisiou in #10044
  * Infrastructure: truncate not always available in CI, use dd by @carlopi in
    #10162
  * JSON S3 optimization by @samansmink in #10151
  * Remove chunk collection from reservoir sampler by @Tmonster in #10038
  * Fix #10074 - for materialized CTEs the final result names are not
    influenced by the aliases. Only the names of the CTE itself are influenced
    by the aliases. by @Mytherin in #10163
  * [Python] Fix issue in DataFrame construction where non-deduplicated names
    were being used mistakenly by @Tishj in #10165
  * Fix #10141 - Correctly handle recursive and nested types that refer to
    other types in CREATE TYPE by @Mytherin in #10164
  * Suspend duckdb shell on Ctrl+Z by @gsauthof in #10172
  * Fix #9456 and improve Deliminator by @lnkuiper in #9993
  * Temporary Memory Manager by @lnkuiper in #10147
  * Issue #10138: Finite Temporal Helpers by @hawkfish in #10157
  * Internal #425: TIMETZ Functions by @hawkfish in #10107
  * Fix #10057: report correct error message when binding an aliased column
    fails by @Mytherin in #10176
  * Allow unquoted keywords to be used in DETACH by @Mytherin in #10175
  * Implement FILE_SIZE_BYTES by @lnkuiper in #9920
  * [Parquet] Fix 10148, allow reading large byte arrays into small decimals
    for stats by @hannes in #10183
  * Throw binder error when returning list has no columns by @Tmonster in #
    10184
  * Fix missing move by @samansmink in #10186
  * [BREAKING] Implicit cast rules for integer literals, and parameterized ANY
    for binding by @Mytherin in #10194
  * Handle 0-list maps (erroring out) and add test-case by @carlopi in #10187
  * Internal #1001: SEM Test Determinism by @hawkfish in #10197
  * More work towards Custom Indexes by @Maxxen in #10032
  * Collations are not yet properly serialized, remove enable_verification by
    @carlopi in #10206
  * fix: reject creation of persistent secrets when allow_persistent_secrets=
    false for storage backends other than local_file by @stephaniewang526 in #
    10199
  * prevent physical nested loop join with multiple conditions on semi an?? by
    @Tmonster in #10190
  * chore: add const to BaseSecret and KeyValueSecret copy ctrs, fix
    compilation error by @stephaniewang526 in #10182
  * Allow DESCRIBE/SHOW/SUMMARIZE to be used as a subquery by @Mytherin in #
    10210
  * Internal #1042: 2023d Time Zones by @hawkfish in #10215
  * fix: fix a bug where free_space was incorrectly calculated when flushing
    partial blocks by @gitccl in #10220
  * Support more PG information_schema views by @goldmedal in #10222
  * Fix Issue #10122: wrong result in IEJoin by @xuke-hat in #10123
  * Internal #861: Aggregation Absorb API by @hawkfish in #9971
  * Better Cardinality estimates for right and left semi/anti joins by
    @Tmonster in #9976
  * Open JSON files lock-free if there are many by @lnkuiper in #10188
  * Bitpacking compression for the UHUGEINT type by @nickgerrets in #10195
  * fix: drop secret if exists on non-existing secret should not cause ex by
    @stephaniewang526 in #10217
  * Replace 'embedded' with 'in-process' in the Python package description by
    @szarnyasg in #10232
  * In .mode json in the shell use standard float output method by @Mytherin in
    #10229
  * Remove duplicate columns in PhysicalHashJoin by @lnkuiper in #10203
  * Out-of-tree extensions for R Windows by @samansmink in #10204
  * [Python] Output unnamed structs as tuple in fetchone/many/all methods by
    @Tishj in #10174
  * Internal #1022: Window TIME RANGE by @hawkfish in #10181
  * fix(capi): add basic TIME_TZ support by @Mause in #10207
  * Lambda scoping by @taniabogatsch in #10150
  * Add batch functionality by @osidekyle in #10011
  * Make FILE_SIZE_BYTES test more lenient by @lnkuiper in #10234
  * Allow SQLNULL to be bound in VALUES list by @Mytherin in #10238
  * Sequence clean-up - move all sequence access through a SequenceData entry
    that is concurrency safe by @Mytherin in #10236
  * Remove duplicate join conditions by @lnkuiper in #10235
  * UNPIVOT - maintain original types and throw a better exception if type
    matching is not possible by @Mytherin in #10240
  * Correctly account for ORDER BY in ColumnLifetimeAnalyzer optimization pass
    by @Mytherin in #10242
  * CSV Parser 2.0 by @pdet in #10209
  * COPY - allow copy_file_name to be formatted as identifier by @Mytherin in #
    10246
  * remove C-style cast in compression module by @gitccl in #10256
  * Allow dsdgen to be interrupted by user by @elefeint in #10262
  * Upgrade the schema of pg_proc to PostgreSQL 16 by @goldmedal in #10248
  * chore: improvements to duckdb_api / user_agent by @elefeint in #10226
  * Issue #10249: Window Clause Casing by @hawkfish in #10259
  * Fix issue 10254 by @lnkuiper in #10265
  * Store unqualified macro parameters, qualify before binding by @lnkuiper in
    #10266
  * Fix 9384 by @lnkuiper in #10267
  * Fixes #10212: Correctly account for non-flat vectors in
    ListColumnData::Skip by @Mytherin in #10268
  * Enable intercepting file copy extension after binding by @Maxxen in #10255
  * [Dev][Util] Have unittest respect the --start-offset parameter when used
    alongside -l by @Tishj in #10277
  * Issue #10272: DATE + INTERVAL by @hawkfish in #10274
  * Fix #10279 - correctly use unsigned integers in delta decoding to wrap
    overflows as specified by the spec by @Mytherin in #10288
  * Add parse_path(), parse_dirname() and parse_filename() functions by
    @chrisiou in #10208
  * [Compression] ALP Compression (float/double) by @lkuffo in #9635
  * Add function for non-bias-corrected kurtosis by @david-cortes in #9545
  * fix the problem of fetching wrong data when using bitpacking compression by
    @gitccl in #10291
  * [Python] Compatibility with pandas==2.2.0 by @Tishj in #10290
  * Avoid re-rendering the progress bar if the percentage has not changed by
    @Mytherin in #10284
  * Adapt further for z/OS by @v1gnesh in #10297
  * CSV Parser Optimizations: Pre-computed skip list. Simpler state machine
    transition. Flip state machine states and transitions. by @pdet in #10258
  * Explicitly cast FTS column to VARCHAR by @lnkuiper in #10299
  * Add table macro_definition to duckdb_functions() by @lnkuiper in #10301
  * [CSV Parser] Fix regression with dialect detection on quoted values. by
    @pdet in #10307
  * Improve bitpacking skip performance + better testing of FetchRow by
    @samansmink in #10295
  * Fix #10308 - allow describe/summarize as prepared statement, and fix issue
    with describe/summarize with ctes by @Mytherin in #10311
  * CSV Reader making null padding Parallel by default by @pdet in #10306
  * Remove spinlock for closing JSON files by @lnkuiper in #10300
  * Fix NumericLimits<hugeint_t>::Minimum() * 0 case by @xuke-hat in #10319
  * C API updates by @taniabogatsch in #10317
  * Add create_sort_key function by @Mytherin in #10321
  * SQLLogicTestRunner - Make mode command work in loops, and add mode
    no_output by @Mytherin in #10328
  * Escape all ASCII control characters in duckbox rendering by @Mytherin in #
    10327
  * Fix Failing Nightly Swift test by @Tmonster in #10320
  * Basic struct filter pushdown by @Maxxen in #10314
  * Improve the check for glob in sniff_csv function. by @gabihodoroaga in #
    10243
  * Add an icon to the duckdb.exe shell executable by @renevdzee in #9656
  * [Arrow] Support scanning REE (Run End Encoded) Arrow arrays by @Tishj in #
    9836
  * [Compression] Fix Handling of -0.0 in ALP by @lkuffo in #10335
  * Split jdbc tests by @Mause in #10338
  * Set interrupted flag after pushing an error to prevent race condition where
    the InterruptException could end up being the top-level error by @Mytherin
    in #10337
  * [Python] Fix bug in conversion of INTERVAL to datetime.timedelta by @Tishj
    in #10339
  * Update Postgres and SQLite extensions by @Mytherin in #10310
  * Limit the number of threads used to scan distinct aggregates by @lnkuiper
    in #10318
  * Fail Regression test when difference in cardinalities is detected by
    @Tmonster in #10340
  * pin ccache action version by @samansmink in #10344
  * test_all_types.py: Formatting according to black 24 by @carlopi in #10353
  * Allow NULL bytes in ART indexes by @Mytherin in #10325
  * Ensure version numbers passed to Windows .rc file are numbers by @Mytherin
    in #10358
  * Feature: Digit separators in numeric literals by @Maxxen in #10343
  * Autocomplete small improvements by @carlopi in #10370
  * Fix: correctly set list size of dictionary vector by @gitccl in #10369
  * Check black version in script/format.py by @carlopi in #10354
  * Change extension_directory default by @carlopi in #10359
  * feat(jdbc): setBytes by @Mause in #10365
  * [Block Size] CI test for 16KB block size and related code changes by
    @taniabogatsch in #9967
  * CI: Add workflow to check new issues for code formatting by @szarnyasg in #
    10149
  * Add additional STRUCT expansion tests by @taniabogatsch in #10373
  * Fix MATERIALIZED CTE issue #10260 by @kryonix in #10386
  * Add table_sample to TableStatistics (currently saved as nullptr) by
    @Tmonster in #10378
  * [Python][Dev] Use duckdb_cursor to avoid unintentionally sharing catalogs
    and registered objects by @Tishj in #10388
  * Extension metadata: detecting the platform by @carlopi in #10329
  * Add missing checkpoints in test by @Maxxen in #10389
  * Remove Python function signature (in test) by @carlopi in #10399
  * Avoid requiring expected error message on original sqlite tests by @carlopi
    in #10392
  * Case insensitive extensions install & load by @carlopi in #10380
  * Platform detection: Fix thread sanitizer job passing absolute path by
    @carlopi in #10398
  * [CSV Reader] Implicit Casting and Projection Pushdown by @pdet in #10390
  * CI: Fix workflow to check new issues for code formatting by using heredoc
    by @szarnyasg in #10403
  * Rework Exception Internals by @Mytherin in #10410
  * avoid copying in the for loop when there is a const by @zhouzilong2020 in #
    10418
  * Fix drop secret bug by @samansmink in #10185
  * Issue template: Ask about testing with the nightly build (instead of
    'main') by @szarnyasg in #10405
  * [CSV Reader] Use array instead of unordered_map in projection pushdown by
    @pdet in #10411
  * [C-API] Add duckdb_appender_column_type by @maiadegraaf in #10401
  * Fix results for anti joins on empty tables by @Tmonster in #10413
  * Don't write Chimp/Patas files anymore & deprecate patas and chimp by
    @Mytherin in #10423
  * Small secret manager refactor by @samansmink in #10421
  * [Python][Dev] Skip pyarrow test_struct_filter_pushdown on python3.8 by
    @Tishj in #10419
  * Add read_text and read_blob table functions by @Maxxen in #10376
  * Rework FunctionSideEffects to FunctionStability - allow NOW() to be pushed
    down by @Mytherin in #10426
  * Remove dev logging on local_extension_repo creation by @carlopi in #10424
  * GH Workflows: Create CI job for Coverity scan by @moshekaplan in #10433
  * Issue #10224: FIRST ORDER BY by @hawkfish in #10347
  * Coverity Scan: Project name is DuckDB by @Mytherin in #10447
  * Multiline mode: add continuation prompt rendering by @Mytherin in #10425
  * Python: fix exception hierarchy, and also catch std::exception by @Mytherin
    in #10420
  * Fix bug with full file download by @samansmink in #10429
  * Add cloudflare invalidation to nightly deploy script by @samansmink in #
    10430
  * fix(py): fix building python binding from cmake by @Mause in #10445
  * [CSV] Bug Fix related to quoted values starting with empty values by @pdet
    in #10438
  * Add COMMENT ON statement by @samansmink in #10372
  * CLI: Highlighting for continuation tokens by @Mytherin in #10453
  * Issue #10224: ORDERED FIRST Rewrite by @hawkfish in #10457
  * add support for date, time, timestamp types to the Julia appender api by
    @rdavis120 in #10449
  * Bugfix/#10441 correctly validate second colon in jdbc url parameter in Java
    client. by @peteraisher in #10442
  * [Execution] Parallel StreamQueryResult by @Tishj in #10245
  * [Julia][Dev] Improve README by @Tishj in #10464
  * Linenoise Code Cleanup by @Mytherin in #10461
  * [Bug Fix] [CSV Sniffing] Removing double quotes in header by @pdet in #
    10462
  * [Add Test] [CSV Parser] Type Detection on columns with null values by @pdet
    in #10465
  * Unconnected fixes by @carlopi in #10467
  * CLI: Only show continuation bytes while editing the query by @Mytherin in #
    10470
  * [CSV Reader] [Add Test] Quoted Values impacting the column sniffing. by
    @pdet in #10472
  * GzipFS - use unique_ptr instead of new/delete by @Mytherin in #10474
  * Group together index instantiation parameters into a struct, pass options
    map as well. by @Maxxen in #10471
  * Patch to build on Windows ARM 64 by @hannes in #10479
  * [Bug Fix] [CSV Reader] Fix to using null_padding in conjunction to one of
    the multifile reader options by @pdet in #10473
  * More linenoise/CLI improvements by @Mytherin in #10480
  * Add documentation example for Julia appender api. by @rdavis120 in #10475
  * Linenoise: add support for many more alt command sequences by @Mytherin in
    #10493
  * Use CMAKE_CURRENT_BINARY_DIR in CMakeLists by @Flogex in #10484
  * Avoid setting DUCKDB_NORMALIZED_VERSION to an empty string by
    @SChakravorti21 in #10492
  * Tag memory that is allocated through the buffer manager, and add
    duckdb_memory() function by @Mytherin in #10496
  * Linenoise: Disable automatic auto-complete rendering by default for now by
    @Mytherin in #10498
  * Fix edge case in RANGE for dates/timestamps when start=end by @Mytherin in
    #10499
  * Fix for auto-complete on empty words so behavior is consistent with
    previous DuckDB by @Mytherin in #10502
  * Nested Array Validity Fixes + RowOperations by @Maxxen in #10483
  * Keep file extension for temporary files by @Maxxen in #10459
  * bundle-library: Add optional Makefile target by @carlopi in #10507
  * Fix #10363 - prefer selecting entire rows over SQL value functions by
    @Mytherin in #10505
  * [CSV Reader] Avoid unnecessary writes to temporary file when reading in
    limited memory cases by @pdet in #10509
  * [Dev] Fix ASAN thread limit exceeded issue in CI by @Tishj in #10510
  * [Dev] Cancel tasks in EndQueryInternal by @Tishj in #10512
  * Export stack trace as part of extra exception info if
    DUCKDB_DEBUG_STACKTRACE is defined (DEBUG_STACKTRACE cmake variable) by
    @Mytherin in #10514
  * feat: make SecretEntry copyable so we don't lose the underlying BaseSecret
    obj for non-CatalogSet secrets by @stephaniewang526 in #10518
  * fix(py): json type in description field by @Mause in #10521
  * Decorrelation and parallelization of recursive and materialized CTEs by
    @kryonix in #10357
  * Keep track of view names and aliases separately so we can distinguish
    between explicitly provided aliases by the user and names returned by the
    view, and block usage of view if names changed by @Mytherin in #10500
  * Tweak TemporaryMemoryManager by @lnkuiper in #10503
  * On *nix, return errno in IOException extra_info by @philippmd in #10529
  * Use null cast instead of reinterpret for NULL -> JSON by @lnkuiper in #
    10526
  * [Python] Fix various small issues by @Tishj in #10533
  * [CSV Reader] NullPadding Tests by @pdet in #10530
  * Linenoise: make ENTER behave more similarly to other CLI clients - Ctrl+X
    can now be used to enter newlines at the cursor position by @Mytherin in #
    10527
  * [Python][Dev] Add PYTHON_EDITABLE_BUILD to Makefile by @Tishj in #10488
  * Reset git status before applying patches in out-of-tree build by @Mytherin
    in #10534
  * Fix #10486 - allow out-of-order struct casting by @Mytherin in #10537
  * Make ClientContext available during attach by @ywelsch in #10531
  * feat(jdbc): setDate by @Mause in #10408
  * Fix unused variable warning/error by @carlopi in #10542
  * [Dev]: ICU 2024a TimeZones by @hawkfish in #10544
  * Path utility fixes by @Maxxen in #10538
  * Support struct_extract and unnest for unnamed structs by @Mytherin in #
    10541
  * [Dev] Fix isses in parallel Checkpoint by @Tishj in #10525
  * More TemporaryMemoryManager tweaks by @lnkuiper in #10549
  * Add order to tests by @Flogex in #10536
  * Require at least 1 argument when calling ListZip during bind by @Tmonster
    in #10485
  * Benchmark runner: check for errors also if no result is specified by
    @Mytherin in #10554
  * [CSV Reader] [Bug Fix] Nightly CI Segfaults by @pdet in #10551
  * Fix for test/sql/copy/file_size_bytes_large.test_slow test by @pdet in #
    10552
  * Simplify binary-search in FindRunIndex by @felipecrv in #10487
  * Remove query profiler history and add hooks for certain events in the
    ClientContext by @Mytherin in #10504
  * [CSV Reader] Reset state on quoted/escaped when applying projection
    pushdown by @pdet in #10557
  * CommitState::WriteCatalogEntry refactor by @carlopi in #10555
  * [CSV Reader] Fix 9952 and race condition on error handler by @pdet in #
    10558
  * Fix a few tests failing non-deterministically with ALTERNATIVE_VERIFY=1 by
    @carlopi in #10560
  * unittester: if test-dir is provided avoid deleting it by @carlopi in #10564
  * Allow DuckDB execution without implicit main thread by @ywelsch in #10548
  * Fix #10528 - disallow parsing exponents for integers in strict parsing mode
    by @Mytherin in #10559
  * [Python] Fix issues related to handling of Python exceptions by @Tishj in #
    10563
  * [Python] Fix crash caused by fetch_record_batch by @Tishj in #10565
  * [Dev] Skip some tests on ALTERNATIVE_VERIFY by @Tishj in #10567
  * [Python][Dev] Test does not throw HTTPException by @Tishj in #10568
  * [Export] Fix export of user-defined types by @Tishj in #10569
  * Fix heap buffer overflow in VARCHAR -> TIME trycast by @Tishj in #10571
  * [Dev][CI] Add --no-exit to run_tests_one_by_one by @carlopi in #10572
  * Handle also branch with no threads enabled by @carlopi in #10573
  * Deduplicate code dealing with deduplication of column names by @Tishj in #
    10532
  * Bump spatial by @Maxxen in #10580
  * extension_distribution.yml: Pass DUCKDB_PLATFORM by @carlopi in #10582
  * chore(jdbc): correct datetime delta by @Mause in #10584
  * Fix Nested Array TupleData Serialization by @Maxxen in #10513
  * Do not replace filters that evaluate to always true by @Tmonster in #10553
  * [Dev] Fix triggered assertion in SortedAggregateState::FlushChunks caused
    by a small STANDARD_VECTOR_SIZE by @Tishj in #10202
  * [Tester] Add --require <name> by @Tishj in #10579
  * Add Support Options page by @szarnyasg in #10598
  * Use all threads to read multiple parquet files. by @Tmonster in #10590
  * [CSV-Reader] Fix on finalize for projection pushdown + nullpadding by @pdet
    in #10596
  * [Julia] Remove DataFrame from Project.toml by @Tishj in #10605
  * [CSV Reader] [Bug Fix] Make CSV Results hold the buffers they depend on by
    @pdet in #10589
  * minor secret manager fix by @samansmink in #10600
  * Point error message to stable link by @carlopi in #10592
  * Fix issue in aggregate HT where a task could be blocked and never be
    unblocked if the aggregation was interrupted early due to e.g. a limit by
    @Mytherin in #10604
  * Memory tracking - explicitly zero-initialize memory tracking arrays by
    @Mytherin in #10606
  * [Dev] Bump extensions & apply patches by @carlopi in #10603
  * Secret folder by @carlopi in #10607
  * JDBC: Skip combine test run because #10338 by @hannes in #10616
  * Fix for SQL value functions when there is an alias specified by @Mytherin
    in #10611
  * delay secret storage initialization by @samansmink in #10612

Files:
RevisionActionfile
1.3modifypkgsrc/databases/duckdb/Makefile
1.2modifypkgsrc/databases/duckdb/PLIST
1.2modifypkgsrc/databases/duckdb/distinfo