Subject: CVS commit: pkgsrc/databases/duckdb
From: Ryo ONODERA
Date: 2024-09-17 08:10:43
Message id: 20240917061043.BBB30FC74@cvs.NetBSD.org

Log Message:
databases/duckdb: Update to 1.1.0

Changelog:
1.1.0
What's Changed

  * Add feature changes back in by @Mytherin in #11146
  * Make MultiFileReader filename configurable by @lnkuiper in #11178
  * [Dev] Fix compilation issues on feature by @Tishj in #11082
  * add query() and query_table() functions by @chrisiou in #10586
  * [Block Size] Move the block allocation size into the block manager by
    @taniabogatsch in #11176
  * LIMIT pushdown below PROJECT by @jeewonhh in #11112
  * BUGFIX: IN () filter with one argument should translate to = filter. by
    @Tmonster in #11473
  * Regression Script should calculate micro benchmark differences with the
    correct base branch by @Tmonster in #11762
  * Pushdown filters on window partitions by @Tmonster in #10932
  * Arrow ListView Type by @Tishj in #10766
  * Add scalar function support to the C API by @Mytherin in #11786
  * Add TopN optimization in physical plan mapping by @kryonix in #11290
  * Join-dependent filter derivation by @lnkuiper in #11272
  * Implement ROW_GROUPS_PER_FILE for Parquet by @lnkuiper in #11249
  * Prefer Final projected columns on probe side if cardinalities are similar
    by @Tmonster in #11109
  * Propagate unused columns to distinct on by @Tmonster in #11006
  * Separate eviction queues by FileBufferType by @lnkuiper in #11417
  * Disable false positive for vector size nightly in test by @taniabogatsch in
    #11953
  * Rework jemalloc extension by @lnkuiper in #11891
  * Tweak jemalloc config by @lnkuiper in #12034
  * Httpfs test to nightly by @carlopi in #12196
  * Removed three reinterpret casts and some rewriting by @taniabogatsch in #
    12200
  * Begin Profiling Rework to move towards Modularity by @maiadegraaf in #11101
  * [CLI] Add highlighting + limited auto-complete for shell dot commands by
    @Mytherin in #12201
  * Skip test to fix block size nightly and add more explicit error checking by
    @taniabogatsch in #12211
  * Remove BLOCK_ALLOC_SIZE from the column segment files by @taniabogatsch in
    #11474
  * [Julia] - Added optional schema input argument to DuckDB.Appender
    constructor by @curtd in #12174
  * Fix Mark Index in the Bound Join Ref by @pdet in #12263
  * Fix for CI Regression Failure by @maiadegraaf in #12273
  * ? by @samansmink in #12303
  * Disable JEMALLOC_RETAIN by @lnkuiper in #12185
  * Enforce compression extensions for CSV Files by @pdet in #11903
  * Make spuriously failing test more robust by @lnkuiper in #12306
  * Add new extensions to issue template by @szarnyasg in #12313
  * [Fix] Block size nightly run by @taniabogatsch in #12283
  * Spell Check | Nothing Major | Corrected base_scanner.cpp by @nj7 in #12282
  * add duckdb_bind_timestamp_tz function to C API by @karlseguin in #12151
  * [Python] Add some date/datetime functions to pyspark api by @mariotaddeucci
    in #12075
  * Fixes to Windows workflow and ubuntu_18 action by @carlopi in #12308
  * [Extension Dev] Forward declare re2 in hive_partitioning.hpp by @Tishj in #
    12302
  * add expected errors to test/sql/copy/per_thread_output.test by @hmeriann in
    #12280
  * Issue #12287: ICU Strptime Lists by @hawkfish in #12295
  * Issue #12171: Streaming Window FILTER by @hawkfish in #12250
  * [Python] Update the Connection wrapper generation, now generates c++ code
    by @Tishj in #12216
  * Use iterator buffer position when storing buffer handles by @pdet in #12315
  * Bump Julia client to v0.10.3 by @Mytherin in #12323
  * Fix #12286 - in the MetadataManager, prefer to allocate new blocks if the
    next free block id is smaller than the currently used metadata block by
    @Mytherin in #12318
  * [Fix] Only read file size if file handle still exists by @taniabogatsch in
    #12319
  * Add support for APPEND argument to hive partitioned write by @Mytherin in #
    12262
  * Remove all reinterpret casts from the transformer by @taniabogatsch in #
    12320
  * Additional check for overlapping CTE names by @lnkuiper in #12305
  * [Dev] STANDARD_VECTOR_SIZE and BLOCK_ALLOC_SIZE can now be set through the
    Makefile by @Tishj in #12164
  * [Upsert] Fix issue with lambdas in DO UPDATE SET expressions by @Tishj in #
    11866
  * [Python] Fix scoping issue for pandas_analyze_sample setting by @Tishj in #
    11706
  * Support REGEX matches expected error message by @hmeriann in #12327
  * Allow run_fuzzer to reduce multi statements. by @Tmonster in #12278
  * Fix #12328 - when flattening STRUCT vectors with NULL values, we need to
    flatten the children recursively as well by @Mytherin in #12332
  * Make dbgen generate data in parallel by @Mytherin in #12337
  * dbgen: skip parallel generation if DUCKDB_NO_THREADS is set by @Mytherin in
    #12341
  * Add prefix prefix_front_back. to get prefix_front_ and prefix_back_ by
    @liujiayi771 in #12344
  * Issue #12171: Streaming Windowed DISTINCT by @hawkfish in #12311
  * Update README by @szarnyasg in #12357
  * [CSV Reader] [Skip Option] Tests and fixes by @pdet in #12213
  * Adjust BM25 score in FTS extension to prevent negative scores by @lnkuiper
    in #12356
  * Fix typos by @szarnyasg in #12360
  * Fix #12293 - accept NULL values in generate_series with timestamp by
    @Mytherin in #12367
  * Fix #12335: avoid calling fsync when writing Parquet files, instead just
    close the file by @Mytherin in #12371
  * Fix parameters passed down to other workflows in OnTag.yml by @carlopi in #
    12369
  * [Python] Fixes for the SQLLogicTest runner implementation by @Tishj in #
    12372
  * Bump julia to v1.0.0 by @Mytherin in #12379
  * Fix #11921 - varchar -> timestamp casts are not invertible by @Mytherin in
    #12376
  * Upgrade utf8proc - and move our custom extensions out of utf8proc itself by
    @Mytherin in #12373
  * change max_queries number back to 2000 by @Tmonster in #12375
  * Remove sqlsmith extension by @Tmonster in #12300
  * Reorder semi and anti joins. by @Tmonster in #11815
  * Issue #12351: implicit cast to TIMESTAMP_MS, TIMESTAMP_S, TIMESTAMP_NS from
    DATE values by @akoshchiy in #12352
  * Issue #10023: Approx_Count_Distinct Memory Usage by @hawkfish in #12355
  * Fix a small typo in dev instructions for swift setup by @gjmwoods in #12383
  * Release lock before returning BufferHandle in StandardBufferManager::Pin by
    @lnkuiper in #12391
  * Remote attach autoload by @carlopi in #12393
  * Add JSON type to Parquet reader/writer by @lnkuiper in #12222
  * Add RETURN_FILES parameter to COPY TO by @lnkuiper in #12220
  * Updated JoinHashTable to use linear probing to resolve hash collisions by
    @gropaul in #11472
  * [Benchmark Runner] Add --disable-timeout flag by @Tishj in #12387
  * Don't replace unicode spaces within $$ quotes in query strings by @lnkuiper
    in #12405
  * [Python] Fix fatal exception caused by empty Pandas Categorical objects. by
    @Tishj in #12370
  * Release CSV Blocks when acquiring new blocks if single threaded by @pdet in
    #12409
  * Add support for prefetching multiple adjacent blocks in a single batched
    read when attaching to remote databases by @Mytherin in #12413
  * MatchRegex() fixed to do not return false positive result by @hmeriann in #
    12396
  * Expected errors 2053 by @hmeriann in #12392
  * [C-API] Catch exception in duckdb_execute_prepared by @Tishj in #12414
  * Combining LIST_CONCAT and CONCAT binding by @maiadegraaf in #12317
  * [Appender] Add AppendDefault by @Tishj in #11905
  * [Python Dev] Push CTE internally for every (python) replacement scan that
    occurred. by @Tishj in #12161
  * Improve compiler compatibility by @krlmlr in #12401
  * Write zero-length list offsets for NULL values when serializing vectors by
    @Mytherin in #12423
  * Get column statistics if Logical Get has a statistics function by @jeewonhh
    in #12424
  * jemalloc: Identify GNU source code properly by @lnkuiper in #12420
  * Avoid parallelizing LIMIT clauses when the query plan is simple by
    @Mytherin in #12433
  * Prefetch metadata blocks for remote files by @Mytherin in #12437
  * [Jupyter] Remove width limit on the BoxRenderer config by @Tishj in #12443
  * Revert #10865 by @carlopi in #12426
  * inline delta by @samansmink in #12435
  * Account for tagged dollar-quoted strings when stripping unicode spaces by
    @lnkuiper in #12421
  * Work-around for broken github windows runner by @Mytherin in #12447
  * Prevents clearing of the types of the LogicalExecute operator by
    @NiclasHaderer in #12436
  * Add support for BEGIN TRANSACTION READ ONLY by @Mytherin in #12202
  * Make range and generate_series table in-out functions, and fix several
    issues with table in-out functions by @Mytherin in #12431
  * Issue #12412: AsOf Filter Push by @hawkfish in #12448
  * [Fix] Block Size Nightly by @taniabogatsch in #12427
  * [ART] Remove Flatten and template key generation by @taniabogatsch in #
    12428
  * [Python] Clean up internals of execute / executemany by @Tishj in #12434
  * By default attach remote databases as READ_ONLY by @carlopi in #12461
  * Fix #11837: use internal physical type for FIRST/LAST/ANY_VALUE instead of
    logical type by @Mytherin in #12462
  * Issue #12464: Windowed Order By All by @hawkfish in #12470
  * Specialize list_value for primitive types for significantly improved
    performance by @Mytherin in #12468
  * [Dev] Remove dead code from PhysicalBatchCopyToFile by @Tishj in #12459
  * Disable Windows extensions CI until Github actions runners are fixed by
    @Mytherin in #12479
  * [Fix] access_mode now lives in AttachOptions by @taniabogatsch in #12482
  * Internal #2186: Nanosecond Functionality by @hawkfish in #12440
  * [C-API] Fix leak in duckdb_create_config by @Tishj in #12465
  * [Python] No longer scan the entire frame lineage in a replacement scan,
    added option to disable (python) replacements entirely by @Tishj in #12425
  * throw binder error for comment on system catalog by @samansmink in #12486
  * Parquet reader performance by @lnkuiper in #12478
  * Operators the Optimizer can skip by @Tmonster in #12489
  * Fixes clang conversion warnings by @TinyTinni in #12467
  * Avoid creating internal schemas as non-internal when reading old database
    files by @Mytherin in #12456
  * Allow parquet encryption/decryption keys to be passed in as base64 encoded
    strings by @elefeint in #12445
  * [Block Size] Introducing CompressionInfo by @taniabogatsch in #12481
  * add the number of filtered files to explain by @samansmink in #12488
  * Implement Map Type Detection for JSON Reader by @ZiyaZa in #11285
  * [Dev] Remove busy-spin from ClientContext::ExecuteTaskInternal by @Tishj in
    #12483
  * Pluggable collations by @Mytherin in #12492
  * [Dev] Don't fail make generate-files if the python code generation fails by
    @Tishj in #12500
  * Optimize EXTRACT(year/month/day FROM date/timestamp) by @Mytherin in #12499
  * [Fix] Remove BLOCK_ALLOC_SIZE in the single file block manager by
    @taniabogatsch in #12502
  * Revert Windows CI fixes by @carlopi in #12510
  * Fix #12467 changes to covariance calculation by @carlopi in #12515
  * [Python] Fix reading strided datetime and timedelta columns by @Tishj in #
    12519
  * Add method for decoding sort keys, and use this in min/max for arbitrary
    types by @Mytherin in #12520
  * Reduce allocations & use predication in ColumnSegment::FilterSelection by
    @Mytherin in #12521
  * Skip only built-in optimizers by @Mytherin in #12522
  * Improve min/max performance for strings and fallback types by @Mytherin in
    #12524
  * Move arg_min/arg_max to use sort keys by @Mytherin in #12525
  * Move FIRST/LAST/ANY_VALUE to use sort keys by @Mytherin in #12526
  * CMake: use GNUInstallDirs as defaults for INSTALL_{BIN,LIB,INCLUDE}_DIR by
    @paparodeo in #12509
  * More formatting and fix to stddev by @carlopi in #12516
  * Linux Extensions CI: Attempt at fix missing dependencies by @carlopi in #
    12429
  * Fix checkouts by @carlopi in #12366
  * Etag if none match for extension install by @carlopi in #12333
  * [Block Size] FixedSizeAllocator, MetadataManager, PartialBlockManager by
    @taniabogatsch in #12514
  * [Python] Skip the PandasAnalyzer if dtype is 'string' by @Tishj in #12511
  * [StreamQueryResult] Batched variant of the StreamQueryResult collector by
    @Tishj in #11494
  * Move many tests to slow by @Mytherin in #12534
  * Add support for arg_min(ANY, ANY) by @Mytherin in #12532
  * Avoid overriding types in PrepareTypeForCast when not required by @Mytherin
    in #12539
  * Support all types in histogram function by @Mytherin in #12538
  * [Python] Remove busy-spin during execution by @Tishj in #12512
  * [Block Size] String space constant by @taniabogatsch in #12537
  * Use string_t instead of std::string in histogram by @Mytherin in #12545
  * Add support for binned histograms by @Mytherin in #12548
  * [Upsert] Fix RETURNING for DO NOTHING by @Tishj in #12554
  * Build Android Binaries by @hannes in #12550
  * [CI] Remove pyarrow version lock by @Tishj in #12566
  * [Dev] Change tests: np.NaN -> np.nan by @Tishj in #12565
  * Internal #2017: DECIMAL Downcast Rounding by @hawkfish in #12036
  * Issue #12204: Summarize Temporal Quantiles by @hawkfish in #12297
  * Internal #2186: Nanosecond StrTimeFormat by @hawkfish in #12551
  * Add support for equi_width_bins function to compute histogram boundaries by
    @Mytherin in #12574
  * add support for casting 'yes'/'no' strings to boolean values by @chrisiou
    in #12501
  * Julia: Add chunked results with Tables.partitions() by @frankier in #12395
  * [PySpark] - Allow spark session range by @mariotaddeucci in #12346
  * [PySpark] Implement subset drop duplicates by @mariotaddeucci in #12348
  * ICU noaccent collation by @tiagokepe in #12170
  * Implement Brotli compression for Parquet reading & writing by @hannes in #
    12103
  * [FriendlySQL] Unpacked COLUMNS() Expression by @Tishj in #11872
  * [PySpark] Implement UDFRegistration.register method on PySpark api by
    @mariotaddeucci in #12179
  * [Python] Don't use np.nan, deprecated alias starting with NumPy 2.0 by
    @Tishj in #12583
  * Add bind_expression callback to scalar function, and use it to turn typeof
    into a BoundConstantExpression by @Mytherin in #12580
  * Add can_cast_implicitly scalar function by @Mytherin in #12581
  * Add support for histogram and histogram_values table macro, and add support
    for default table macros (similar to how we support default macros) by
    @Mytherin in #12590
  * build: swap libclang for cxxheaderparser by @Mause in #12567
  * [C-API] Add table_description struct to query various information about the
    table. by @Tishj in #12460
  * Change new micro benchmark script to only look for .benchmark files by
    @maiadegraaf in #12598
  * Add HTTP error code to extension install failures by @carlopi in #12608
  * Separate WAL write from commit, and allow writing to the WAL without
    holding the transaction lock by @Mytherin in #12261
  * Add OwningStringMap - and rework histogram and mode functions to use this
    by @Mytherin in #12601
  * Feature #1272: Window Executor State by @hawkfish in #12573
  * Add support for any type to mode aggregate by @Mytherin in #12619
  * WAL - when dropping a table, also delete any transaction local storage
    associated with that table by @Mytherin in #12603
  * [Python] Allow Generators to be passed where List is expected by @Tishj in
    #12602
  * VectorOperations::Copy - fast path when copying an aligned flat validity
    mask into a flat vector by @Mytherin in #12618
  * Move android CI to only run during nightly CI triggers by @Mytherin in #
    12622
  * Add initial support for GeoParquet + Bump spatial by @Maxxen in #12503
  * Issue #12600: Streaming Positive LAG by @hawkfish in #12609
  * Feature #1272: Window Group Preparation by @hawkfish in #12628
  * Minor window improvements by @Mytherin in #12617
  * Merge feature into main by @Mytherin in #12633
  * Refactor quantile aggregate - clean up code & support quantile_disc/median
    for all types by @Mytherin in #12630
  * Feature 1272: Window Payload Preallocation by @hawkfish in #12629
  * [ART] Configurable index scan threshold by @taniabogatsch in #12635
  * Subtract start offset for when fetching array child segment by @Maxxen in #
    12639
  * Remove custom logic to detect main vs feature by @carlopi in #12643
  * Do not quote fields with space in the CSV output mode by @szarnyasg in #
    12644
  * Use lowercase in 'html' output mode by @szarnyasg in #12612
  * Internal #2361: Window ROWS Overflow by @hawkfish in #12652
  * Quantile: Fix variable used only in D_ASSERT by @carlopi in #12642
  * Skip pytorch test, it fails spuriously in CI by @carlopi in #12645
  * Add histogram_exact function that adds values to bins only if they match
    exactly, and add other column that contains values that do not fit in any
    bin by @Mytherin in #12650
  * Add operator hook for sink progress by @Maxxen in #12637
  * Regression workflow on newly introduced benchmarks: remove for now by
    @carlopi in #12659
  * Fix #12646 - allow SQL value functions in HAVING by @Mytherin in #12654
  * Add != operators on string_t and interval_t by @carlopi in #12658
  * fix: improve C scalar functions API by @rustyconover in #12663
  * Add approx_top_k aggregate based on the (Filtered) Space-Saving algorithm,
    and use it in histogram by @Mytherin in #12653
  * Fix std::sort requirements, from greater_equal to greater by @carlopi in #
    12669
  * fix(parquet): two-complement zeroes check on FIXED_BYTE_ARRAY encoded
    DECIMAL (#12621) by @fedefrancescon in #12655
  * [CSV Reader] Reorder of Columns for CSV Scans on multiple files. by @pdet
    in #12288
  * [CSV] [Bug-Fix] Fix for issue related with single-threaded execution and
    null padding. by @pdet in #12679
  * [Block Size] String block limit and a few other places by @taniabogatsch in
    #12671
  * Rework arena allocator allocation policy - and increase pivot threshold by
    @Mytherin in #12690
  * Julia - Fix Base.isopen(db::DB) in #12700
  * [CLI] Limit history size to 100MB, and avoid writing invalid UTF8 to the
    CLI history by @Mytherin in #12677
  * Add configurable thresholds for using nested loop join and merge join by
    @Mytherin in #12689
  * Prevent unnecessary usage of std::string in list aggregate - and use more
    efficient memcpy for batched copy by @Mytherin in #12694
  * Dont load spatial unless geoparquet metata is present by @Maxxen in #12692
  * Serialization: add CustomData and better support for integrating with
    extensions by @jeewonhh in #12681
  * Removing ODBC driver by @hannes in #12706
  * Support thousand separator for floating point numbers by @Mytherin in #
    12717
  * [Python] Use non-owning references to hold created cursors by @Tishj in #
    12711
  * LIST(VARCHAR) - reduce memory usage by avoiding allocation of nullmask for
    string data, and allocate larger initial batches by @Mytherin in #12705
  * [CSV] Bug fix for race condition in single-threaded multifile reader +
    properly print paths on union_by_name errors. by @pdet in #12697
  * Issue template: Add ODBC and Node (neo) clients by @szarnyasg in #12714
  * Shell: add .sql suffix to temporary file created with \e by @Mytherin in #
    12723
  * Partitioned write - keep only up until 100 files open, when this limit is
    exceeded close the file and create a new file if more data for this
    partition appears by @Mytherin in #12708
  * Change setting types to fix warnings by @Mytherin in #12724
  * Avoid unnecessarily copying child expression when binding COLLATE
    statements by @Mytherin in #12725
  * Support for variadic arguments in scalar UDFs in the C API by
    @taniabogatsch in #12678
  * [Relation API] Dont push DISTINCT modifier for EXCEPT/INTERSECT ALL by
    @Tishj in #12599
  * Builds for Windows on ARM64 by @hannes in #12586
  * Rework union_by_name so that files are no longer kept open by @Mytherin in
    #12730
  * Fix #12729: early-out when checking for perfect hash joins when running on
    empty tables by @Mytherin in #12731
  * CLI: Replace \n with \r\n again in history again by @Mytherin in #12735
  * Fix #11228 - add support for unsigned integers in printf/format by
    @Mytherin in #12736
  * Various CI fixes by @Mytherin in #12737
  * Add repeat(LIST[], INT) that allows repetition of lists similar to how this
    is allowed in Python by @Mytherin in #12738
  * [Python] Add missing options to read_json method by @Tishj in #12732
  * Add support for fetching cardinality estimation and stats through a
    multifilelist by @samansmink in #12740
  * Fixes warnings detected by cppcheck by @carlopi in #12745
  * [Arrow] Add ArrowQueryResult by @Tishj in #12496
  * [Dev] StreamQueryResult internals cleanup by @Tishj in #12636
  * ALP/ALPRD: correctly skip when we are skipping fewer values than in a
    vector by @Mytherin in #12753
  * Maintain prepared statement parameter types explicitly instead of
    converting into literals by @Mytherin in #12759
  * CLI .changes: use sqlite3_changes64 and sqlite3_totalchanges64 to prevent
    overflows by @Mytherin in #12761
  * Fix #12569: avoid truncating zeros that matter in format function by
    @Mytherin in #12762
  * Fix #12418: Remove .lint command in SQLite shell by @Mytherin in #12763
  * Fewer system calls in LocalFileSystem::ListFiles by @Mytherin in #12769
  * Support indexes in COPY DATABASE by @Mytherin in #12768
  * Issue #12600: Batched LEAD/LAG by @hawkfish in #12770
  * Issue #12600: Streaming Positive LEAD by @hawkfish in #12685
  * Add dl functionality for Windows by @ccfelius in #12765
  * Fix stale bot permissions, with @szarnyasg by @carlopi in #12782
  * [CI] Stale bot: actually add permissions by @carlopi in #12786
  * Fix FILE_SIZE_BYTES test (again) by @lnkuiper in #12779
  * Fix extended tests in CI by @carlopi in #12781
  * Patch CentOS 7 EOL causing CI failure by @samansmink in #12788
  * Allow extensions to optionally add own description (on load) by @carlopi in
    #12754
  * Internal #2429: Shifted LEAD NULLs by @hawkfish in #12791
  * Issue #12784: Months Before Days by @hawkfish in #12794
  * bump vss by @Maxxen in #12797
  * Remove centos workaround by @samansmink in #12801
  * For compressed deletes in the undo buffer - count the actual size that will
    be written to the WAL when determining the auto-checkpoint threshold by
    @Mytherin in #12803
  * feat: new inet functions by @panga in #12575
  * [Dev] MakeExecutor::ResultCollectorIsBlocked less trigger-happy by @Tishj
    in #12780
  * Fix #12798: Add head file to fix debug build incomplete type error by
    @zzachimed in #12810
  * [Block Size] Switching to configurable block sizes by @taniabogatsch in #
    12691
  * [Dev] Clean up the generate_serialization.py script a bit by @Tishj in #
    12823
  * Remove micro extended from duckdb/duckdb by @hmeriann in #12792
  * [Python] Allow pathlib.Path to be provided to duckdb.connect by @Tishj in #
    12809
  * remove .py scripts migrating to the sqlsmith by @hmeriann in #12827
  * Some expected error messages added by @hmeriann in #12825
  * [Fix] list_resize by @taniabogatsch in #12832
  * [Python] Python SQLLogicTester maintenance by @Tishj in #12833
  * [Python] Accept a list of Expression objects in DuckDBPyRelation.aggregate
    by @Tishj in #12812
  * [Copy Database] Don't include generated columns in the copied data by
    @Tishj in #12835
  * [Julia] Added Appender support for Int128, UInt128, and Base.UUID values by
    @curtd in #12836
  * [Python] Fix extraction of days/seconds/microseconds from timedelta object
    by @Tishj in #12760
  * [Python] Output a regular key -> value dict for hashable keys by @Tishj in
    #12734
  * [Dev] Change internals of StringUtil::GenerateRandomName by @Tishj in #
    12806
  * [CSV] Adaptive Sniffer by @pdet in #12698
  * Fix LinuxRelease.yml after bump to Node 20 by @carlopi in #12850
  * Fix: Reduce repeated judgment in ties[i]. by @Light-City in #12840
  * add html_escape and html_unescape functions in inet extension by @chrisiou
    in #11191
  * Fix union struct implict cast by @Maxxen in #12847
  * Update httplib from v0.10.2 to v0.14.3 by @lnkuiper in #12849
  * Fix an issue where parameters would be promoted to NULL, incorrectly
    causing PREPARE to fail by @Mytherin in #12844
  * More expected error messages added by @hmeriann in #12846
  * Overload MIN/MAX/MAX_BY/MIN_BY to return the "top" N values by \ 
@Maxxen in #
    12834
  * Fix #12789: list_zip support array by @flashmouse in #12859
  * [Python] Fix missing ConnectionException errors by @Tishj in #12864
  * Make equi_width_binning buckets even nicer by @Mytherin in #12878
  * Add a JSON pretty print function by @PhictionalOne in #12398
  * Add Metrics Support in the CAPI by @maiadegraaf in #12498
  * Update issue template by @szarnyasg in #12880
  * Fix regression in Parquet reader TryOpenNextFile by @lnkuiper in #12848
  * Improve performance of memory usage counters by @yiyuanliu in #12751
  * [Fix] No String Inline / Destroy Unpinned Blocks nightly run by
    @taniabogatsch in #12884
  * Fix LinuxRelease.yml CI by avoiding upload by @carlopi in #12891
  * Do not depend on manylinux extension in Python's CI by @carlopi in #12895
  * [Dev] Fix failing test in test_relation_api.cpp by @Tishj in #12894
  * [Dev] Skip test_run_pandas_with_tz on pandas <2.0.0 by @Tishj in #12896
  * Fix #12688: Julia SubString handling by @dhanak in #12899
  * [Python-Dev] Add DependencyException, throw earlier if PendingQuery fails
    by @Tishj in #12888
  * [Fix] Mixing block sizes and compression functions by @taniabogatsch in #
    12858
  * Fix issue with list radix serialization by @lnkuiper in #12887
  * Respect limit during join order by @Tmonster in #12851
  * [CHORE]: Fix minor SQL test case by @Tmonster in #12909
  * Fixes for duckdb_constraints and information_schema constraint tables by
    @Mytherin in #12914
  * [Postgres Compatiblity] Support => to supply named parameters to functions
    by @Tishj in #12913
  * Pushdown table filters into probe based on min/max data found during hash
    build of hash joins by @Mytherin in #12908
  * Count nulls when detecting JSON structure by @lnkuiper in #12883
  * Fix #12870 - improve error message when encountering schema mismatches in
    COPY tbl FROM file.parquet by @Mytherin in #12918
  * Use different versions of snappy depending on the compiler by @lnkuiper in
    #12889
  * Fix Issues with type detection for Doubles/Floats/Decimals by @pdet in #
    12866
  * Pass 'Unsecure_node_version' to allow node16 for a bit longer by @carlopi
    in #12922
  * Minor refactor for window_executor by @ZhangHuiGui in #12924
  * ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION:false for Android and Nightly by
    @carlopi in #12930
  * [Fix] Vector verification for dictionary expressions by @taniabogatsch in #
    12890
  * Return smaller cardinality for Top N operator by @jeewonhh in #12932
  * Make GCC Happy Again by @carlopi in #12937
  * [Fix] More robust parquet metadata test by @taniabogatsch in #12935
  * Rework table filters, and for each row group only execute table filters if
    they can actually filter out any rows by @Mytherin in #12938
  * Issue #12941: Window Constant Results by @hawkfish in #12943
  * Expected errors 2053 by @hmeriann in #12927
  * Make ErrorData::Message() and ErrorData::RawMessage() const by @Flogex in #
    12885
  * Feature #1272: Window Parallel Sink by @hawkfish in #12907
  * [Arrow] Add PhysicalArrowBatchCollector, a batched result collector for the
    ArrowQueryResult by @Tishj in #12787
  * [Python] Rework internals of object registration by @Tishj in #12625
  * [StreamQueryResult] Add ExecuteTask method to StreamQueryResult by @Tishj
    in #12824
  * Fix several CTE related issues by @kryonix in #12948
  * Label mark joins with convert to semi by @Tmonster in #12916
  * [Julia]: Added FixedDecimal support to Appender API by @curtd in #12923
  * Pushdown dynamically generated filters into MultiFileList, allowing
    partitions to be pruned by @Mytherin in #12955
  * Automatically materialize CTEs by @lnkuiper in #12290
  * Move checkpointing parallelism into TaskExecutor class, use that class for
    parallel union_by_name by @Mytherin in #12957
  * [Dev] Uncouple HTTPState from core by @Tishj in #12912
  * [Dev] Clean up TreeRenderer code by @Tishj in #12716
  * Swap build side and probe side base on cardinality AND width of build side.
    by @Tmonster in #12755
  * [Python] Use Set instead of List for the get_table_names stubs by @Tishj in
    #12963
  * Feature #1272: Window Validity Array by @hawkfish in #12954
  * [CSV Reader] Make glob reading more permissive to errors if ignore_errors
    is set by @pdet in #12966
  * [Python] Convert ENUM to np.array instead of pd.Categorical for fetchnumpy
    by @Tishj in #12964
  * Several hive partitioning fixes by @Mytherin in #12970
  * fix incorrect int32 appender by @piever in #12956
  * Add missing TransformCTE extraction to TransformRecursiveCTE by @kryonix in
    #12968
  * Expected errors 2053 by @hmeriann in #12969
  * Add Pyodide 0.26.1 (corresponding to Python 3.12) by @carlopi in #12965
  * Avoid adding a suffix to Parquet files when doing a partitioned write by
    @Mytherin in #12972
  * URL Encode/Decode Hive Partitioning Columns/Filters + add url_encode/
    url_decode scalar functions by @Mytherin in #12974
  * Fix JSON extension Cmake by @carlopi in #12975
  * Clarify when it's necessary to refresh data and validity pointers by
    @Giorgi in #12973
  * Added new information_schema views - closes #4343 by @prmoore77 in #12942
  * Use jaro winkler similarity for finding similar entries in catalog by
    @Mytherin in #12980
  * Internal #2503: Streaming Window Reset by @hawkfish in #12984
  * Fix #12933: maintain insertion order in window when the window clause is
    empty (i.e. over ()) by @Mytherin in #12982
  * Feature #1272: Window Constant Sink by @hawkfish in #12979
  * Remove special case for '+' in URLs in httplib by @lnkuiper in #12929
  * Rebind prepared statements based on catalog versions by @ywelsch in #12829
  * Allow string stats larger than our default for parquet row group pruning by
    @lnkuiper in #12928
  * Add work-around for R client table function initialization back in under a
    config setting by @Mytherin in #12990
  * [Dev] Add getters/setters for the 'column_ids' of a LogicalGet by @Tishj in
    #12971
  * Accelerate Parquet en/decryption with HTTPFS extension by @ccfelius in #
    11720
  * remove deprecated CDN invalidations by @samansmink in #12997
  * add large ingestions by @hmeriann in #12949
  * Fix shared_ptr issues in RowGroup and add locks to WAL initialization by
    @Mytherin in #13000
  * Add the ANY type and special null handling to the C API by @taniabogatsch
    in #12785
  * Improve error messages in the presence of subqueries by @Mytherin in #13001
  * Case-insensitive NULL casting in VARCHAR -> STRUCT casts by @lnkuiper in #
    13003
  * TemporaryMemoryManager improvements by @lnkuiper in #12931
  * Make sure that empty and only white space headers have same treatment by
    @pdet in #12994
  * Push timestamp_tz to do direct casting if ICU is not loaded by @pdet in #
    12993
  * [Dev] Add query to QueryRelation for logging by @Tishj in #13004
  * [Spark API] Fix group by compatibility issues by @Tishj in #13005
  * [CSV] Progress Bar for compressed files. by @pdet in #12728
  * Disable fixed size map in PartitionedTupleData by @Mytherin in #13013
  * Fix parallel creation and destruction of instances through the
    DBInstanceCache by @Mytherin in #13010
  * Avoid generating join filters for interval columns by @Mytherin in #13014
  * Extend least/greatest to support all types, and always return the same type
    as its input types by @Mytherin in #13019
  * Add sha1(varchar) -> varchar scalar function by @bradlarsen in #13020
  * Decimal to FloatingPoint: Avoid losing precision by splitting operation in
    two, more fixes and tests by @carlopi in #12627
  * Feature #1272: Segment Tree Finalize by @hawkfish in #13002
  * Create Delimiter Join and Delimiter Get via Relations by @pdet in #12953
  * Fix CTE/noalternativeverify issues by @lnkuiper in #13024
  * Fix bug in reworked fixed_size_map_t by @lnkuiper in #13023
  * Fix abs for floating point negative zero by @Mytherin in #13025
  * [Nightly-Bug] [CSV Reader] Use strings on header detection by @pdet in #
    13028
  * Release GIL during DB instantiation by @ywelsch in #13029
  * GCC 4.8: add noexpr to 2 constructors by @carlopi in #13030
  * Fixes for LogicalType::ANY and fixed_size_map by @Mytherin in #13035
  * [Nightly] Fix for arrow appending fixed size lists by @pdet in #13039
  * fix storing persistent secrets in home dir by @samansmink in #13033
  * Internal #2534: IGNORE NULLS Threading by @hawkfish in #13050
  * [Julia] Only commit transaction on non-error (compat) by
    @genericallyterrible in #13049
  * Improve EXPLAIN output of Delim Joins and Delim Gets by @kryonix in #12995
  * Make client reuse threadsafe by @samansmink in #13052
  * Only remove the first occurrence of extension prefix by @jeewonhh in #13057
  * Fix incorrect overflow in left shift of unsigned number by @Mytherin in #
    13056
  * Add tests for sha1 function by @bradlarsen in #13064
  * [Relation] ViewRelation could be created without an alias by @Tishj in #
    13054
  * Support IN operator for LIST by @Tishj in #12920
  * [Python] Read from file-like objects with read_json by @Tishj in #13040
  * [Python] Fix lifetime issue with MaterializedRelation by @Tishj in #12998
  * PySpark sort by columns and DataFrame.getitem by @khalidmammadov in #12981
  * Fix trouble to compile with MSVC by @annnei in #12579
  * Create a dedicated RegisteredStateManager that manages client context
    states in a thread-safe manner by @Mytherin in #13027
  * DEBUG_STACKTRACE should not be enabled for release builds by @Mytherin in #
    13070
  * Add blob overloads to crypto functions, and turn md5_number_lower and
    md5_number_upper into macros by @Mytherin in #13068
  * Internal #2534: IGNORE NULLS Threading by @hawkfish in #13065
  * Variable Integer Size Type by @pdet in #13015
  * Simplify binding of CALL statement by @Mytherin in #13074
  * Fix #13045: flatten in list_inner_product by @Mytherin in #13076
  * Fix for unpivot on zero columns by @Mytherin in #13073
  * Add support for overloading to macros by @Mytherin in #13062
  * Internal #2534: Windowed FILTER Threading by @hawkfish in #13086
  * Fixup #12579, remove pessimizing std::move by @carlopi in #13089
  * [CSV Reader] Fix when reading overbuffer values of csv files with extra
    delimiter by @pdet in #13081
  * Making error messages more clear for new line delimiter errors by @pdet in
    #13082
  * [CSV Sniffer] Sniffer can now sniff files with extra delimiters by @pdet in
    #13083
  * Remove test in Pyodide due to weird pandas interactions by @carlopi in #
    13091
  * Add support for SQL-level variables by @Mytherin in #13084
  * Fix wasm CI and add missing template argument by @carlopi in #13094
  * Some clang tidy fixes around narrowing casts by @carlopi in #13105
  * chore: PushdownAggregate fast path by @lichuang in #13098
  *
      + fix list_distance & list_cosine_similarity execute fail when list i??
        by @flashmouse in #13090
  * [Explain] Add EXPLAIN (FORMAT JSON) syntax by @Tishj in #12967
  * Expected errors 2053 by @hmeriann in #13107
  * [Bug] Enum types not being found if created in a schema by @pdet in #13106
  * Parquet reader can now read files with duplicate column names by @hannes in
    #13111
  * Prefer aliases over column-value functions in GROUP BY, and prefer error
    message when alias is used in an expression by @Mytherin in #13118
  * Disallowing DISTINCT, FILTER and ORDER BY for UNNEST by @hannes in #13110
  * Feature #1272: Windowed DISTINCT Sink by @hawkfish in #13093
  * adjust list value logic execute seq by @flashmouse in #13114
  * add CORE_EXTENSIONS build flag by @samansmink in #13116
  * [Python] Add missing options for read_csv by @Tishj in #12872
  * Fix merge conflict by @Mytherin in #13126
  * Retry on HTTP failure in extension install by @Mytherin in #13122
  * Clean up ChunkInfo when cleaning up a transaction by @Mytherin in #13125
  * typo: conjuction -> conjunction by @qsliu2017 in #13127
  * Add duckdb_result_error_type that returns the exception type of the error
    by @Mytherin in #13131
  * Keep track of user-provided configuration options, and compare them as well
    for database instance caching purposes by @Mytherin in #13129
  * Disable sniff_csv when enable_external_access is not set by @hannes in #
    13133
  * Internal #2577: Window Atomic Finalize by @hawkfish in #13117
  * Internal #2577: Window Tree Allocation by @hawkfish in #13119
  * Fix optimizer error when dealing with IN with a single NULL parameter by
    @Mytherin in #13139
  * Internal #2597: Ragged Validity Array by @hawkfish in #13137
  * Create file with O_EXCL flag set. by @mkaruza in #13123
  * better CE for comparisons that use =, !=, <, <=, >, >=. by \ 
@Tmonster in #
    13130
  * Use Slurm env vars to manage cpu and memory allocation if run inside Slurm
    HPC job by @dirkpetersen in #12978
  * Fix CTEFilterPusher optimization by @kryonix in #13142
  * Test with recent threadsanitizer by @carlopi in #13124
  * Fixes for RegexFindAll function errors and multibyte character support by
    @chrisiou in #13108
  * clang-tidy: rework Makefile and CI by @carlopi in #13101
  * Extension updates to also be logged via enable_http_logging by @carlopi in
    #13087
  * Hooks now get an error to indicate transaction/query success. by
    @NiclasHaderer in #13136
  * Use alias bind path in ORDER BY when running COLLATE by @Mytherin in #13140
  * Implementation of recursive JSONPath expressions by @robert-s01 in #12991
  * Adding option to disable materialized cte optimization by @pdet in #13146
  * [Python] Fix issue with native UDFs returning STRUCT items by @Tishj in #
    13147
  * CGroups: fix compilation due to UB cast by @carlopi in #13151
  * test_expression.py: Skip throw related test on Windows by @carlopi in #
    13157
  * Replaced while loop with if statement by @NiclasHaderer in #13161
  * ThreadSanitizer: Avoid spurious data race in
    InsertMatchesAndIncrementMisses by @carlopi in #13179
  * Add 'bugprone-narrowing-conversions' clang-tidy check by @carlopi in #13180
  * [C API] Return duckdb_value in duckdb_profiling_info_get_value by
    @taniabogatsch in #13160
  * Fix #13120: implement StructFilter::ToExpression by @Mytherin in #13182
  * Feature #1272: Windowed DISTINCT Sort by @hawkfish in #13150
  * Add native list_has_any implementation by @Maxxen in #13163
  * Add pragma extension versions by @samansmink in #13063
  * [C API] Add duckdb_scalar_function_set_volatile that allows changing
    FunctionStability of a scalar function by @Mytherin in #13186
  * [CSV Sniffer] Give preference to configurations that ignore the least
    amount of lines by @pdet in #13188
  * Fix #13017 - if grabbing the lock fails due to it not being supported,
    allow this in read-only mode by @Mytherin in #13189
  * Add test_collate_pivot: used to fail in 1.0.0, add to avoid regressions by
    @carlopi in #13190
  * Add catalog_error_max_schemas setting that toggles how many schemas we look
    at for "did you mean..." style error messages by @Mytherin in #13191
  * Fix build error when compiling with -DDISABLE_EXTENSION_LOAD=1 by
    @whatsthecraic in #13194
  * Add clang-tidy-diff script, and invoke it on PRs by @carlopi in #13158
  * [Explain (mostly internal only)] Change the way key-value pairs of
    information are stored for RenderTreeNodes by @Tishj in #13109
  * Fixup invocation of clang-tidy by @carlopi in #13216
  * [Julia] fix Vector and DataChunk all_valid() checks by @aplavin in #13210
  * Fix broken explain (format json) test by @Mytherin in #13218
  * Linux 32: avoid packaging Jemalloc, due to regression by @carlopi in #13156
  * feat(c): create value support by @Mytherin in #13203
  * feat(c): create value support by @Mause in #12140
  * fix: 13077: use tmp file for secret writes by @devanbenz in #13170
  * Filter paths before scripts/clang-tidy-diff.py by @carlopi in #13220
  * [CSV Reader/Progress Bar] Fixes by @pdet in #13207
  * Use poll in httplib by @Mytherin in #13223
  * Fix several fuzzer issues by @Mytherin in #13240
  * Fix #13238 - cannot return constant vector for volatile functions with more
    than one row as input by @Mytherin in #13241
  * Rename FORCE_CHECKPOINT to ALWAYS_CHECKPOINT by @Mytherin in #13242
  * C API test fix - correctly use length also in non-inlined case by @Mytherin
    in #13243
  * Rollback optimistic writers when all rows we have inserted are deleted by
    @Mytherin in #13236
  * Add serialization support and fix ToString of ChangeOwnershipInfo by
    @Mytherin in #13233
  * Fix #13200: Transactions that update tables need to keep the underlying row
    group collection alive to ensure we can safely clean-up by @Mytherin in #
    13230
  * [CSV Reader] Comment Option by @pdet in #13162
  * Fix foreign key lookups from different search path by @ywelsch in #13256
  * Add aggregate function support to the C API by @Mytherin in #13229
  * Feature #1272: Window Task Blocking by @hawkfish in #13249
  * Implement #4318: add overload for pg_get_constraintdef by @Mytherin in #
    13258
  * Several fuzzer fixes by @Mytherin in #13261
  * Correctly add profiling information from finalize events to operator
    timings in EXPLAIN ANALYZE by @Mytherin in #13260
  * Issue #13250: Zero Time Buckets by @hawkfish in #13271
  * Add delta to CI by @samansmink in #13219
  * Remove outadated test that fails somehow randomly and doesn't add much by
    @carlopi in #13276
  * Fix casts logic by @carlopi in #13275
  * Executor profiler fix by @Mytherin in #13282
  * Avoid clang-tidy-diff to check Python sources or extension folder by
    @carlopi in #13279
  * Enable yacc stack growing by @Mytherin in #13280
  * Fix #13272: correctly read signed integer stats for TIMETZ by @Mytherin in
    #13283
  * [Upsert] Fix crash caused by scanning an empty LocalTableStorage by @Tishj
    in #13281
  * Internal #2681: IEJoin Progress by @hawkfish in #13284
  * Move to latest duckdb-wasm (fixing COI compilation) by @carlopi in #13257
  * [DEV] CSV Tests Refactor and Sniffer decoupled of the vector size by @pdet
    in #13231
  * [TemporaryFileManager] Fix bug causing sizes of .block files to not be
    counted towards max_temp_directory_size by @Tishj in #13278
  * [CSV Reader] Properly cleanup invalid rows by @pdet in #13262
  * Disable website docs CI run by @Mytherin in #13288
  * Window Task Scheduling: avoid blocking tasks during GETDATA by @Mytherin in
    #13290
  * Fix #12582: correctly deal with empty grouping sets mixed with non-empty
    ones in lateral joins/correlated subqueries by @Mytherin in #13291
  * Reduce memory usage of test by @Mytherin in #13292
  * Move back from handrolled checkout to GH action + skip some verification in
    memory-intensive tests in CI by @carlopi in #13296
  * C API extensions by @samansmink in #12682
  * Secret settings cascade by @samansmink in #13167
  * Fix CMake for when folders are not git folders via git rev-parse
    --is-inside-work-tree by @carlopi in #13315
  * [Dev] Fix breakage caused by adjusting duckdb.h directly by @Tishj in #
    13321
  * CAPI extensions: Fixup list of exported functions for wasm by @carlopi in #
    13320
  * [Python Dev] Make cursor creation threadsafe, perform compaction on the
    internal vector by @Tishj in #13319
  * [Dev] Make (previously implicit) assertion explicit for
    DuckTransactionManager by @Tishj in #13307
  * [PySpark] Fix filter type checking and isin column expression return type
    by @khalidmammadov in #13294
  * Fix clang-format version in CONTRIBUTING.md by @JelteF in #13324
  * Expected errors 2053 by @hmeriann in #13322
  * Fix #13237: fix .mode insert float column output by @flashmouse in #13308
  * Add CUMULATIVE_CARDINALITY metric by @maiadegraaf in #13234
  * Fuzzer #3113: Lead Lag Shift by @hawkfish in #13330
  * Implemented list_extract with VectorOperations::Copy by @Maxxen in #13313
  * Issue template: Fix Arrow extension link by @szarnyasg in #13333
  * NO_PARTITION_COLUMNS option to skip partition writes for Parquet copy by
    @ykskb in #12886
  * Format Python README by @szarnyasg in #13340
  * Bug/Regression fixes by @lnkuiper in #13317
  * Enable unnesting lists of arrays by @Maxxen in #13342
  * Limit relation has wrong relation type by @pdet in #13343
  * [Dev] Remove redundant variable from SQLStatement by @Tishj in #13341
  * Internal #2722: Partition State Threading by @hawkfish in #13350
  * Adding hyperbolic trigonometric functions by @nickgerrets in #13346
  * CSV Sniffer - Error Messages by @pdet in #13355
  * Fix a typo by @SYaoJun in #13360
  * Add PySpark head, take and first functions by @khalidmammadov in #13349
  * [Explain] Add the GRAPHVIZ format for EXPLAIN statements by @Tishj in #
    13201
  * Time cast: Have same behavior as Postgres by @pdet in #13267
  * Fix reordering semi joins by @Tmonster in #13335
  * Fix appian join tests by @Tmonster in #13356
  * remove sqlsmith patch by @Tmonster in #13334
  * Support Json Types in CSV Reader by @pdet in #13359
  * [CSV Sniffer] Date/Timestamp Sniffing adjustment by @pdet in #13168
  * WAL: Write pointers to optimistically written row groups directly, instead
    of copying over the data by @Mytherin in #13372
  * [Metrics] Add CUMULATIVE_ROWS_SCANNED and OPERATOR_ROWS_SCANNED by
    @maiadegraaf in #13354
  * [Transformer] Fix loss of named parameter data in recursive
    TransformStatement calls by @Tishj in #13344
  * Feature #1272: Window Distinct Merging by @hawkfish in #13329
  * Refine heuristic for flipping join sides by @lnkuiper in #13399
  * Update jemalloc and re-enable opt.retain by @lnkuiper in #13370
  * Add native list_has_all implementation by @Maxxen in #13401
  * Feature #1272: Window Distinct Indices by @hawkfish in #13394
  * [Arrow] Support consuming an "arrow_array_stream" PyCapsule by \ 
@Tishj in #
    13386
  * Sample at least one value for the hyperloglog by @Tmonster in #13383
  * Fix issues with JSON map inference by @lnkuiper in #13387
  * Compressed materialization for joins by @lnkuiper in #13402
  * Python installation: Recommend using pip by @szarnyasg in #13357
  * [Python UDF] Filter NULL values before calling the user defined function by
    @Tishj in #13358
  * Add support for scalar function overloads to the C API by @Mytherin in #
    13409
  * Fix unused variable, resolve warning turned error in the amalgamation CI by
    @carlopi in #13408
  * Add support for aggregate function overloads to the C API by @Mytherin in #
    13410
  * Fix lossy double cast issue by @lnkuiper in #13411
  * Buffer manager: set handle readers after I/O so that any I/O exceptions
    don't leave the readers with an invalid value by @Mytherin in #13417
  * fix undefined symbol in httpfs for python by @cyberjunk in #13420
  * Fix dsdgen args by @Tmonster in #13421
  * [Arrow] Support producing an "arrow_array_stream" PyCapsule by \ 
@Tishj in #
    13418
  * Disable jemalloc on 32bit through cmake, not through a CI script by
    @lnkuiper in #13433
  * allow changing the default persistent secret storage after initialization
    by @samansmink in #13434
  * Fixing hugeint cast to varint by @pdet in #13268
  * [Explain] Add the HTML format for EXPLAIN statements by @Tishj in #13202
  * fix for the issue 2698 by @hmeriann in #13440
  * Avoid rounding errors and simplify memory assignments in
    TemporaryMemoryManager by @lnkuiper in #13439
  * Pull up filters from and through explicit joins by @lnkuiper in #13431
  * [Metadata] Populate the expressions column of duckdb_indexes by @Tishj in #
    13415
  * Use LossyNumericCast while reading memory limits by @carlopi in #13450
  * Label timestampTZ to timestamp cast as not revertible by @Tmonster in #
    13206
  * Prevent the query thread from picking up query unrelated tasks if compiled
    with DUCKDB_NO_THREADS by @NiclasHaderer in #13326
  * [Dev] Skip test on lower pyarrow versions by @Tishj in #13463
  * Add TPCDS sf-100 benchmarks by @hmeriann in #13205
  * [Python] Let create_function cancel an open transaction instead of failing
    by @Tishj in #13462
  * [Dev] Mention non-unique indexes in UPSERT DO UPDATE SET error by @Tishj in
    #13465
  * Issue #13380: IN Invertible Casts by @hawkfish in #13441
  * Compilation Fixes for GCC 4.8 by @hannes in #13474
  * [Dev] Make Binder::Binder a private constructor by @Tishj in #13475
  * [Arrow] Accept objects that provide the __arrow_c_stream__ producer method
    by @Tishj in #13425
  * [Lambdas] Support N-ary lambdas in the list comprehension syntax by @Tishj
    in #13389
  * [METRICS] Add blocked_thread_time Metric by @maiadegraaf in #13430
  * Add ifdef to allow generating code with newer versions of Bison by
    @Mytherin in #13477
  * Clean up rendered text trees by @Mytherin in #13476
  * Make CMake target exports relocatable by @cryos in #13312
  * Disable delta extension on windows for now by @Mytherin in #13485
  * Regression runner - don't fail on HTTP error by @Mytherin in #13486
  * ExecutorTask: flush before finalizing task by @Mytherin in #13482
  * [Metrics] Rework Optimizer Metrics by @maiadegraaf in #13480
  * Support collations in ordered aggregates by @Mytherin in #13491
  * ci: minor optional cleanup for cibuildwheel config by @henryiii in #13496
  * chore: remove wheel dependency by @henryiii in #13495
  * Prefer depth-first plan evaluation for unions and joins by @lnkuiper in #
    13447
  * Fix #13472: get correct WAL location for windows long paths by @Mytherin in
    #13487
  * Make error message more explicit for when trying to parse SQL types. by
    @pdet in #13376
  * [Arrow] Add UUID and JSON extension types by @pdet in #13446
  * Apply extension patches via 'patch' instead of 'git apply' by @carlopi in #
    13488
  * Feature #1272: Window Distinct Tree by @hawkfish in #13503
  * Scalar macro default params by @Alex-Monahan in #13494
  * Add Varint to AllTypes() by @pdet in #13388
  * [ADBC] Support creation and ingestion into temporary tables. by @pdet in #
    13426
  * Add support for registering custom casts (and types) through c api by
    @Maxxen in #13499
  * Bump sqlite & mysql by @carlopi in #13515
  * Switch floating point division and modulo to use IEEE semantics for
    division by zero by default, and add ieee_floating_point_ops setting that
    can be used to revert back to old behavior by @Mytherin in #13493
  * [C API] Get all metrics by @taniabogatsch in #13497
  * Tuning ART indexes for duplicate values by @taniabogatsch in #13373
  * Feature #1272: Windowed Quantile Tree by @hawkfish in #13516
  * [Auto Loading] Autoload extension settings by @Tishj in #12790
  * JSON bugfixes and new functions by @lnkuiper in #13481
  * Make changes to relation.hpp backward compatible with older API via default
    parameters by @carlopi in #13522
  * Preserve cardinality information by @jeewonhh in #13517
  * Return an error when multiple rows are returned from a scalar subquery by
    @Mytherin in #13514
  * When referencing optimistically-written blocks in the WAL, we need to fsync
    the main database file before writing the WAL to ensure all changes have
    made it to disk by @Mytherin in #13526
  * Remove assertion in compressed file system by @Maxxen in #13531
  * Skip empty files in single-threaded CSV reader by @pdet in #13528
  * Disallow ordering by non-integer literal by default - and add the setting
    order_by_non_integer_literal to revert to the previous behavior by
    @Mytherin in #13532
  * Produce an empty list result for enum_range(NULL::enum_type) by @pdet in #
    13530
  * [CSV Reader] Fix for invalid unicode in header by @pdet in #13518
  * Issue #13525: Window Local States by @hawkfish in #13538
  * Linux32 also to regular ci by @carlopi in #13547
  * Feature #1272: Windowed Distinct Tree by @hawkfish in #13527
  * Bump GitHub workflows to their latest versions by @deining in #13393
  * Add map_contains, map_contains_entry and map_contains_value functions,
    list_position now returns null. by @Maxxen in #13406
  * Numeric casts: forbid NumericCasts for float/double, add Lossy and Exact
    equivalent to make syntax explicit by @carlopi in #13546
  * Fix clang-tidy on insertion_order_preserving_map.hpp: Alter order of
    statements by @carlopi in #13556
  * Add http proxy by @samansmink in #13368
  * move the inet extension out-of-tree by @chrisiou in #13085
  * Fix compilation: install extension needs an instance now by @Mytherin in #
    13565
  * Initialize (potentially) empty buffer by @lnkuiper in #13564
  * HTTP glob test fix by @Mytherin in #13563
  * Remove patches (vss and substrait), bump other repositories by @carlopi in
    #13551
  * Disable dynamic filter pushdown for right semi joins by @Mytherin in #13562
  * postgres_scanner: bump & remove patches by @carlopi in #13567
  * Optimistic write to WAL: cannot write block pointers if we have in-memory
    updates to transaction local storage by @Mytherin in #13577
  * Add all CAPI functions to extension api for now by @samansmink in #13568
  * Minor fixes for DuckDB-Wasm by @carlopi in #13566
  * Fix for vector size 2 tests by @Mytherin in #13569
  * [CSV Sniffer] Date Adjustment by @pdet in #13573
  * Fix issues found by alternative verify by @Mytherin in #13578
  * Set version info for duckdb.dll by @Giorgi in #13557
  * Update storage info by @szarnyasg in #13483
  * Constrain size of estimated cardinality returned when operator is not
    initialized by @Mytherin in #13574
  * Unify task (un)blocking in physical operators by @lnkuiper in #13559
  * [CSV Reader] Fix lock issue on Global CSV Reader by @pdet in #13560
  * TIMETZ group by: collations now no longer always return VARCHAR by
    @Mytherin in #13571
  * Internal #2850: Window Local States by @hawkfish in #13581
  * Two steps upload action by @carlopi in #13582
  * Use new HLL implementation in DistinctStatistics by @lnkuiper in #13489
  * Remove inet from extension update test by @Mytherin in #13589
  * [METRICS] Small fixes by @maiadegraaf in #13575
  * Fix #13537: correctly maintain parameter count when rebinding a prepared
    statement by @Mytherin in #13583
  * Various nightly test fixes by @Mytherin in #13584
  * IE Join: turn these into atomics to prevent tsan from tripping up in
    GetProgress by @Mytherin in #13586
  * Fix HTTPFS tests by @Mytherin in #13588
  * [PyArrow] Fix issue with passing timestamp types to filters by @pdet in #
    13593
  * Fuzzer fixes by @Tmonster in #13596
  * Automatically call malloc_trim to reduce unused outstanding allocations by
    @lnkuiper in #13590
  * Fix for joins and FSST on 32-bit configurations by @Mytherin in #13594
  * Casting to Bit is no longer Invertible by @Tmonster in #13595
  * Switch in-tree DuckDB extension to use DuckDB's semver tag by @samansmink
    in #13591
  * List has bind fix by @Maxxen in #13600
  * Do not include version.rc file on MINGW by @Giorgi in #13601
  * [Python RelAPI] Throw an error if trying to use a invalid argument in
    read_csv by @pdet in #13597
  * More nightly test fixes by @Mytherin in #13605
  * Optimistic write to WAL: we cannot optimistically write block pointers if
    there are indexes by @Mytherin in #13610
  * Block verification run and FixedSizeBuffer fix by @taniabogatsch in #13607
  * [Test] Tighter ART storage regression boundaries by @taniabogatsch in #
    13612
  * Disable JEMALLOC_HAVE_MADVISE_HUGE in jemalloc by @lnkuiper in #13608
  * Avoid adding buffers that will be destroyed to the eviction queue by
    @lnkuiper in #13606
  * Track overflow strings in PartialBlockManager during optimistic write by
    @Mytherin in #13618
  * [Fix] Avoid index deletion after catalog exception by @taniabogatsch in #
    13627

Files:
RevisionActionfile
1.5modifypkgsrc/databases/duckdb/Makefile
1.4modifypkgsrc/databases/duckdb/PLIST
1.3modifypkgsrc/databases/duckdb/distinfo