head 1.8; access; symbols pkgsrc-2026Q2:1.6.0.2 pkgsrc-2026Q2-base:1.6 pkgsrc-2026Q1:1.5.0.2 pkgsrc-2026Q1-base:1.5 pkgsrc-2025Q4:1.4.0.2 pkgsrc-2025Q4-base:1.4 pkgsrc-2025Q3:1.3.0.2 pkgsrc-2025Q3-base:1.3 pkgsrc-2025Q2:1.2.0.2 pkgsrc-2025Q2-base:1.2; locks; strict; comment @# @; 1.8 date 2026.07.21.14.55.20; author ryoon; state Exp; branches; next 1.7; commitid mjofQWtjSizM1xOG; 1.7 date 2026.06.28.15.41.11; author wiz; state Exp; branches; next 1.6; commitid hjtQh9zHnnKc1ALG; 1.6 date 2026.05.30.15.37.31; author ryoon; state Exp; branches; next 1.5; commitid bppIJV3BC69SVQHG; 1.5 date 2026.02.01.08.40.05; author ryoon; state Exp; branches; next 1.4; commitid 5ScBnT2VfAlPpEsG; 1.4 date 2025.10.09.07.57.27; author wiz; state Exp; branches; next 1.3; commitid t4nMY0Dt3rBjSRdG; 1.3 date 2025.07.03.19.18.03; author wiz; state Exp; branches; next 1.2; commitid VtH4NTLuuL94Nk1G; 1.2 date 2025.06.18.08.14.36; author wiz; state Exp; branches; next 1.1; commitid aXVXVh78FFBsBlZF; 1.1 date 2025.06.15.13.31.39; author ryoon; state Exp; branches; next ; commitid ddMQi4abKJWfsZYF; desc @@ 1.8 log @databases/py-duckdb: Update to 1.5.4 Changelog: 1.5.4: What's Changed in DuckDB-Python Make rel->query work with a read only connection by @@evertlammerts in #471 Ignore Polars dynamic predicates by @@evertlammerts in #482 Accept pathlib.Path, os.PathLike, bytes, and file-like objects in read_parquet/from_parquet by @@evertlammerts in #489 Unify arrow exports across all query result types by @@evertlammerts in #495 @ text @# $NetBSD: Makefile,v 1.7 2026/06/28 15:41:11 wiz Exp $ DISTNAME= duckdb-1.5.4 PKGNAME= ${PYPKGPREFIX}-${DISTNAME} CATEGORIES= databases MASTER_SITES= ${MASTER_SITE_PYPI:=d/duckdb/} MAINTAINER= ryoon@@NetBSD.org HOMEPAGE= https://pypi.org/project/duckdb/ COMMENT= Python module for DuckDB in-process database LICENSE= mit DIST_SUBDIR= py-duckdb-${PKGVERSION_NOREV} TOOL_DEPENDS+= ${PYPKGPREFIX}-setuptools-[0-9]*:../../devel/py-setuptools TOOL_DEPENDS+= ${PYPKGPREFIX}-setuptools_scm-[0-9]*:../../devel/py-setuptools_scm TOOL_DEPENDS+= ${PYPKGPREFIX}-scikit-build-core-[0-9]*:../../devel/py-scikit-build-core TOOL_DEPENDS+= ninja-build-[0-9]*:../../devel/ninja-build USE_LANGUAGES+= c c++ USE_TOOLS+= cmake PYTHON_VERSIONS_INCOMPATIBLE= 310 311 WHEEL_ARGS+= -C skbuild.build-dir=${WRKDIR}/build post-patch: ${MKDIR} ${WRKSRC}/build .include "../../lang/python/wheel.mk" BUILDLINK_DEPMETHOD.py-pybind11= full .include "../../devel/py-pybind11/buildlink3.mk" .include "../../math/py-numpy/buildlink3.mk" .include "../../security/openssl/buildlink3.mk" .include "../../textproc/icu/buildlink3.mk" .include "../../mk/bsd.pkg.mk" @ 1.7 log @*: limit Python versions due to py-numpy dropping Python 3.11 support @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.6 2026/05/30 15:37:31 ryoon Exp $ d3 1 a3 1 DISTNAME= duckdb-1.5.3 @ 1.6 log @databases/{duckdb,py-duckdb}: Update to 1.5.3 Changelog: 1.5.3: What's Changed * Use DB serialization compatibility for json_serialize_sql by @@kryonix in #22004 * DuckLake Bump by @@pdet in #22014 * fix: resolve current catalog in ADBC Ingest to avoid temp table shadowing by @@eitsupi in #22020 * Fix TIMESTAMPFORMAT being ignored for TIMESTAMPTZ columns in copy to json by @@DinosL in #21992 * Provide BWC support for join filter pushdowns by @@ywelsch in #22029 * Add iceberg copy function autoload by @@NiclasHaderer in #22037 * Fix DISABLE_EXTENSION_LOAD by @@mlafeldt in #22019 * Fix |INSERT OR REPLACE BY NAME| regression by excluding conflict columns from |SET| list by @@DinosL in #22049 * Git-ignore generated extension loader by @@mlafeldt in #22056 * Fix constant struct args in lateral table in-out functions by @@AlfieJones in #21827 * Avoid handling Ctrl+C during shutdown (state might be already gone) by @@carlopi in #22059 * Add |DISABLE_BUILTIN_HTTPLIB| option by @@carlopi in #22054 * Set |query| field for statements in |ALTER TABLE ... ADD COLUMN ... DEFAULT ...| workaround by @@yan-alex in #22057 * Coorporative tasks might lead to busy spinning in |TaskExecutor::WorkOnTasks| by @@NiclasHaderer in #22092 * Row group append by @@evertlammerts in #22060 * Fix empty parquet child schema by @@dentiny in #22105 * Issue #22096 : TopN Window Casts by @@hawkfish in #22098 * Add support for reading |VARIANT| using C API by @@Dtenwolde in #22065 * Bump Julia to v1.5.2 by @@taniabogatsch in #22121 * fix commit iteration offset bug + relax RemoveFromIndexes assertion by @@artjomPlaunov in #22094 * Internal #8812 : From TIMESTAMPTZ Casts by @@hawkfish in #22000 * Only build plan_serializer when building the main DuckDB library by @@rustyconover in #22100 * Fix Row Group Pruner Distinct Bug by @@d-justen in #22132 * Correctly skip preprocessing PIVOT MultiStatements by @@yan-alex in #22141 * fix(adbc): report the table name if the table doesn't exist when appending by @@eitsupi in #22146 * [v1.5 patch] Attempt to fix cache read by @@dentiny in #22126 * Also execute auto-rollback on CLI ClientContext::Query() query by @@yan-alex in #22159 * Fix window self join optimizer by @@kryonix in #22164 * Account for ROW_GROUP_SIZE when deciding whether to append to an existing row group by @@evertlammerts in #22109 * Use the latest storage version for temp storage by @@Mytherin in #22169 * Fix: Add pg_catalog.pg_collation compatibility view for SQLAlchemy 2.0.45 reflection by @@alonfaraj in #22160 * Fix CSV escape by @@dentiny in #22176 * Fix union_by_name remap for non-nested parquet columns by @@feichai0017 in #22177 * User-facing |enable_caching_operators| setting by @@lnkuiper in #22191 * Fix bignum sum Combine to correctly take over memory ownership of state by @@Mytherin in #22209 * CompressedFile::Close -> calls Close on its child_handle by @@benfleis in #22149 * ISSUE-22061: Fix JSON shell output: emit BOOLEAN as true/false, not strings by @@herbenderbler in #22073 * [Bugfix] Reset pg_err_pos in pg_parser_init to prevent stale error position leaking by @@p1p1bear in #22239 * Bump httpfs to 3139e40a by @@carlopi in #22248 * Correctly use new row group when checkpointing, and avoid incorrectly re-using metadata when targeting older storage versions and row ids have changed by @@Mytherin in #22253 * Fix: release ParquetReader when a file is marked SKIPPED in multi- file scan by @@J-Meyers in #22261 * Fix UTC±NN00 cannot be parsed in SQL by @@tianjq16 in #22244 * Defer Bloom Filter Pushdown until it's done by @@lnkuiper in #22218 * [v1.5] Backport ADBC memleak fix on error path by @@dentiny in #22216 * Allow package builds to choose linked extensions by @@mlafeldt in #22305 * Fix UTC+HHMM time zone was parsed incorrectly by @@tianjq16 in #22297 * Bump httpfs by @@carlopi in #22312 * Exception format: accept string literals by @@carlopi in #22314 * Skip schema analysis even if no shredding for rowgroup by @@rgernhardt in #21937 * Use batch limit for table scans with filters by @@Mytherin in #22315 * Also redacting bearer token for HTTP secrets by @@hannes in #22323 * First initialize system, then load extensions (to peek at file to be opened) by @@carlopi in #22341 * Node Handle Scoping fix by @@artjomPlaunov in #22344 * Enable windows_amd64 for lance extension by @@carlopi in #22367 * Internal #9003 : TIMETZ Parsing Limit by @@hawkfish in #22378 * Downcasting decimal fix incorrect out of range error by @@Dtenwolde in #22386 * GetLocalFileSystem improvements by @@carlopi in #21983 * Fix double decrement of evicted_data_per_tag in .block read-back by @@krleonid in #22394 * RowGroup Operator metrics: sequentially scanned row groups + total row groups + cumulative counterparts by @@artjomPlaunov in #22339 * PostgreSQL compatability: in |pg_catalog.pg_database| simulate columns datallowconn, datistemplate by @@muayyad-alsadi in #22302 * Fix eviction size metrics report by @@dentiny in #22452 * Fix enable_logging() silently resetting logging_storage by @@guillesd in #22475 * Avoid 3 instances of idx_t - idx_t > 0, and avoid unnecessary check on zLine by @@carlopi in #22518 * Fix RESET my_global_extension_setting to actually be GLOBAL by @@carlopi in #22520 * Fix BlockAllocator invalid memory access by @@dentiny in #22503 * Patch httplib by making ThreadPool constructor more solid on pthread_create failures by @@carlopi in #22516 * Fix duck fuzz #4430 by @@dentiny in #22435 * Test runner: avoid running clean-up routine if there is no database to run it in by @@Mytherin in #22540 * Fix bare numeric interval parsing at end of string on v1.5 by @@M1llerF in #22534 * Fix parquet metadata cache validation by @@dentiny in #22547 * ExtensionInstall: Remove use of IsHTTP to IsRemoteFile by @@carlopi in #21900 * Fix variant write small decimal by @@dentiny in #22544 * Move http_proxy setting to global setting, and use GetEnvVariable('HTTP_PROXY') as default by @@carlopi in #22541 * Bump httpfs and remove patches by @@carlopi in #22556 * Bump Postgres, MySQL and ODBC by @@staticlibs in #22579 * Bump avro, azure, delta, ducklake, spatial, unity_catalog and vortex by @@carlopi in #22554 * Fix variant selection vector index by @@dentiny in #22573 * Fix for SIGABRT in setting size on zero-capacity vector by @@ccfelius in #22571 * Fix incorrect profiling results when using |LIMIT| by @@sebastiaan-dev in #22561 * Move Jemalloc into core by @@Maxxen in #22558 * Allow json ts format variation across columns - issue 22103 by @@benfleis in #22559 * Limit parallel linker jobs to avoid out-of-memory errors by @@smvv in #22588 * ARTOperator::Delete return false if rowid not found in nested ART leaf by @@artjomPlaunov in #22591 * Enable/disable jemalloc linking through BUILD/SKIP_EXTENSIONS by @@Maxxen in #22594 * Bump AWS extension by @@staticlibs in #22600 * bump spatial again by @@Maxxen in #22602 * Jemalloc is not an extension anymore by @@carlopi in #22603 * bump iceberg by @@Tmonster in #22608 * CUMULATIVE_VACUUM_TIME metric by @@artjomPlaunov in #22425 * parser_tools is apparently now a dependency for postgres by @@carlopi in #22619 * Bump DuckLake for release by @@pdet in #22651 * Bump lance to 533e0ee6cf419e4be2af3af56182fb04b87978e1 by @@carlopi in #22640 * Add storage informations for v1.5.3 by @@carlopi in #22638 * Add quack autoloading by @@carlopi in #22631 * Add |quack| extension by @@carlopi in #22614 * bump aws extension by @@samansmink in #22623 * bump avro+iceberg+vcpkg-duckdb-ports by @@Tishj in #22621 * optimizer: don't return truncated VARCHAR MIN/MAX from statistics by @@nahomar in #22538 * Bump excel / remove patch by @@carlopi in #22633 * Bump sqlsmith, remove patch by @@carlopi in #22622 * Fix free block for temporary file manageer by @@dentiny in #22616 * Add dummy cmake target for jemalloc by @@evertlammerts in #22632 * Bump quack by @@carlopi in #22659 * Fix invalid access for file row number by @@dentiny in #22662 * Fix enum type write to parquet by @@dentiny in #22677 * Add |write_buffer_row_group_memory_limit| setting which controls when to flush row groups based on memory instead of only based on row group count by @@Mytherin in #22666 * Fix max file row number by @@dentiny in #22688 * Fix new jemalloc plumbing by @@mlafeldt in #22628 * Bump DuckLake by @@pdet in #22698 * Fix timer lifetime/timing issues by @@taniabogatsch in #22697 * Enable jemalloc heap profiling with the libgcc unwinder by @@mlafeldt in #22630 * Fix jemalloc thread flush threshold check by @@xuke-hat in #22670 * Make several storage internals public by @@samansmink in #22718 * Fix GCC jemalloc symbol leakage CI failure by @@lnkuiper in #22729 * Fix iterator invalidation in ConnectionManager::GetConnectionList by @@bleskes in #22719 * Bump quack, fixes quack_serve on wasm by @@carlopi in #22722 * bump iceberg again by @@Tmonster in #22723 * fix: list_zip SEGFAULT with empty / NULL argument by @@carlopi in #22726 * Fix .sanitizer-thread-suppressions.txt jemalloc ref by @@carlopi in #22736 * Revert "Enable jemalloc heap profiling with the libgcc unwinder" by @@carlopi in #22740 * RowGroupPruner: treat UNSET LIMIT as unbounded by @@ColtenOuO in #22744 * Return an error if a negative number is passed to the factorial function by @@DinosL in #22731 1.5.2: What's Changed * Backport various race condition fixes to v1.4 by @@Mytherin in #20804 * bump ref to azure for v1.4.4 (rebuild) by @@benfleis in #20888 * Internal #7584 : AsOf Simple Joins by @@hawkfish in #21090 * Do not write ccache to github cache for v1.4-andium by @@smvv in #21109 * Disable extension caching for v1.4 to free github cache space by @@smvv in #21150 * Disable save_cache for v1.4-andium by @@smvv in #21167 * Backport #19232 : allow * Not similar to 'pattern' by @@Dtenwolde in #21177 * backport zstd PR to 1.4 by @@artjomPlaunov in #21178 * Fix unbounded row group growth for indexed tables on repeated load+insert cycles by @@abramk in #21316 * Backport #21271 by @@artjomPlaunov in #21326 * [lance] Add for v1.4-andium by @@carlopi in #21410 * add lance for v1.4 by @@samansmink in #21113 * Correctly detect overflows when decoding integers from storage by @@Mytherin in #21482 * Correctly revert dictionary size when reverting string appends by @@Mytherin in #21489 * Add descriptions for vortex and lance by @@carlopi in #21500 * Fixup Write bytes are counted as BYTES_WRITTEN by @@carlopi in #21501 * Fix memory leak when reusing PreparedStatement (#21089 ) by @@wzharies in #21104 * Make some MultiStatements and PRAGMAs Transactional by @@yan-alex in #21171 * Reduce concurrent thread count in test by @@Mytherin in #21511 * Fixing integer overflow in list_resize by @@hannes in #21515 * Fix #21512 : correctly render empty results in .mode json by @@Mytherin in #21517 * Fix parsing test path to skip by @@jeewonhh in #21495 * Add setting for limiting the number of threads launched concurrently in the test runner (|max_test_threads|) by @@Mytherin in #21520 * Unify adding suffixes to path in |Path:: AddSuffixToPath| - fix temp directory split bug by @@Mytherin in #21527 * Correctly deal with negative values in |GetPosixVersionTag|, and fix constant |NULL| struct scans after recent fix by @@Mytherin in #21549 * Fix missing extension static libs in Windows MinGW bundle by @@mlafeldt in #21559 * PEG grammar fixes: Update extension and allow numeric struct keys by @@Dtenwolde in #21331 * [v1.5-variegata] Fix #21514 : ASOF join empty right by @@Pieczasz in #21553 * Fix data path in |test/sql/copy/parquet/parquet_no_stats.test| by @@jeewonhh in #21561 * TopNWindowElimination Column Binding Fix by @@d-justen in #21564 * lance: bump lance-duckdb to 4d9ecab by @@Xuanwo in #21572 * Bump Julia to |v1.5.0| by @@taniabogatsch in #21588 * Bump Julia to |v1.4.4| on |v1.4-andium| by @@taniabogatsch in #21589 * Simplify the way we determine which row groups to checkpoint during checkpoints by @@Mytherin in #21574 * Fix for CSV reader buffer-boundary value read by @@Mytherin in #21577 * CLI: Avoid division by zero when formatting a large result with a non-wide shell by @@Mytherin in #21591 * Backport |__EMSCRIPTEN__| fix by @@Mytherin in #21581 * Fix missing SetSizeAndFinalize in BIGNUM Add for zero result case by @@pdet in #21465 * Segfault due to unchecked malloc/realloc, proposed fix to #21593 by @@wasade in #21594 * Reduce arg_min_max_n heap preallocation by @@feichai0017 in #21467 * Fixed an issue where the describe statement did not work correctly in markdown output mode(ISSUE:#21579 ) by @@ArNine in #21611 * fix unpivot serialization by @@Maxxen in #21595 * Windows shell: enable VT100 processing on startup by @@staticlibs in #21615 * Make PEG Parser use strict mode in CI by @@Dtenwolde in #21590 * Fix #21623 : flatten input chunk in TopNHeap::CheckBoundaryValues by @@Mytherin in #21629 * Issue #21592 : Window Self-Join Framing by @@hawkfish in #21628 * Bump Julia to v1.5.1 by @@taniabogatsch in #21637 * Merge v1.4-andium into v1.5-variegata by @@Mytherin in #21639 * Bump storage version to |v1.5.2| by @@taniabogatsch in #21638 * bump delta and unity_catalog ext refs in v1.5-variegata by @@benfleis in #21640 * Fix cancellation order between pipelines and tasks in CancelTasks by @@carlopi in #21642 * Fix shell completion enter handling by @@atulagrwl in #21552 * fix(adbc): err use after free by @@gishor in #21605 * Fix some Parquet fuzzer issues by @@lnkuiper in #21635 * Re-organize WAL replay slightly, and correctly deal with empty checkpoint WAL files in WAL recovery by @@Mytherin in #21645 * Warn instead of error when trying to persist geometry columns with CRS in old storage format by @@Maxxen in #21649 * Avoid throwing an error when failing to bind views in |duckdb_columns| by @@Mytherin in #21658 * Infer timestamps with timezone in read_json_auto by @@leo-altertable in #21660 * Windows: remove prefix from canonical paths by @@staticlibs in #21652 * CLI: Add .help shortcuts by @@carlopi in #21662 * Internal #8553 : Window TopN Except by @@hawkfish in #21671 * Fix issue with struct filter on missing structs by @@Mytherin in #21676 * Internal #7568 : ASOF SEMI Test by @@hawkfish in #21683 * Fix type check in |st_crs| by @@Maxxen in #21688 * Disable regular updates for geometry by @@Maxxen in #21641 * Fix stoi crash in Arrow format string parsing for w: and +w: types by @@yharby in #21692 * Test runner: Support replacement without dollar (|{i}| instead of |${i}|) in loop iterators by @@Mytherin in #21708 * Internal #8657 : IEJoin Filter Sides by @@hawkfish in #21721 * Add missing test for delta byte array by @@ccfelius in #21714 * Fix variant shredding consistency issue by @@Tishj in #21715 * TopNWindowElimination fixes by @@d-justen in #21663 * Ignore |NULL|/|__HIVE_DEFAULT_PARTITION__| when detecting types by @@lnkuiper in #21731 * fix path test warnings by @@benfleis in #21711 * Allow |SET DEFAULT / DROP DEFAULT| for tables that have dependencies by @@Mytherin in #21729 * Add clickbench by @@c-herrewijn in #21730 * Fix prepared temp-table INSERT invalidation after DROP by @@wordhardqi in #21712 * Allow join filter pushdown through integral up/down casts by @@lnkuiper in #21743 * Allow join filter pushdown for NOP collations by @@lnkuiper in #21742 * counting fix by @@artjomPlaunov in #21733 * [Variant] Re-add the removed |variant_legacy_encoding| setting by @@Tishj in #21710 * Fix update plans when deserializing if type no longer supports regular updates by @@Maxxen in #21718 * Re-instantiate dependencies of tables for |ALTER TABLE ... DROP COLUMN| and |ALTER TABLE .. SET DEFAULT| by @@Mytherin in #21752 * Use correct error message for name conflicts between table and views by @@JelteF in #21760 * Bump spatial by @@taniabogatsch in #21781 * PEG parser strict mode: followup fixes and improvements by @@Dtenwolde in #21709 * Fix DELETE RETURNING for rows inserted in the same transaction by @@rustyconover in #21541 * Disable bloom filter pushdown through casts by @@lnkuiper in #21792 * Bugfixes by @@lnkuiper in #21793 * Bump test utils by @@taniabogatsch in #21795 * Expose HIDDEN as an ATTACH option by @@utay in #21764 * Fix TopN window elimination with external CTE refs by @@feichai0017 in #21686 * Issue #21682 : TopN Window Sets by @@hawkfish in #21775 * Add support for reading geometry type to the C-API by @@Maxxen in #21763 * Fix ADBC data race by @@dentiny in #21800 * Fix Arrow REE INT64 run_ends using wrong template parameter by @@rustyconover in #21847 * Fix integer overflow crash in list repeat function by @@rustyconover in #21873 * [minor] Fix CreateViewInfo::Copy() not copying names by @@LucaSoato in #21819 * Fix case-sensitive default database check allowing detach of default database by @@rustyconover in #21863 * Fix geometry TextWriter corrupting coordinates in scientific notation by @@rustyconover in #21893 * Issue #21820 : TopN Window Projections by @@hawkfish in #21902 * Bump Postgres, MySQL and SQLite by @@staticlibs in #21899 * AddToBeRescheduled: Avoid UB in assigning vs move by @@carlopi in #21912 * vacuum_rebuild_indexes threshold setting by @@artjomPlaunov in #21769 * Fix CSV process over buffer out-of-bound access by @@dentiny in #21840 * Fix is_histogram_other_bin handle null by @@dentiny in #21841 * Merge |v1.4-andium| into |v1.5-variegata| by @@Mytherin in #21919 * Fix in-place update to look only at updated columns by @@jeewonhh in #21922 * Issue #21905 : AGO Overflow Check by @@hawkfish in #21936 * Fix common subplan optimizer bug by @@kryonix in #21932 * Issue #21907 : Invalid Window Macros by @@hawkfish in #21929 * [ART] Fix information loss on index build cast by @@taniabogatsch in #21815 * Improve geometry WKT parsing and add geometry to |test_all_types| v2 by @@taniabogatsch in #21805 * Run ArrowConverter::ToArrowSchema in a transaction by @@evertlammerts in #21927 * Fix invalid memory access when CSV columns less than expected by @@dentiny in #21822 * Use |BLOB|, not |VARCHAR| for row group pruning by @@lnkuiper in #21946 * Add HTTPUtil::CloseClient(...) with trivial no-op implementation, and base_url field to HTTPClient by @@carlopi in #21924 * Fix incorrect results when using |try| within |if| by @@jankramer in #21943 * lance: bump lance-duckdb to 1b4ef68 by @@Xuanwo in #21944 * Fix Arrow union type_ids buffer ignoring chunk_offset by @@rustyconover in #21848 * Make parser override work with parser extensions by @@Dtenwolde in #21761 * [Dev] Bump the |merge_vcpkg_deps| script to bump the baseline of the registry by @@Tishj in #21950 * Bump httpfs to include recent fixes, also adding new no-op setting by @@carlopi in #21949 * Parquet writer: allow partial variant shredding in Parquet, instead of bailing out when a single struct field does not match by @@Mytherin in #21959 * Bump Postgres by @@staticlibs in #21958 * bump iceberg by @@Tmonster in #21967 * [Parquet][VARIANT] Add support for Snowflake-produced shredded VARIANT Parquet files by @@Tishj in #21814 * Make Oids start at 20k to avoid unintended collisions by @@JelteF in #20979 * Unlock transaction lock during fallback WAL write by @@Mytherin in #21969 * bump avro hash by @@Tishj in #21974 * Shred unsigned types in VARIANT when writing to Parquet by @@Mytherin in #21973 * Fix "make clangd" by @@JelteF in #21981 * MERGE INTO - no need to extract logical get, we already know where it is by @@Mytherin in #21984 * Attempt to fix invalid memory access by @@dentiny in #21985 * Json function should be set CanThrow by @@tianjq16 in #21972 * bump azure and delta for v1.5.2 by @@benfleis in #21979 * Bumping DuckLake by @@pdet in #21989 * Bump httpfs, now with implemented httpfs_connection_caching (opt-in) by @@carlopi in #21982 * Revert "Run ArrowConverter::ToArrowSchema in a transaction" by @@evertlammerts in #22007 1.5.1: What's Changed * [Extensions] Preserve |require| order in |InterpretedBenchmark| by @@Tishj in #21214 * CLI: Make help entry uppercase by @@szarnyasg in #21224 * Restore view's bind_state when binding fails by @@jeewonhh in #21193 * [Regression v1.5] Fix INTERNAL Error in UnnestRewriter for deeply nested struct UNNEST by @@guizmaii in #21209 * fix(storage): prevent TrimFreeBlocks from zeroing concurrently alloca… by @@llersch in #21146 * Windows shell: UTF-8 mode when writing to pager by @@staticlibs in #21202 * [Dev] Add internal exception for misuse of |MultiFileReader| method by @@Tishj in #21046 * Before loading libraries in TryAutoLoadExtension check AutoloadKnownExtensions Setting by @@pdet in #21051 * fix: buffer overread in Arrow dictionary conversion with NULLs - fixes crash. by @@rustyconover in #21083 * Avoid misleading GetRequestInfo constructor that takes endpoint + path by @@carlopi in #21151 * Enable column pruning for |MATERIALIZED| CTEs by @@kryonix in #21169 * Add framework to test two DuckDB versions by @@Y-- in #21184 * Internal #7691 : 2026a Time Zones by @@hawkfish in #21204 * Fix DuckFuzz #4325 by @@kryonix in #21215 * Fix decorrelation delim index bug by @@kryonix in #21233 * Fix two minor shell bugs: Avoid mutating rendered strings and avoid p… by @@carlopi in #21234 * Fix wrong cast in RecursiveDependentJoinPlanner by @@kryonix in #21235 * Use atomic load in bloom filter look-up by @@Mytherin in #21238 * Move BWC tests to nightly for now by @@Mytherin in #21266 * Internal #7740 : AsOf Tidy Fix by @@hawkfish in #21255 * Re-add accidentally removed -jsonlines command line parameter by @@Mytherin in #21263 * Switch MAIN_BRANCH_VERSIONING to False for v1.5-variegata branch by @@carlopi in #21239 * Lazy call |mmap| in |BlockAllocator| by @@lnkuiper in #21276 * Dynamically determine radix bits for external aggregation by @@lnkuiper in #21274 * Avoid potential division by 0 in |PhysicalHashJoin::PrepareFinalize| by @@lnkuiper in #21271 * Do not use MSYS shell for MinGW builds by @@staticlibs in #21296 * add structured Path objects, update joinpath: normalize, support url/… by @@benfleis in #21277 * When stress testing FORCE_ASYNC, add the relevant error messages by @@carlopi in #21267 * Fix invalid JSON when casting from certain types by @@Maxxen in #21280 * Fix .open of Parquet files etc. in CLI by @@hannes in #21269 * Bump storage version to |v1.5.1| by @@taniabogatsch in #21287 * Implement line number reporting in errors for PEG parser by @@Dtenwolde in #21157 * Support new v1.5 syntax for PEG grammar by @@Dtenwolde in #21172 * [Fix] Memory error when transforming to |v1.0.0| ART storage by @@taniabogatsch in #21270 * Add missing expression traversal in |merge into| binding by @@kryonix in #21283 * Add UUID to settings cache by @@Mytherin in #21290 * Fix Terminal::TryGetBackgroundColor when stdin is reading from a pipe but stdout is still writing to the terminal by @@Mytherin in #21288 * Fix #21248 : correctly expand type count in CSV header detection by @@Mytherin in #21292 * Add batch index support to parquet_metadata and friends to allow it to be executed in parallel also with order preservation by @@Mytherin in #21314 * Make overriding HTTPUtil thread safe by @@Mytherin in #21210 * Revert #21067 - and fix WAL corruption issue through calling |MarkBlockAsCheckpointed| on WAL blocks by @@Mytherin in #21285 * Fix sampling for UB in musl libc by @@carlopi in #21318 * TryGetCurrentSetting: Fixup paramater passing for FileOpenerInfo by @@carlopi in #21301 * Fix Row Group Reorderer Bug by @@d-justen in #21282 * Windows shell: fix UTF-8 to UTF-16 conversion by @@staticlibs in #21319 * Issue #21244 : AsOf Unordered LIMIT by @@hawkfish in #21250 * Throw error on incorrect use of |ParseExpressionList| by @@Dtenwolde in #21306 * Issue #20481 : Prepare Window Parameters by @@hawkfish in #21323 * CLI: Explicitly clean up shell state instead of letting static destructor order determine when it gets destroyed by @@Mytherin in #21315 * Fixup 401bcf0 : "When stress testing … by @@carlopi in #21329 * CLI: Make bail on error the default in more situations by @@Mytherin in #21344 * Improve estimate when first Parquet file is almost empty, and get exact cardinality count when we are using union by name by @@Mytherin in #21345 * Fix infinite recursion in FileOpener::TryGetCurrentSetting by @@Mytherin in #21356 * fix argument check for .multiline and .singleline by @@jaywgraves in #21336 * Windows shell: remove .utf8 dot command by @@staticlibs in #21343 * When writing unsupported Parquet variant types to Parquet, try to convert them to INT64 by @@Mytherin in #21357 * Use cached Parquet metadata to improve cardinality estimates over Parquet files by @@Mytherin in #21358 * Parquet Reader: Allow merging of prefetch column ranges for columns that do not have table filters by @@Mytherin in #21373 * In the parquet reader, if we are globbing over a directory, use file sizes from the glob to estimate cardinalities instead of relying only on the first parquet file by @@Mytherin in #21374 * MbedTLS: Actually throw exception by @@hannes in #21365 * Well-defined environment for MinGW builds by @@staticlibs in #21371 * Fix #21335 : correctly add checkpoint and recovery WAL to allowed paths when launching an initial db with enable_external_access set to false by @@Mytherin in #21379 * automate clangd/compile_commands.json gen via builds by @@benfleis in #21361 * Parquet: Ignore optional filters when deciding whether or not to do a lazy fetch by @@Mytherin in #21383 * parquet: avoid corrupting define buffers during skips by @@Mikubill in #21298 * CLI: Fix .tables rendering for large database names by @@Mytherin in #21389 * Fix column pruning for CTEs by @@kryonix in #21275 * add test for #21271 by @@artjomPlaunov in #21398 * Grab correct row group id in ValidityColumnData::UpdateWithBase by @@Mytherin in #21397 * Add lance extension by @@carlopi in #21406 * add lance for v1.5 by @@samansmink in #21111 * Fix #21289 : correctly determine render width of UTF8 string with grapheme clusters by @@Mytherin in #21409 * Avoid calling PushCollation in create_sort_key by @@Mytherin in #21412 * Flush remaining operators in pipeline by @@DinosL in #21405 * Correctly limit auto-detection in read_json for files that don't have string columns by @@Mytherin in #21411 * Fix INSERT OR REPLACE updates on non-unique indexed columns by @@feichai0017 in #20962 * fix(adbc): support concurrent statements on the same connection by @@eitsupi in #21415 * Fix invalid common subplan CTE reuse for issue #21372 by @@feichai0017 in #21386 * Use regular pushdown path for semi/anti/left delim joins by @@Mytherin in #21416 * Predicate factoring by @@lnkuiper in #21418 * Bump SQLite by @@staticlibs in #21414 * Enable Row Group Pruner for NULLS_FIRST by @@d-justen in #21399 * Read geoparquet file with null CRS. Fix #21332 by @@philippechataignon in #21333 * test/sql/join/test_hash_join_many_columns.test needs 64bit by @@carlopi in #21432 * Parquet Reader: initialize scan without holding the global lock in the multi file reader by @@Mytherin in #21439 * bump spatial for v1.5.2 by @@Maxxen in #21440 * [vortex] Bump to d0b5bae4d907694e776c97b57de6edfb662c6c25 by @@carlopi in #21430 * Fix stale update read during index removal by @@artjomPlaunov in #21427 * Fix window elimination optimizer by @@kryonix in #21428 * Avoid scanning struct validity when executing pushdown extract by @@Mytherin in #21421 * Bump avro by @@taniabogatsch in #21426 * Add allowed_configs option for allow-listing configs when setting lock_configurations by @@hrl20 in #20938 * Fix minor typos in documentation and comments by @@Monstertov in #21442 * Fix parquet metadata cache invalidation in local file system by @@Mytherin in #21435 * Bump ducklake by @@Mytherin in #21448 * [httpfs] Bump to 7e86e7a5e5 and remove patches by @@carlopi in #21437 * verify_fetch_row.json + roaring seems to work as intended, restore by @@carlopi in #21300 * Refactor for multiple external extensions, and skip temporary for osx_amd64 by @@carlopi in #21450 * bump iceberg by @@Tmonster in #21453 * Fix #21436 : correctly preserve spaces within unquoted struct values in pretty printing code by @@Mytherin in #21457 * Bump Postgres and MySQL by @@staticlibs in #21433 * Shell: use Unicode entry point on Windows by @@staticlibs in #21472 * Fix #21459 : detect when read_duckdb is used to read a non-DuckDB file and throw a descriptive error by @@Mytherin in #21460 * Fix #21367 : Prevent throwing in WindowSelfJoinOptimizer when a logical plan cannot be copied, instead fallback to not running the optimization by @@Mytherin in #21461 * bump delta && unity in prep for v1.5.1 by @@benfleis in #21451 * Adjust v1.5.0 for z/OS by @@DNikolaevAtRocket in #21325 * [vortex] Bump to 6ea8bd77fe8e6e814bde11b6981f934fa82ab961 by @@carlopi in #21462 * Fix NULL dereference in TryGetValueFromStats (#21477 ) by @@carlopi in #21479 * Bump spatial again by @@Maxxen in #21485 * Bump vcpkg-duckdb-ports baseline by @@yan-alex in #21493 1.5.0: What's Changed * Optimize LAST aggregate to iterate backward within batches by @@xe- nvdk * Allow user type with schema defined to have array bounds by @@Dtenwolde in #18342 * Remove case-insensitive character from grammar files by @@Dtenwolde in #18948 * Fix query() function error message for PIVOT statements without explicit IN clauses by @@shivampr in #18900 * Merge v1.4-andium into main by @@c-herrewijn in #18952 * [Dev] Some light code cleanup in |RemoveUnusedColumns::VisitOperator| by @@Tishj in #18964 * Support renaming a database - ALTER DATABASE <> RENAME TO <> by @@abramk in #18970 * V1.4 andium by @@Mytherin in #18982 * Fix field id uniqueness for alter database by @@abramk in #18988 * Fix unused variable warnings by @@mlafeldt in #18913 * Avoid adding a TupleDataChunkPart with only one row. by @@lance5401 in #18904 * Tiny fix for ColumnDataAllocator::ColumnDataAllocator by @@baolinhuang in #18990 * Fixes for ALTER DATABASE - use serialization framework, and fix stringification of identifiers by @@Mytherin in #18994 * Expected errors 2053 by @@hmeriann in #18960 * Fix union semantics in recursive CTEs by @@cryoEncryp in #19017 * Multifile |parquet_metadata| and friends parallelism by @@J-Meyers in #18854 * [Optimize] use StorageLock for CompressionFunction by @@baolinhuang in #19028 * PEG grammar updates by @@Dtenwolde in #19031 * Rework Compression Function registration to avoid grabbing locks by @@Mytherin in #19045 * Merge v1.4 into main by @@Mytherin in #19048 * [C-API] default to adding overload on conflict when registering functions by @@Maxxen in #19036 * Destroy row groups in parallel by @@Mytherin in #19053 * Switching core extension upload to dedicated credentials by @@hannes in #19060 * CI: Increase stale bot timeout to 1 year by @@szarnyasg in #19000 * Revert "set default value of MAIN_BRANCH_VERSIONING to false" by @@c- herrewijn in #19057 * Fix extension load by @@dentiny in #19079 * Change core extensions bucket name by @@hannes in #19082 * Merge v1.4 into main by @@Mytherin in #19098 * Allow directory override for extension build by @@Mytherin in #19110 * Skip serialization of row_start in DataPointer when targeting latest storage by @@Mytherin in #19111 * [C-API] Initial support for accessing file system by @@Maxxen in #19086 * Rework |UNION (ALL)| operators (|SetOperationNode|/|LogicalSetOperation|/|PhysicalUnion|) to have multiple children by @@Mytherin in #19109 * pushdown filter when doing cross or lateral join with unnest by @@DinosL in #19085 * Fix unholy interaction between |CREATE VIEW| and |CTE| definitions by @@kryonix in #19116 * Add support for |read_duckdb| - a function that allows reading / globbing DuckDB database files by @@Mytherin in #19108 * Fix typo by @@szarnyasg in #19130 * fix: check tree depth and flatten dep join for custom operator extension by @@Wal8800 in #19094 * During optimistic writing, gather N row groups and write them at the same time column-at-a-time by @@Mytherin in #19118 * Remove unused code by @@szarnyasg in #19134 * Add support for late materialization and filter pushdown to read_duckdb by @@Mytherin in #19145 * Move storage block prefetching to an option instead of baking in testing during ALTERNATIVE_VERIFY + add a test config for this option by @@Mytherin in #19146 * Introduce |parser_override_function_t| by @@Dtenwolde in #19126 * Perform deduplication based on join_keys when building ht by @@tianjq16 in #19097 * Print help to stdout by @@staticlibs in #19170 * Validate filesystem registration by @@dentiny in #19168 * Fix missing replacement scan code for CTEs by @@kryonix in #19159 * Correctly set row start in WAL replay by @@Mytherin in #19192 * Use a |PartialBlockManager| per column, instead of sharing one over the entire row group by @@Mytherin in #19194 * Internal #5380 : AsOf Join Pipeline by @@hawkfish in #19169 * Cross and lateral join pushdown with unnest or json - update by @@DinosL in #19152 * Missing error messages for test cases by @@hmeriann in #19129 * [Profiling] Move |EXTRA_INFO| into the metrics map by @@maiadegraaf in #19124 * Common Subplan Elimination by @@lnkuiper in #19080 * |GEOMETRY| Rework: Part 1 - Logical Type by @@Maxxen in #19136 * [Parquet] Implement (unshredded) |VARIANT| support for |COPY TO| parquet by @@Tishj in #19125 * Add more missing error messages to test cases by @@hmeriann in #19210 * [CI] - Fix failing |Extension updating test| NightlyTests job by cleaning up some space on the runner by @@hmeriann in #19214 * Inconsistent semicolon handling by @@Dtenwolde in #19199 * Internal #5383 : Range Join Sorting by @@hawkfish in #19174 * [Profiling] Add QueryContext to more functions, for Reads by @@maiadegraaf in #18726 * Merge v1.4-andium into main by @@Maxxen in #19225 * [shell] Fix tilde parsing for .once statement by @@dentiny in #19254 * Partially remove BoundQueryNode - have Bind directly emit a BoundStatement by @@Mytherin in #19289 * Binder clean-up by @@Mytherin in #19293 * test: add test for CREATE TABLE with |my_schema.my_enum[]| by @@NickCrews in #19296 * Fix uncaught exception in test_empty_profiling_settings.test by @@maiadegraaf in #19286 * |GEOMETRY| Rework: Part 2 - Statistics by @@Maxxen in #19203 * Internal #5380 : AsOf Sorting Conversion by @@hawkfish in #19278 * Add option for opt-in to parser override by @@Dtenwolde in #19181 * Remove BoundTableRef and make binding a TableRef directly return a BoundStatement by @@Mytherin in #19294 * Rewrite Grouped Top-N Window Functions To Aggregations by @@d-justen in #19280 * Perform optimistic reads while filling gaps in CachingFileSystem by @@carlopi in #19122 * Issue #19027 : AsOf Join Predicates by @@hawkfish in #19316 * Enable experimental metadata re-use by default by @@Mytherin in #19317 * Binder: BoundQueryNode cleanup by @@Mytherin in #19322 * Remove old sort code by @@lnkuiper in #19321 * [Parquet] Implement shredded |VARIANT| support for COPY TO parquet by @@Tishj in #19219 * Merge andium into main by @@Tishj in #19325 * [C API] Expose column count and type for table description by @@taniabogatsch in #19334 * Relocate the python sqllogic code to the dedicated repository by @@Tishj in #19340 * Binder: Rework the way set operations work so that we can use the standard binding flow by @@Mytherin in #19342 * Rework CTE binding: remove CTENode, and bind CommonTableExpressionMap directly instead by @@Mytherin in #19351 * Avoid keeping shared ptr to ClientContext in QueryContext by @@Mytherin in #19353 * Internal #6190 : AsOf Threading by @@hawkfish in #19328 * [Indexes] Buffer Managed Indexes Part 4: Segment Handles for Base Leaf by @@artjomPlaunov in #19303 * Provide force assertion macros by @@dentiny in #19212 * Parse result for PEG transformer by @@Dtenwolde in #19229 * Allow * NOT SIMILAR TO 'pattern' by @@Dtenwolde in #19232 * [C API] Improve documentation on list vectors by @@taniabogatsch in #19349 * Make Binding CTEs lazy, and other CTE binding refactors by @@Mytherin in #19372 * Internal #6210 : IEJoin Threading by @@hawkfish in #19361 * [CI] Move two test cases from duckdb-httpfs repo by @@hmeriann in #19368 * [C API] Update misleading "use instead" by @@taniabogatsch in #19371 * Enable -Wtype-limits warning and fix warnings by @@hannes in #19382 * [Profiling] Add metrics for ATTACH / CHECKPOINT / WAL replay by @@taniabogatsch in #19367 * Update issue template by @@szarnyasg in #19384 * Not building imdb all the time by @@hannes in #19388 * CSV Reader: make line reconstruction deal with buffer_pos == buffer_size by @@Mytherin in #19390 * [Dev] |variant_extract| BindData copy fix by @@Tishj in #19394 * [Dev] Add a |VARIANT| visitor class by @@Tishj in #19387 * Switch RowVersionManager to using the FixedSizeAllocator by @@Mytherin in #19392 * [Profiling][CAPI] Add appender profiling test by @@maiadegraaf in #19383 * Use statement for PEG Parser transformer by @@Dtenwolde in #19302 * |old_transactions| is no longer necessary by @@Captain32 in #19381 * Add Null Support for TopNWindowElimination Rule by @@d-justen in #19370 * Use const references in exceptions varargs by @@maiadegraaf in #18723 * Merge v1.4-andium into main by @@Mytherin in #19402 * [Variant] Implement comparison operation logic for Variant columns by @@Tishj in #19337 * Implement |std::allocator| that uses |ArenaAllocator| by @@lnkuiper in #19412 * [CI] Correct file path in test case by @@hmeriann in #19429 * [C API] Patch C API query progress documentation by @@taniabogatsch in #19430 * Fixes |.dump| command failing with |ROLLBACK| when dumping tables in non-default schemas. by @@shivampr in #19363 * [C API] Extend documentation around header generation by @@taniabogatsch in #19433 * Internal #6270 : Fix small binary fallback values for arg_min/max_nulls_last by @@d-justen in #19434 * Merge v1.4 into main by @@Mytherin in #19438 * SET statement for PEG Transformer by @@Dtenwolde in #19320 * Add DuckDB::String to operators by @@maiadegraaf in #19423 * Make cached hashes thread-safe and emit dictionary vectors from Perfect Hash Join by @@lnkuiper in #19332 * fix: make |GetCachedHashes| thread safe by @@0ax1 in #19274 * [Profiling] Enable ATTACH / CHECKPOINT / WAL replay metrics by default by @@maiadegraaf in #19436 * Update / simplify issue template by @@szarnyasg in #19442 * Move FORCE_ASYNC_SINK_SOURCE from Nightly to Main by @@carlopi in #19452 * Fix WITH ORDINALITY virtual columns by @@niykko in #19315 * Internal #6196 : AsOf Prefix Comparisons by @@hawkfish in #19456 * Add safe queue and deque by @@dentiny in #19273 * 💝 |duckdb| now has its |endoflife.date| page ⏳ by @@adriens in #19450 * Fix wording in README by @@lnkuiper in #19462 * [C-API] Add support for defining config options (settings) by @@Maxxen in #19473 * Internal #6196 : AsOf Prefix Comparisons by @@hawkfish in #19466 * Internal #6196 : AsOf Prefix Comparisons by @@hawkfish in #19484 * [TPCH] fix |load.sql| to produce valid test data by @@hmeriann in #19441 * [minor] Add catalog type to exception by @@dentiny in #19488 * |GEOMETRY| Rework: Part 3 - Filter pushdown by @@Maxxen in #19439 * [minor] Address test compilation warnings by @@dentiny in #19492 * Fix issue #17941 : Cryptic error message when dropping a column part of a unique constraint. by @@arjanssuri in #19465 * [Optimizer] Support constant order normalization by @@doublefish5106 in #19494 * Use Late Materialization in TopNWindowElimination Optimizer by @@d- justen in #19463 * Internal #6326 : AsOf Join Copying by @@hawkfish in #19505 * [swift] fix microseconds conversion to seconds by @@kokluch in #19486 * Fix bug initializing std::vector for column names in ADBC API by @@CurtHagenlocher in #19444 * Remove empty lines at the start of code blocks by @@lnkuiper in #19519 * Merge v1.4 into main by @@Mytherin in #19528 * Fix failing python replacement scan by @@evertlammerts in #19509 * Adds |parquet_full_metadata| function by @@J-Meyers in #19148 * [Profiling] Add WAL_REPLAY_ENTRY_COUNT and COMMIT_WRITE_WAL_LATENCY metrics by @@maiadegraaf in #19524 * Convert CLI to use C++ API, and remove sqlite API wrappers by @@Mytherin in #19536 * Adding release name for 1.5 by @@hannes in #19540 * CLI: Generate ".help" menu from the list of commands, and add syntax highlighting to .help by @@Mytherin in #19542 * CLI: Refactor command-line parameters into a struct similar to MetadataCommands, and add better errors + syntax highlighting by @@Mytherin in #19544 * Delete Statement and expression associativity for PEG Transformer by @@Dtenwolde in #19507 * Attach statement for PEG transformer by @@Dtenwolde in #19460 * Augment Table API |function| via context stored in |AsyncResult| object by @@carlopi in #19422 * Add COLUMNS() expansion support to DISTINCT ON by @@shivampr in #19550 * Retain recursive unnest column names by @@DinosL in #19310 * Adds struct variant to |regexp_extract_all| by @@J-Meyers in #19078 * CLI: Make last query result queryable through the |_| token by @@Mytherin in #19553 * CLI: rework .import to use built-in readers by @@Mytherin in #19563 * Count also time blocked waiting for the lock in BLOCKED_THREADS_TIME by @@carlopi in #19547 * Change |format_version| to |2| when specify |V2| for |PARQUET_VERSION| by @@koron in #18855 * Fix: list_concat(NULL) returns NULL by @@maiadegraaf in #19565 * CLI: More shell code refactoring, remove global variables and split commands into separate files by @@Mytherin in #19568 * Consdier offset in topn optimizer by @@ZENOTME in #19561 * Fix Issue #19487 : array_to_string on empty list return NULL instead of empty string by @@arjanssuri in #19548 * CLI: Add support for dynamic prompts by @@Mytherin in #19579 * Custom Order Row Group Scans by @@d-justen in #19537 * Added missing return code checks for ADBC test cases by @@hannes in #19576 * CLI: Make startup-text display configurable using the .startup_text by @@Mytherin in #19584 * CLI: Unify all highlighting color code, add support for extended (8- bit) colors and add |.display_colors| command by @@Mytherin in #19587 * Replace deprecated header by @@krlmlr in #19602 * const-safe: Add const handling for list_entry_t by @@krlmlr in #19603 * Fix uninitialized physical_type in move constructor by @@krlmlr in #19604 * Fix uninitialized variable in multi-file progress tracking by @@krlmlr in #19597 * Fix uninitialized members in CachedFile constructor by @@krlmlr in #19598 * Fix uninitialized members in HashJoinGlobalSourceState by @@krlmlr in #19599 * [C API] Generate description, deprecated, and use_instead for function groups by @@taniabogatsch in #19586 * Merge |v1.4-andium| into main by @@carlopi in #19589 * CLI: Sort |.display_colors| by group / hue / luminosity by @@Mytherin in #19610 * Use std::remove_cv for physical type id fetching by @@dentiny in #19614 * [C-API] Initial support for defining |COPY| functions by @@Maxxen in #19186 * Apply |RemoveUnusedColumns| below table in out functions by @@geoffxy in #19474 * Fix uninitialized sorted_tuples member by @@krlmlr in #19593 * Array comparison optimization by @@EslamAhmed171 in #19591 * Python SQLLogicTest - show results in a consistent order by @@DinosL in #19562 * Add missing description to copy CAPI by @@lnkuiper in #19617 * Speed up Dictionary and DICT_FSST compression by replacing std::unordered_map with PrimitiveDictionary by @@yan-alex in #19577 * CLI: Display auto-complete suggestions when tabbing through them by @@Mytherin in #19626 * Allow Table |function| to opt-in to return arbitrary combinations of [0, output.size()] x [HAVE_MORE_OUTPUT, FINISHED] by @@carlopi in #19566 * Add a Mermaid Flowchart transformer for EXPLAIN output by @@tobilg in #19581 * Add recovery mode to |ATTACH| options and enable |NO_WAL| mode by @@taniabogatsch in #19612 * feat: add --sql option to |.open| in the cli client by @@hello-world-bfree in #19445 * [ART] Pretty Printer + Verify by @@artjomPlaunov in #19558 * Internal #6341 : AsOf Parallelism by @@hawkfish in #19605 * Add window functions to |duckdb_functions| by @@Tishj in #19532 * CLI: Fix cursor rendering in multi-line editing mode by @@Mytherin in #19649 * CLI: Eagerly open database also if it does not exist by @@Mytherin in #19627 * CLI: Make the progress bar configurable by @@Mytherin in #19650 * Encapsulate |BaseScalarFunction| properties by @@Maxxen in #19632 * Buffer-managed query results by @@lnkuiper in #19437 * [ART] Iterative Iterator by @@artjomPlaunov in #19521 * CI Fuzzer runtime error by @@DinosL in #19630 * Guard printing for bignum by @@krlmlr in #19600 * Don't truncate test names to 80 characters by @@JelteF in #19642 * [Parquet] Emit |VARIANT| from Parquet VARIANT columns, instead of JSON by @@Tishj in #18996 * CLI: Make Linenoise work on Windows by @@Mytherin in #19659 * Issue #19499 : HashedSort Sorting Memory by @@hawkfish in #19664 * Fix incorrect partition calculation due to missing vector_type by @@tianjq16 in #19638 * CLI - store action as just a char to avoid sanitizer complaints by @@Mytherin in #19679 * Merge v1.4 into main by @@Mytherin in #19670 * More |arena_stl_allocator| integration by @@lnkuiper in #19677 * Fix z/OS-specific issues by @@DNikolaevAtRocket in #19641 * CLI - Add paging support for output by @@Mytherin in #19676 * |GEOMETRY| Rework: Part 4 - Fixup Parquet Extension + Add Arrow Support by @@Maxxen in #19476 * SegmentTree: move |next| and |index| out of SegmentBase and into SegmentNode by @@Mytherin in #19686 * Add |Clear| method to |BaseAppender| by @@EtgarDev in #19623 * Handle edge case for date_trunc optimization by @@rcurtin in #19628 * fix checkpointing on files that dont exist by @@dioptre in #19344 * Fix: Correct typos in comments and error messages by @@feichai0017 in #19257 * Fix compiler warnings on |main| by @@lnkuiper in #19690 * Issue #19499 : HashedSort Sorting Memory by @@hawkfish in #19687 * Internal #6519 : HashedSort Memory Footprint by @@hawkfish in #19702 * Fix LENGTH(NULL) with GROUP BY NULL binding issue by @@shivampr in #19269 * New EXTENSION_RELATION type by @@krlmlr in #19596 * array intersect by @@krleonid in #19667 * Internal #6341 : AsOf Deadlock by @@hawkfish in #19705 * Add options for how invalid utf-8 should be handled in |decode()| by @@casperhart in #18168 * |CommonSubplan| improvements by @@lnkuiper in #19710 * Fix #18653 : remove unnecessary delim_join by @@flashmouse in #19235 * Internal #6523 : AsOf Exception Handling by @@hawkfish in #19703 * CLI: Refactor BoxRenderer, add wrapping support for large values, and add pretty printing / highlighting for nested types, JSON and variant by @@Mytherin in #19721 * Fix empty result pullup for ANTI joins by @@feichai0017 in #19701 * search activer binders in table function binder during binding column… by @@Damon07 in #14486 * Move formatting logic for tests and benchmarks into a standalone script by @@adsharma in #17350 * Exclude Row Groups in Top-N Queries by @@d-justen in #19655 * fix bug in generate_grammar script by @@OrangieLou in #19751 * Internal #4490 : DENSE_RANK Performance by @@hawkfish in #19757 * Internal #6521 : HashedSort Scan Lock by @@hawkfish in #19758 * Issue #19647 : Constant Window Allocators by @@hawkfish in #19752 * BoxRenderer: Fix rendering of empty results by @@Mytherin in #19746 * Bump ducklake main by @@J-Meyers in #19756 * Fix initialization when all values are |NULL| in |SMALLER_BINARY| aggregation by @@DinosL in #19755 * Clean up unused headers in |parser/| and subfolders by @@Schwarf in #18422 * Fix #17251 : Eliminate duplicates after a set operation using set sema… by @@tianjq16 in #17267 * Implement outer join elimination by @@flashmouse in #18043 * [C-API] Add support for catalog entry lookup by @@Maxxen in #19684 * Add |Stats| API to filesystem interfaces by @@dentiny in #19743 * Add sleep scalar function by @@krleonid in #19736 * Add flush memory threshold for appender to prevent OOM by @@p1p1bear in #19007 * add statement debug and debug_skip by @@samansmink in #18472 * Storage: Remove |start| from RowGroup, ColumnData and ColumnSegment, and rework the way that |start| is defined in the |ColumnSegmentTree| by @@Mytherin in #19761 * Add Seek() to TupleDataCollection for IEJoin optimization by @@EslamAhmed171 in #19753 * Fix TopN Pruning Test by @@d-justen in #19768 * Support reading pipes with |read_text| by @@lnkuiper in #19765 * Support TopN dynamic filter for NULLS FIRST by @@feichai0017 in #19744 * fix(#18481 ): Avoid to overwrite secret_directory configuration by it default value by @@quentingodeau in #19448 * Change back default strategy for debug_physical_table_scan_execution_strategy by @@carlopi in #19778 * Fix major big-endian issues by @@DNikolaevAtRocket in #19748 * Disable |sleep()| function if DuckDB isn't compiled with threads by @@lnkuiper in #19783 * Remove unused parameter from arrow by @@pdet in #19784 * Block Allocator by @@lnkuiper in #19678 * Merge v1.4-andium into main by @@Mytherin in #19771 * CLI: Add table metadata rendering, and use this rendering for |.tables| and |DESCRIBE| queries by @@Mytherin in #19792 * CLI: Improve array rendering by no longer adding newlines after every array entry unless there are complex objects in the array by @@Mytherin in #19795 * CLI: For |.tables| - group tables by database/schema, and render the database name and schema of the tables as a header above the tables by @@Mytherin in #19798 * Skip test block_allocator_memory.test on 32bit platforms by @@carlopi in #19794 * [ADBC] Fix bug in StatementGetParameterSchema when no params are set by @@amoeba in #19790 * Specify shared deletion option on windows by @@dentiny in #19782 * Fix flaky sleep test by @@krleonid in #19803 * Internal #6541 : Window ArenaAllocator Usage by @@hawkfish in #19770 * CLI: Several auto-complete improvements, make auto-complete behave more like |zsh| by @@Mytherin in #19805 * [Profiling] Split COMMIT_WRITE_WAL_LATENCY into COMMIT_LOCAL_STORAGE_LATENCY and WRITE_TO_WAL_LATENCY by @@maiadegraaf in #19808 * Move GetData as GetDataInternal, and have GetData as wrapper by @@carlopi in #19791 * [swift] fix compiler warnings for deprecated @@_implementationOnly by @@kokluch in #19800 * CLI: Silence auto-complete failures instead of exiting by @@Mytherin in #19813 * Random small nits by @@taniabogatsch in #19828 * Add test to exclusion list by @@Maxxen in #19827 * Create statement for PEG Transformer by @@Dtenwolde in #19807 * Add |struct_keys| method to StructVector by @@EtgarDev in #19673 * [Dev] Disallow aggregates used in the TRY expression child by @@Tishj in #16285 * CI Cleanup by @@Mytherin in #19840 * Fix positional scan and restore task executor by @@carlopi in #19825 * [CLI] fix escaping sequence for ctrl/alt arrow key shortcuts by @@tobwen in #19261 * Enable macros in DuckLake by @@pdet in #19836 * Make RowGroup::Checkpoint and ColumnData::Checkpoint generate a new RowGroup/ColumnData - instead of checkpointing them in-place by @@Mytherin in #19843 * Fix incorrect results with NOT EXISTS and IS DISTINCT FROM operator (#19680 ) by @@henry8128 in #19811 * #6429 Roaring Booleans by @@yan-alex in #19785 * |GEOMETRY| Rework: Part 4 - Step 2 - Adjust WKB conversion functions by @@Maxxen in #19848 * Internal #6607 : IEJoin Task Locking by @@hawkfish in #19852 * Add TOTAL_MEMORY_ALLOCATED profiling metric by @@krleonid in #19834 * Delete unused block header size by @@ccfelius in #19855 * [CAPI] Expose basic custom log storage to CAPI by @@maiadegraaf in #19810 * Enable reads to run concurrently while another connection is checkpointing by @@Mytherin in #19867 * CLI: Enable support for mouse clicks in Linenoise - pressing Ctrl+Q allows a single mouse-click to be consumed to change the cursor position by @@Mytherin in #19869 * Add alias reference support (|alias.|) by @@EtgarDev in #19747 * [Compression] Fix an existing and a new bug in Roaring compression by @@Tishj in #19878 * PEG Transformer template script by @@Dtenwolde in #19812 * [Testing][Dev] Extend tests covered by the |storage_compatibility| test config by @@Tishj in #19860 * [swift] decode boolean primitive type by @@kokluch in #19890 * [Parquet] Implement automatic shredding for |VARIANT| columns in COPY TO parquet by @@Tishj in #19336 * Offset Pruning for Pagination Queries by @@d-justen in #19806 * Internal #6568 : SortStrategy Refactoring by @@hawkfish in #19814 * Refactor hash join filter scan helper by @@feichai0017 in #19802 * [Optimizer] Fix cardinality estimates getting lost through |struct_extract| expressions by @@Tishj in #19829 * [Dev] Fix assertion failure in |AlterType| by @@Tishj in #19850 * Internal #6653 : WindowExpression Construction by @@hawkfish in #19885 * Fix nested sleep_ms calls and add tests by @@krleonid in #19837 * fix: make row_start an optional_idx in |PartitionStatistics| by @@rustyconover in #19903 * CLI: Refactor shell rendering code, move everything to |ShellRenderer|, and perform various fixes by @@Mytherin in #19897 * [Storage] Implement storage for VARIANT columns by @@Tishj in #19674 * Encapsulate scalar/aggregate function callbacks by @@Maxxen in #19707 * Merge V1.4 -> Main by @@pdet in #19876 * Checkpoint: prevent adding blocks to the |free_list| that are still being used by concurrent readers by @@Mytherin in #19928 * Merge V1.4 -> Main by @@pdet in #19935 * Avoid eagerly grabbing the checkpoint lock when performing inserts, instead grab a shared table lock by @@Mytherin in #19937 * [Checkpoint] Fully rewrite stats on Checkpoint by @@Tishj in #19932 * fix: update aggregate docs regarding combine, add guards around calling combine callback. by @@rustyconover in #19938 * [Wal]ReplayDelete in batches instead of rows by @@artjomPlaunov in #19904 * CheckZonemapSegments: iterate on filters, then jump further by @@carlopi in #19865 * Tweak Relation::Query() by @@krlmlr in #19594 * More TASK_EXECUTOR opt-in by @@carlopi in #19940 * [Stats] |has_no_null| is no longer initialized to true in |BaseStatistics::CreateEmpty| by @@Tishj in #19948 * [Stats] Improve the |VariantStats| class to support merging and better visualization by @@Tishj in #19950 * Handle empty table name on CREATE by @@yan-alex in #19955 * Fix ColumnAliasBinder by @@d-justen in #19956 * CLI: Add support for dark / light mode that is automatically detected by @@Mytherin in #19985 * CLI: Change return value from |-1| to |false| in |TryGetBackgroundColor| by @@c8ef in #19992 * CLI: Fully unify result rendering, and fix automatic pager mode by @@Mytherin in #19988 * Adding extension alias lookup in GetDatabaseType by @@tomas-karnagel in #19980 * CLI: Various auto-complete fixes by @@Mytherin in #19995 * ALP uncompressed mode by @@yan-alex in #19902 * Disable block allocator test on non-64bit by @@lnkuiper in #19999 * Add comments to cardinality estimator code by @@Tmonster in #19973 * [fix] ClientBufferManager::Pin to also propagate context when available by @@carlopi in #19986 * Sideways Information Passing for Joins using Bloom Filters by @@gropaul in #19502 * Don't require icu unless extension is enabled by @@dg0yt in #19963 * Add z/OS support for block allocator by @@DNikolaevAtRocket in #19977 * Add a secondary extension directory for package managers by @@xhochy in #17499 * #15867 - Make it possible to hide query in profiling output by setting |query_name| metric to false. by @@ormandi in #15870 * Internal #6607 : IEJoin Task Locking by @@hawkfish in #20028 * Fix #19984 : shouldn't use outer table distinct info to eliminate join by @@flashmouse in #20023 * fix: allow table in/out functions to indicate if they support parallelism by @@rustyconover in #19951 * Fix #20029 : accept "\e\" as termination sequence, and add a timeout to TryGetBackgroundColor by @@Mytherin in #20042 * Fix #20034 : correctly move correlated columns for lazy CTEs by @@Mytherin in #20038 * Bloom filter row group skipping by @@lnkuiper in #20035 * CLI: Optimize and clean-up result rendering code by @@Mytherin in #20021 * fix alter table rename / alter on temp table losing temporary flag by @@diwu-sf in #20011 * Improve catalog error message for missing schemas by @@krleonid in #19922 * feat(adbc): partial supporting ADBC 1.1.0 by @@eitsupi in #19833 * [Profiling] Generate more metric code and add metric subgroups by @@maiadegraaf in #19483 * Filesystem-compatible wrapper for |CachingFileSystem| by @@dentiny in #19972 * #Fix 18158: Deliver child column info by @@flashmouse in #18327 * Allow concurrent commits to happen while a checkpoint is running by @@Mytherin in #20052 * CLI: Improve rendering of wide values, and improve auto-complete by @@Mytherin in #20074 * Checkpoint: Allow vacuuming of rows for tables that have indexes if the vacuum does not change the rowids by @@Mytherin in #20073 * Eagerly Execute Min/Max Aggregates on Statistics by @@d-justen in #19906 * Late extension linking by @@hannes in #19369 * ADBC: Set append data error in Ingest() by @@kou in #19991 * Don't throw permission error during binder when LocalFileSystem is disabled by @@JelteF in #20077 * Add |struct_values| function to return field values of STRUCT by @@EtgarDev in #19968 * |TupleDataCollection| + |MemoryTag| fix by @@lnkuiper in #20089 * Enable Parquet reader support for uniformly encrypted Parquet files written by Arrow C++ API by @@ccfelius in #20046 * Fix source and bin dirs to duckdb's root by @@evertlammerts in #20088 * Allow CTEs to emit NULL types by @@Mytherin in #20097 * Change CLI highlighting colors and error message rendering by @@Mytherin in #20099 * Roaring boolean FetchRow fix by @@yan-alex in #20101 * Fix race condition in piecewise merge join by @@lnkuiper in #20059 * Improve join filter pushdown for ON clause conditions by @@EslamAhmed171 in #19888 * Merge V1.4 -> Main by @@pdet in #20111 * Fix parsing of dollar quoted strings in various places by @@JelteF in #20121 * Do not autocomplete within dollar-quoted strings by @@JelteF in #20122 * Fix concurrent test failure by @@Mytherin in #20129 * Fix over-eager constraint checking in the presence of primary keys/ unique constraints by @@Mytherin in #20119 * When shortening columns in the BoxRenderer, avoid applying the min col width twice by @@Mytherin in #20126 * Unify column renaming behavior of CTEs with other places in the system by @@kryonix in #20116 * Fix vector sizes CI by @@lnkuiper in #20130 * [Logging] Add assertions for LogType type by @@maiadegraaf in #20064 * [Profiling] Check that file type set by |profiling_output| matches output type by @@maiadegraaf in #19946 * Add flag to use pre-built static library by @@hannes in #20092 * Create Shell Log Storage to Print Warnings in CLI by @@maiadegraaf in #19974 * [Doc] Add ccache into contributing doc build section by @@dentiny in #20139 * Fix column lifetime for DISTINCT ON by @@feichai0017 in #19786 * documentation for extension patch workflow by @@artjomPlaunov in #19905 * Art pretty printer options by @@artjomPlaunov in #20079 * feat: add |OperatorOrder()| to table functions to indicate ordering needs. by @@rustyconover in #19954 * Internal #6777 : IEJoin Unified L1/2 by @@hawkfish in #20083 * fix: link error on linux with multiple definition of LogicalType::VARCHAR in |shell_renderer.cpp| by @@rustyconover in #20096 * Remove pointer indirection in ExtensionAccess by @@staticlibs in #19529 * [Dev] Fix failure on |extension_entries.hpp| on main by @@Tishj in #20138 * [Dev] Fix concurrent test failure (followup) by @@Tishj in #20140 * HashCSVStateMachineConfig to return hash_t by @@carlopi in #20137 * Provide option disable cache validation by @@dentiny in #19886 * Parallel |TupleDataCollection| destructor by @@lnkuiper in #20159 * Internal #6778 : IEJoin Parallel L1/L2 by @@hawkfish in #20152 * Allow concurrent insertions into tables with indexes while checkpointing by @@Mytherin in #20160 * Revert linux toolchain downgrade by @@hannes in #20170 * Do not exit shell on Ctrl+C by @@staticlibs in #20155 * CLI: Several rendering fixes / improvements by @@Mytherin in #20175 * fix: remove extra space in GetName() for PhysicalTableScan in profiler output by @@rustyconover in #20179 * Internal #6779 : 64- Bit Range Joins by @@hawkfish in #20176 * More |CommonSubplanOptimizer| improvements by @@lnkuiper in #20168 * Profiling: Fix rows_scanned by @@d-justen in #20161 * [Optimizer] Clean up the cross-over point from |ColumnIndex| -> |StorageIndex| by @@Tishj in #20087 * Issue #19629 : DATE_TRUNC Return Type by @@hawkfish in #20120 * Move to macos-latest for newer compiler by @@hannes in #20169 * [minor] Avoid divide by 0 for json progress report by @@dentiny in #20196 * Allow Late Materialization for Parquet in TopNWindowElimination by @@d-justen in #20066 * Link MSVC runtime library statically by @@staticlibs in #19415 * fix ci run - 'no space left on device' by @@c-herrewijn in #20203 * fix: simplify logic by removing empty else branch by @@darion-yaphet in #20184 * fix: simplify platform detection in CMakeLists.txt by @@darion-yaphet in #20183 * Add days_in_month internal macro for retrieving number of days in a month by @@ArNine in #20180 * Fix try cast for variant to incompatible struct types by @@wmTJc9IK0Q in #20211 * fix: add schema and catalog to table scan explain output by @@rustyconover in #20181 * feat: add filenames to MultiFileDynamicToString by @@rustyconover in #20182 * [C-API] Add support for scalar function local states by @@Maxxen in #20109 * CLI: Add |.last| to re-render the last query result, and make several (performance) improvements to |.mode duckbox| by @@Mytherin in #20223 * Throw exception if there is ARTKey mismatch by @@artjomPlaunov in #20225 * Fix Windows shell input: correct variable buffering and character order by @@EslamAhmed171 in #20217 * [minor] Address compilation warnings by @@dentiny in #20213 * Refactor PhysicalCreateIndex and introduce index build abstraction by @@ccfelius in #20158 * Refactor |PhysicalCreateIndex| and introduce index build abstraction by @@Maxxen in #19461 * Internal #6837 : Streaming IGNORE NULLS by @@hawkfish in #20226 * [Optimizer] Push down |struct_extract| expression to the storage. by @@Tishj in #20063 * Friendly SWITCH case by @@Dtenwolde in #20001 * Parallel |SortedRunMerger| destructor by @@lnkuiper in #20200 * Internal #6462 : Implement AGO Macro by @@hawkfish in #20228 * Do not call UnregisterBlock from destructor by @@staticlibs in #20242 * [minor] Address more compile warnings by @@dentiny in #20232 * Re-enable aws tests by @@Tmonster in #20249 * Fix wrong error message when add primary key to a view(#20239 ) by @@ArNine in #20253 * Fix last parallel destructor race condition (hopefully) by @@lnkuiper in #20251 * [Optimizer] Pushdown a CAST expression on top of a struct_extract by @@Tishj in #20250 * [ART] Prefix handles by @@artjomPlaunov in #19658 * Fix: CHECK constraint internal error on UPDATE with missing columns (#20199 ) by @@AestheticAkhmad in #20243 * Internal #6462 : Implement AGO Macro by @@hawkfish in #20257 * feat: preserve ATTACH options and return via duckdb_databases() by @@rustyconover in #20186 * support reading parquet files with empty groups by @@achille-roussel in #20135 * Move checkpointing outside of the attached database destructor by @@taniabogatsch in #19930 * Issue #20076 : Implement CountWindowElimination Logic by @@hawkfish in #20273 * Minor python fixes by @@c-herrewijn in #20269 * Fix concat(null) error by @@d-justen in #20266 * Big-endian patches (FSST, arrow, types, md5) by @@DNikolaevAtRocket in #20237 * Merge |v1.4-andium| into |main| by @@carlopi in #20231 * Allow concurrent deletes while checkpointing by @@Mytherin in #20286 * Correctly handle default expressions in WAL when doing |ALTER TABLE ... ADD COLUMN ... DEFAULT ... | by @@yan-alex in #20224 * [Fix] Use the current schema and catalog during data creation for TPCH and TPCDS by @@taniabogatsch in #20290 * peg grammar: start rule first by @@jraymakers in #20275 * return_stats for boolean and numeric (128 bits) during copy by @@aykut-bozkurt in #20222 * Fixes raised by cppcheck by @@carlopi in #20323 * Fixup QueryProfiler::GetBytesRead and Written by @@carlopi in #20318 * Internal #6974 : Window Self-Join Files by @@hawkfish in #20317 * Internal #6999 : Window TopN Comparisons by @@hawkfish in #20316 * Internal #6943 : IEJoin Code Cleanup by @@hawkfish in #20315 * Use eager min/max aggregation on parquet statistics by @@d-justen in https://github.com/duckdb/duckdb/ pull/20301 * c-api: adding out_file against NULL check by @@ProjectMutilation in https://github.com/duckdb/ duckdb/pull/20303 * Apply LRU cache to parquet metadata by @@dentiny in https://github.com/duckdb/duckdb/pull/20157 * [Profiling] Add duckdb_profiling_settings() macro by @@maiadegraaf in https://github.com/duckdb/ duckdb/pull/20234 * Fix some compiler warnings on apple clang 17 by @@hannes in https://github.com/duckdb/duckdb/pull/20337 * feat(adbc): support the uri option of ADBC 1.1.0 by @@eitsupi in https://github.com/duckdb/duckdb/ pull/20312 * feat(adbc): support |ADBC_INFO_DRIVER_ADBC_VERSION| (new in ADBC 1.1.0) by @@eitsupi in https://github.com/duckdb/duckdb/pull/20344 * |GEOMETRY| Rework: Part 5 - Coordinate Reference System Support by @@Maxxen in https://github.com/duckdb/duckdb/ pull/20143 * Remove two unnecessary test exclusions by @@yan-alex in https://github.com/duckdb/duckdb/pull/20347 * Preserve uppercase chars in DB filename on Windows by @@staticlibs in https://github.com/duckdb/duckdb/ pull/20298 * Eager aggregate support filter by @@flashmouse in https://github.com/duckdb/duckdb/pull/20198 * [Profiling] Add enable_profiling() Table Function by @@maiadegraaf in https://github.com/duckdb/ duckdb/pull/20151 * Fix: Potential Unexpected Result when Using TRY Expression #20006 by @@AestheticAkhmad in https:// github.com/duckdb/duckdb/pull/20238 * Fix #20308: Added collation binding to the join conditions by @@gemy26 in https://github.com/duckdb/ duckdb/pull/20349 * Pick up stale PR 19271 by @@lnkuiper in https://github.com/duckdb/duckdb/pull/20359 * Support reading |FIXED_LEN_BYTE_ARRAY| fields with |DELTA_BYTE_ARRAY| encoding by @@arouel in https:// github.com/duckdb/duckdb/pull/20270 * Parquet: Populate the column_orders field and expose it in parquet_file_metadata by @@lasanaka-jumptrading in https://github.com/duckdb/duckdb/pull/20241 * Add RemoveFiles to FileSystem by @@utay in https://github.com/duckdb/duckdb/pull/20333 * Perform cleanup when |COPY| function throws an error by @@yan-alex in https://github.com/duckdb/duckdb/pull/20345 * Pick up stale PR 19268 by @@lnkuiper in https://github.com/duckdb/duckdb/pull/20358 * CachingOperator: handle also ORDERED, and consider swapping chunks by @@carlopi in https://github.com/ duckdb/duckdb/pull/20259 * fix binder: handle errors with over in where inside subquery by @@Pranav2612000 in https:// github.com/duckdb/duckdb/pull/20310 * Add interruption check to optimizer execution by @@EtgarDev in https://github.com/duckdb/duckdb/pull/20377 * Out of core tests by @@lnkuiper in https://github.com/duckdb/duckdb/pull/20383 * Use forward-compatible std::shuffle by @@philippmd in https://github.com/duckdb/duckdb/pull/20395 * fix compilation with FORCE_QUERY_LOG=1 by @@zhanglei1949 in https://github.com/duckdb/duckdb/ pull/20387 * [minor] Fix a few compilation warnings by @@dentiny in https://github.com/duckdb/duckdb/pull/20385 * Add |parse_formatted_bytes| function to parse human-readable byte size by @@EtgarDev in https://github.com/duckdb/duckdb/pull/20107 * Fix issue #20187: Fix PIVOT aggregate mismatch for ranges >=21 by @@gemy26 in https://github.com/duckdb/ duckdb/pull/20272 * Fix caching filesystem |CanSeek| by @@dentiny in https://github.com/ duckdb/duckdb/pull/20330 * Improve format script compatibility on Windows by @@xuboying in https://github.com/duckdb/duckdb/ pull/20398 * Add way to skip version checks in scripts/format.py by @@carlopi in https://github.com/duckdb/duckdb/ pull/20388 * Fix function chain in qualify(#20233) by @@ArNine in https://github.com/duckdb/duckdb/pull/20262 * Fix |concat(null) is null| return false, it should be true(issue: #20306) by @@ArNine in https://github.com/duckdb/duckdb/ pull/20320 * NightlyTests fixes by @@lnkuiper in https://github.com/duckdb/duckdb/pull/20408 * Storage cleanup: remove unused headers and fix transitive includes by @@Schwarf in https://github.com/ duckdb/duckdb/pull/20407 * Avoid frequent checkpoints triggered by optimistic insertions by @@Captain32 in https://github.com/ duckdb/duckdb/pull/20336 * No catalog found Nightly test fix by @@ccfelius in https://github.com/duckdb/duckdb/pull/20409 * TIME_NS Support + Arrow by @@pdet in https://github.com/duckdb/duckdb/pull/20361 * feat(adbc): support the experimental |adbc.ingest.target_catalog| option and improve ingest name resolution by @@eitsupi in https://github.com/duckdb/duckdb/pull/20369 * Fix file opener propagation by @@dentiny in https://github.com/duckdb/duckdb/pull/20414 * Cleanup RowGroup Scan code, and make BoundIndex::Delete throw an error if the rows are not present in the index by @@Mytherin in https://github.com/duckdb/duckdb/ pull/20430 * [Optimizer] Support NOT elimination by @@doublefish5106 in https://github.com/duckdb/duckdb/ pull/20394 * JSON Reader: exit scan loop if we have found an error that we can't yet throw by @@Mytherin in https:// github.com/duckdb/duckdb/pull/20434 * Merge V1.4 -> Main by @@pdet in https:// github.com/duckdb/duckdb/pull/20350 * Internal #6975: Window Inner Self-Join by @@hawkfish in https://github.com/duckdb/duckdb/pull/20459 * Issue #20413: ASOF Arbitrary Predicates by @@hawkfish in https://github.com/duckdb/duckdb/pull/20456 * [C API] Expose safe string assign function by @@taniabogatsch in https://github.com/duckdb/ duckdb/pull/20467 * Internal #6976: Window Self-Join Predicate by @@hawkfish in https://github.com/duckdb/duckdb/pull/20473 * CMake: export also duckdb_generated_extension_loader by @@carlopi in https://github.com/duckdb/duckdb/ pull/20449 * Chore: merge back main into v1.5-variegata by @@carlopi in https://github.com/duckdb/duckdb/pull/20469 * add_third_party(skiplist) into top level CMake by @@carlopi in https://github.com/duckdb/duckdb/pull/20494 * Add SHOW schemas by @@c-herrewijn in https://github.com/duckdb/duckdb/pull/20492 * [SQLLogicTest] Add the |CONTINUE| statement by @@Tishj in https:// github.com/duckdb/duckdb/pull/20489 * Remove fs limitation: OVERWRITE is not supported for remote file systems by @@carlopi in https:// github.com/duckdb/duckdb/pull/20487 * [Encryption] Adding random IV and tag for canary encryption by @@ccfelius in https://github.com/ duckdb/duckdb/pull/20208 * [Optimizer] Push down |variant_extract| + cast into the storage layer by @@Tishj in https://github.com/duckdb/duckdb/pull/20268 * Internal #6977: Window Self-Join Aggregate by @@hawkfish in https://github.com/duckdb/duckdb/pull/20497 @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.5 2026/02/01 08:40:05 ryoon Exp $ d24 1 a24 1 PYTHON_VERSIONS_INCOMPATIBLE= 310 @ 1.5 log @databases/duckdb,py-duckdb: Update to 1.4.4 * Use separated tarballs for duckdb and py-duckdb. The tarball of duckdb does not contain py-duckdb. Changelog: 1.4.4: What's Changed Cast Fix: Correctly handle negative exponent with a number with a decimal in VARCHAR -> INTEGER cast by @@Mytherin in #20098 [Storage] Fix NULL filter check for constant segments by @@Tishj in #20103 fixing staged upload for install.duckdb.org - hopefully by @@hannes in #20104 Remove undefined loop by @@artjomPlaunov in #20105 [Test] Adjust concurrent attach-detach test to expect write-write conflict by @@taniabogatsch in #20108 Fix ALIAS function in filter pushdown to preserve column aliases(#20008) by @@henry8128 in #20106 Headers missing from http logs by @@samansmink in #20030 Bumping httpfs to include duckdb/duckdb-httpfs#174 by @@carlopi in #20145 Issue #20136: Secondary IGNORE NULLS by @@hawkfish in #20153 Fix minio nightly tests by @@c-herrewijn in #20132 Fix use-after-free in mode aggregate Combine function by @@victor-ab in #20146 Only pushdown varchar if the arrow type is not a string view by @@evertlammerts in #20165 Quote filters in adbc_get_objects by @@evertlammerts in #20172 Issue #20156: Streaming Window Unions by @@hawkfish in #20191 MergeInto: correctly clean-up buffer and handle non trivial GetData by @@carlopi in #20163 Fix extentension-ci-tools to latest release version in the v1.4-andium branch by @@carlopi in #20227 [Chore] Clean up CI nightly run to prevent time outs by @@taniabogatsch in #20150 Bump Julia to v1.4.3 by @@maiadegraaf in #20248 Internal #6881: 2025c Time Zones by @@hawkfish in #20258 Split statements by semicolon by @@Dtenwolde in #20174 [chore] Remove numeric_cast.hpp import and other tidy stuff by @@taniabogatsch in #20278 [chore] Reduce latency of VARCHAR index creation test by @@taniabogatsch in #20277 Reuse correct table-level metadata during checkpoints by @@ywelsch in #20267 Fix view resolution not being stable if the referenced table lives in a different schema by @@Tishj in #20260 ConstantOrNullFunction input validity mask overwrite bugfix by @@artjomPlaunov in #20283 dbgen: use TaskExecutor framework by @@Mytherin in #20284 fix(adbc): return error when setting an empty sql query by @@gishor in #20071 Bump iceberg, and add wasm platforms! by @@carlopi in #20205 _extension_distribution: Pin to v1.4-andium branch of extension-ci-tools by @@carlopi in #20294 Optimize prepared statement parameter lookups by @@EtgarDev in #20252 Update VectorType in ComputePartitionIndices by @@lnkuiper in #20343 Add some defensive programming in RadixPartitionedHashTable::Combine and RadixPartitionedHashTable::Finalize by @@lnkuiper in #20342 Increase reserved size for paths in SetPathsInternal by @@Flogex in #20340 Use UTF-16 console output in Windows shell (1.4) by @@staticlibs in #20339 Force repartitioning in RadixPartitionedHashTable::Combine by @@lnkuiper in #20357 Fixup comparison to wrong iterator on abdc's driver by @@carlopi in #20360 [chore] dsdgen generation signed integer overflow fix by @@taniabogatsch in #20279 Give preference do variables set in config by @@pdet in #20396 Add QueryContext also to Write(void *buffer, idx_t nr_bytes), so that BytesWritten are updated also there by @@carlopi in #20393 Fix Issue #20233: fix function chain in qualify by @@ArNine in #20302 Backport client data cleanup by @@taniabogatsch in #20403 Add v1.4.4 to Storage Version by @@maiadegraaf in #20404 Parquet Reader: Ignore invalid UTF8 in string stats, instead of throwing an error by @@Mytherin in #20405 Don't add a semicolon to final query when splitting statements by @@Dtenwolde in #20401 Fixup BRANCHES_TO_BE_CACHED, vars are not available on PRs, so env it is by @@carlopi in #20411 [Fix] Defensive infinite loop guard and UTF-8 check in C API by @@taniabogatsch in #20348 Add ducklake, httpfs and iceberg tests so they are run in CI by @@carlopi in #20319 [Stats] date_trunc stat propagation fix by @@Tishj in #20421 Refactor allowed path sanitize by @@hannes in #20346 Issue #20413: ASOF SEMI/ANTI Bindings by @@hawkfish in #20433 Fix #20410: fix for RIGHT SEMI/ANTI - cannot fully label chain as found if there are non-equality predicates present in the join condition by @@Mytherin in #20435 [Fix] Misaligned size in ART prefix count by @@taniabogatsch in #20455 Wrap ccache in own action by @@carlopi in #20466 [Chore] Add ORDER BY to AS OF test by @@taniabogatsch in #20465 Fix segfault in hive partitioning with NULL values by @@Schwarf in #20468 Nightly test encryption fixes by @@ccfelius in #20461 [C API] Fix error data creation by @@taniabogatsch in #20451 Skip concurrent_encrypted_attach due to race in autoloading httpfs by @@carlopi in #20471 CI fixup: Comparisons needs to be done via strings (since input via workflow_call is a string) by @@carlopi in #20464 Add unity_catalog to extensions built by duckdb/duckdb by @@carlopi in #20445 Invert the setup of ccache and cleanup_runner by @@carlopi in #20429 bump spatial for andium by @@Maxxen in #20479 Reclaim disk space on MacOS runners by @@lnkuiper in #20493 Adding secure clear functions by @@ccfelius in #20285 rewrite unaligned scan by @@artjomPlaunov in #20474 Issue #20470: TIMESTAMPTZ to DATE by @@hawkfish in #20498 Reset cached dictionaries in TRY expression by @@Maxxen in #20452 [Copy] Fix #20324 partition_by option binding by @@Tishj in #20509 Bump multiple extensions by @@maiadegraaf in #20504 update azure ref for v1.4-andium by @@benfleis in #20506 [Fix] Directly retrieve the logical column index during MERGE INTO binding by @@taniabogatsch in #20503 Sanitize pragmas by @@samansmink in #20514 Bump httpfs, ducklake and postgres by @@carlopi in #20518 Revert vortex bump for v1.4.4 by @@taniabogatsch in #20527 Bump VSS by @@taniabogatsch in #20542 Bump Excel by @@maiadegraaf in #20540 Fix Issue #20233: Fix function chain in having and merge to v1.4 by @@ArNine in #20532 bump iceberg by @@Tmonster in #20549 Bump Iceberg v1.4 by @@Tmonster in #20604 Fix KeyValueSecretReader init by @@NiclasHaderer in #20620 Fail fast extensions by @@carlopi in #20605 1.4.3: What's Changed implement proper equals for table functions by @@Maxxen in #19722 Fix behavior for HAVING clause without a GROUP BY by @@Tishj in #19739 Remove httpfs patches and bump by @@carlopi in #19763 Correctly use a lock when accessing the EncryptionKeyManager by @@Mytherin in #19772 Bump iceberg to now default available extension by @@carlopi in #19764 Extract all column bindings of json each function by @@Tmonster in #19766 constraint violation bug fix by @@artjomPlaunov in #19776 Avoid binding macro arguments for untyped macros by @@lnkuiper in #19779 It should probably be ${EXTENSION_CONFIG_BUILD} instead of EXTENSION_CONFIG_BUILD by @@hannes in #19694 Fix #19575: Fix illegal utf8 character by @@flashmouse in #19699 chore: bump vortex to 0.56.0 by @@0ax1 in #19815 PositionalScan: handle also HAVE_MORE_OUTPUT + empty chunk via iteration by @@carlopi in #19824 AttachDatabase: first set whether file is remote, then do the rest by @@carlopi in #19826 Add CacheBehavior::AUTOMATIC to DBInstanceCache that automatically does the right thing™ by @@Mytherin in #19841 Reuse metadata even in the presence of deletes by @@ywelsch in #19823 DuckIndexScanState::TableScanFunc, split into 2 explicit phases by @@carlopi in #19838 Bump httpfs and iceberg by @@carlopi in #19859 Keep cte_root alive while binding materialized CTEs in MERGE INTO children by @@Mytherin in #19863 CI Cleanup (#19840) by @@yan-alex in #19857 Fix #19517: preserve relation name for table-qualified star LIKE expression by @@henry8128 in #19887 avoid underflow/"inf" loop while reporting unittest summary (backport… by @@benfleis in #19900 Fixes incorrect handing of APPROX_QUANTILE TIME by @@Damon07 in #19891 Add v1.4.3 to Storage Version by @@maiadegraaf in #19907 clean up tmp files while building extensions by @@c-herrewijn in #19908 Bump: ducklake, mysql_scanner by @@maiadegraaf in #19910 remove large limit optimization whenever there is a filter by @@guillesd in #19911 free disk space in Upload Extensions job by @@c-herrewijn in #19912 [Compression] Prevent overriding COMPRESSION_EMPTY with COMPRESSION_CONSTANT by @@Tishj in #19913 Make make tidy-check-diff compare against base branch, instead of always comparing against origin/main by @@Mytherin in #19917 More testing for appender and attach-detach by @@taniabogatsch in #19708 Script to release a extension manually by @@samansmink in #19881 Assert that result types match with column data collection when fetching data by @@pdet in #19750 No longer auto-enable profiling on DEBUG mode by @@maiadegraaf in #19931 Fix optimizer incorrectly remove ORDER BY clause from aggregates by @@tianjq16 in #19925 Backport revert append fixes by @@Mytherin in #19941 Bump: spatial by @@Maxxen in #19943 Issue #19916: WASM Time Zones by @@hawkfish in #19918 Fix correlated column binding in ConstantBinder by @@d-justen in #19945 [chore] Increase slow threshold by @@taniabogatsch in #19965 [Parquet] Fix prepared copy option parameter by @@Tishj in #19966 [TestConfig] Fix verify_fetch_row config, reduce duplication in skip_tests by @@Tishj in #19967 remove sha from artifacts by @@c-herrewijn in #19957 Unbound index binding with context by @@artjomPlaunov in #19953 [Fix] Bug in FetchRow after update on indexed table with dict_fsst compression by @@taniabogatsch in #19970 Null assertion on denormalized_table argument by @@Dtenwolde in #19947 [Art][Wal]Unbound index allocations by @@artjomPlaunov in #19901 No sampling over 281TB by @@Tmonster in #19978 Take in consideration if the sniffer used unstrictness while selecting candidates by @@pdet in #20005 [CSV] Avoid throwing unnecessary errors on strict mode by @@pdet in #20007 [Compression] Fix an issue with NULL updates to a column compressed with DICT_FSST by @@Tishj in #20009 Bump: delta, ducklake, iceberg by @@maiadegraaf in #20012 add unity_catalog, update delta by @@samansmink in #20019 Bump spatial by @@staticlibs in #20020 Retag #19821 to v1.4 - Use PLAIN_DICTIONARY for Parquet version 1 by @@pdet in #20024 Fix INSERT OR REPLACE BY NAME with partial columns(#19845) by @@henry8128 in #19989 Bump MySQL scanner by @@staticlibs in #20025 Windows must sample less by @@Tmonster in #20018 Issue #20015: Streaming Window Sequence by @@hawkfish in #20027 bump iceberg by @@Tmonster in #20032 Fix #20014: correctly use numeric_limits::min for NumericLimits::Min so that stats are initialized to -infinity for floating points by @@Mytherin in #20039 Enable windows_arm64 arch for main extensions by @@staticlibs in #20004 Fix mark join decorrelation by @@kryonix in #20033 propagate gate status in Node4::DeleteChild by @@artjomPlaunov in #20044 Bump: httpfs by @@samansmink in #20036 Bump ducklake by @@pdet in #20054 bump azure to v1.4.3 by @@benfleis in #20057 Bump extensions by @@samansmink in #20055 Fix unnecessary dependent join rewrite by @@kryonix in #20048 Version tag for local files for robust external file cache validation by @@lnkuiper in #20058 backport runner cleanup action by @@hannes in #20085 1.4.2: What's Changed bump duckdb-azure ref for 1.4.1 by @@benfleis in #19275 Fix regex optimization to remove flags when converting to contains by @@mlafeldt in #19290 feat: Fix length of sort keys by @@krlmlr in #19260 Pass lambda bindings to next binder by @@Dtenwolde in #19144 bump Julia to v1.4.1 by @@c-herrewijn in #19306 Use cross-compilation for static libs on OSX by @@hannes in #19304 Allow multiple read-only attaches to the same database across database instances by @@Mytherin in #19319 hugeint_t fixes by @@carlopi in #19318 Use CMAKE__COMPILER_LAUNCHER by @@evertlammerts in #19326 Add settings field to test config by @@Mytherin in #19330 Keep track of which database managers have which databases attached in the DatabaseFilePathManager by @@Mytherin in #19338 Bugfixes by @@lnkuiper in #19329 skip several ci jobs on prs that only bump extensions by @@samansmink in #19249 [C API] bind_value out of range fix by @@taniabogatsch in #19348 Destroy TaskNotifier prior to calling FinishTask by @@Mytherin in #19373 Remove zip bombs by @@Mytherin in #19380 Avoid calling shared_from_this() and instead use the passed in ClientContext in buffered data by @@Mytherin in #19379 add test tag support [vfs integration tests p1] by @@benfleis in #19331 Throw if non-VARCHAR key is passed to json_object by @@lnkuiper in #19365 BUGFIX: Silent failure to write row groups with large lists by @@J-Meyers in #19376 Fixes for CTE (de)serialization compatibility with older versions by @@Mytherin in #19393 Fix #18139: correctly initialize flush size in MemoryStream, and re-use writer states by @@Mytherin in #19398 Fixup Kalman fiter: bound it's (0, scale_factor), not (0, 1) by @@carlopi in #19395 Fix StringDecompress for hugeint_t values by @@ywelsch in #19403 Fix #19211: make INSERT OR IGNORE correctly handle multiple constraints by @@Mytherin in #19409 Issue #19386: ICU TZDEFAULT by @@hawkfish in #19413 Fix issue in MetadataManager triggered when doing concurrent reads while checkpointing, and rework concurrent attach / detach test by @@Mytherin in #19424 ADBC fix: escape schema, table and column identifiers by @@evertlammerts in #19407 v1.4: Only serialize CTE nodes when MATERIALIZED is specified by @@Mytherin in #19420 Add forwards compatibility tests to CI by @@Mytherin in #19432 Internal #6168: Unsupported Correlated Binds by @@hawkfish in #19431 Don't pull up filters through DISTINCT ON and make enum casts in Parquet safe (bugfixes) by @@lnkuiper in #19406 Get table bindings for all operators under a logical get if the logical get function is an unnest by @@Tmonster in #19467 WASM #1897: UTC Offset Support by @@hawkfish in #19464 Add tests for nested lambda bindings by @@Dtenwolde in #19453 [Compression] Fix issue in ZSTD decompression related to mis-interpreted segment offsets by @@Tishj in #19475 vfs integration tests p2 - update (env) vars and tests by @@benfleis in #19428 CI Fix: clear benchmark cache between runs by @@Mytherin in #19508 Make DatabaseInstance::log_manager a unique_ptr by @@Flogex in #19471 Support non-standard NULL in Parquet again by @@Mytherin in #19523 Bump: inet by @@samansmink in #19526 Bump multiple extensions by @@samansmink in #19522 add upcoming patch release to internal versions by @@samansmink in #19525 Add test that either 'latest' or 'vX.Y.Z' are supported STORAGE_VERSIONs by @@carlopi in #19527 Moving staging to cf and uploading to install bucket by @@hannes in #19539 Creating separate OSX cli binaries for each arch by @@hannes in #19538 [Dev] Disable the use of ZSTD if the block_manager is the InMemoryBlockManager by @@Tishj in #19543 Follow up to staging move by @@hannes in #19551 Bugfixes: Parquet JSON+DELTA_LENGTH_BYTE_ARRAY and sorting iterator by @@lnkuiper in #19556 [ported from main] Fix bug initializing std::vector for column names by @@evertlammerts in #19555 Disable jemalloc on BSD by @@lnkuiper in #19560 Fix race condition between Append and Scan by @@Captain32 in #19571 Release relevant tests to still be run on all builds by @@carlopi in #19559 fix inconsistent behavior in remote read_file/blob, and prevent union… by @@Maxxen in #19531 [v1.4-andium] Add Profiler output to logger interface by @@carlopi in #19572 Fix edge case in uncompressed validity scan with offset and fix off-by-one in ArrayColumnData::Select by @@Maxxen in #19567 Skip compiling remote optimizer test when TSAN Is enabled by @@Mytherin in #19590 Wal index deletes by @@artjomPlaunov in #19477 add vortex external extension by @@samansmink in #19580 Avoid eagerly resolving the next on-disk pointer in the MetadataReader, as that pointer might not always be valid by @@Mytherin in #19588 [DevEx] Improve error message when FROM clause is omitted by @@Tishj in #18995 bump iceberg by @@Tmonster in #19618 Improve error message around compression type deprecation/availability checks by @@Tishj in #19619 Increase cast-cost of old-style implicit cast to string by @@Maxxen in #19621 Try to prevent overshooting of FILE_SIZE_BYTES by pre-emptively increasing bytes written in Parquet writer by @@lnkuiper in #19622 Bump: spatial by @@Maxxen in #19620 Detect invalid merge into action and throw exception by @@Mytherin in #19636 Fix #19455: correctly extract root table in merge into when running ajoin that contains single-sided predicates that are transformed into filters by @@Mytherin in #19637 Remove FlushAll from DETACH by @@lnkuiper in #19644 Bump MySQL scanner by @@staticlibs in #19643 Enable running all extensions tests as part of the build step by @@carlopi in #19631 Always remember extra_metadata_blocks when checkpointing by @@ywelsch in #19639 duckdb_logs_parsed to do case-insensitive matching by @@carlopi in #19669 Categorize ParseLogMessage as CAN_THROW_RUNTIME_ERROR LVM by @@carlopi in #19668 Log total probe matches in hash join by @@lnkuiper in #19683 Fix InsertRelation on attached database by @@evertlammerts in #19583 Add request timing to HTTP log by @@samansmink in #19691 Add missing query location tohttpfs by @@samansmink in #19715 Fix #19355: correctly resolve subquery in MERGE INTO action condition by @@Mytherin in #19720 Fix #19700: correctly sort output selection vector in nested selection operations by @@Mytherin in #19718 Bump httpfs and resume testing on Windows by @@carlopi in #19714 [Dev] Fix assertion failure for empty ColumnData serialization by @@Tishj in #19713 Bump the Postgres scanner extension by @@Mytherin in #19730 Add explicit Initialize(HTTPParam&) method to HTTPClient by @@carlopi in #19723 Logs to be case-insensitive also at enable_logging callsite by @@carlopi in #19734 Fix CVE GHSA-vmp8-hg63-v2hp crypto issues by @@samansmink in #19716 1.4.1: What's Changed Fix attach to right DB when using DuckLake by @@pdet in #19011 set default value of MAIN_BRANCH_VERSIONING to false by @@c-herrewijn in #19014 ComplexJSON: parse all valid JSON correctly by @@Mytherin in #19024 Issue #19016: ICU Offset Parsing by @@hawkfish in #19029 Throw if we detect a quoted new line with the null padding set in parallel mode by @@pdet in #19012 Bump iceberg & ducklake by @@carlopi in #19037 Build Fix: unordered_map https://blobs.duckdb.org by @@carlopi in #19206 [chore] Attempt at restoring workflow for MinGW Static libs by @@carlopi in #19205 Simple no default region return 301 response by @@Tmonster in #19087 [Fix] Correctly reset the gate status during ART merging by @@taniabogatsch in #19204 build spatial extension for mingw by @@c-herrewijn in #19207 Fixup templated version of TryGetSecretKeyOrSetting by @@carlopi in #19218 Bump: delta by @@samansmink in #19220 Autoloading helper file system: allow either autoloading or proper errors in more file operations by @@carlopi in #19198 Eargerly destroy sort buffers in Window by @@lnkuiper in #19224 [Transaction] Delete and drop of a table can now happen in the same transaction without error by @@Tishj in #18918 PRAGMA's MissingEntry: Suggest CALL might be an option by @@carlopi in #18815 Bump: aws, ducklake, iceberg by @@samansmink in #19228 Issue 18603 by @@Tmonster in #19227 Bump DuckLake to latest of V1.4 by @@pdet in #19237 Bump mysql and sqlite by @@staticlibs in #19240 Don't write parquet-native GEOMETRY by default, add option to control GeoParquet version by @@Maxxen in #19244 When executing a relation, generate a query to set if it is not a query relation by @@Mytherin in #19234 add support for writing geoparquet with v2 metadata too by @@Maxxen in #19246 Bump: iceberg by @@samansmink in #19250 Bump: avro, httpfs by @@samansmink in #19248 bump duckdb-azure ref for 1.4.1 by @@benfleis in #19275 1.4.0: What's Changed Python package devexp improvements by @@evertlammerts in #17483 change exception type to not be an internal exception by @@samansmink in #17551 Remove redundant code path in the ConflictManager by @@taniabogatsch in #17562 Add support for ToSqlString for union types by @@wmTJc9IK0Q in #17513 Update function descriptions and examples by @@c-herrewijn in #17132 Move query profiler's EndQuery after commit/rollback by @@taniabogatsch in #17595 fix extension troubleshooting link by @@simon0191 in #17616 C API tidying by @@taniabogatsch in #17623 bump DuckDB_jll to v1.3.0 by @@c-herrewijn in #17677 Add rowsort in generate_series test #43 by @@jeewonhh in #17675 [C API] Expose duckdb_scalar_function_bind_get_extra_info by @@taniabogatsch in #17666 Enable profiling output for all operator types by @@taniabogatsch in #17665 Output hashes in unittest and fix order by @@niykko in #17664 New Sorting Implementation by @@lnkuiper in #17584 Merge v1.3-ossivalis into main by @@Mytherin in #17690 Issue #17040: FILL Window Function by @@hawkfish in #17686 ClientBufferManager wrapper to access the client context in the buffer manager by @@taniabogatsch in #17699 Revert "set default for MAIN_BRANCH_VERSIONING to false" by @@carlopi in #17708 Sorting followup by @@lnkuiper in #17717 Correctly setting the delim offset by @@Damon07 in #17716 fix linux extension ci by @@samansmink in #17720 Aggregation performance by @@lnkuiper in #17718 Fix windows-2025 build errors by @@adsharma in #17726 [SQLLogicTester] Introduce reset label in the tester by @@Tishj in #17729 Adding additional authenticated data for encryption by @@ccfelius in #17508 csv_scanner: correct code comment by @@Djfe in #17735 Deprecate windows-2019 runners by @@hannes in #17745 re-add httpfs apply_patches by @@samansmink in #17755 Rename decorator from test_nulls to null_test_parameters by @@Mytherin in #17760 [CAPI] Expose ErrorData by @@taniabogatsch in #17722 Expose file_size_bytes and footer_size in parquet_file_metadata by @@gijshendriksen in #17750 Pass ExtensionLoader when loading extensions, change extension entry function by @@Maxxen in #17772 Support glibc 2.28 environments by @@James-Gilbert- in #17776 Mark Upper/LowerComparisonType as const by @@JelteF in #17773 [Indexes] Buffer-managed indexes part 1: segment handles by @@taniabogatsch in #17758 [Julia] api docs improvements by @@tqml in #15645 Ensure we use the same layout in RadixPartitionedHashTable and GroupedAggregateHashTable by @@lnkuiper in #17790 [Profiling] Propagate the ClientContext into file handle writes by @@taniabogatsch in #17754 Fix propagatesNullValues for case expr by @@suibianwanwank in #17796 Add qualified parameter to Python GetTableNames API by @@evertlammerts in #17797 Merge v1.3 into main by @@Mytherin in #17806 Pushdown pivot filter by @@flashmouse in #17801 Replace string for const data ptr in encryption api by @@ccfelius in #17825 Merge130 by @@carlopi in #17833 fix: escape using_columns on JoinRef::ToString by @@akoshchiy in #17839 Fix ICE with Windows ARM64 by @@staticlibs in #17844 Merge v1.3 into main by @@Mytherin in #17851 Add duckdb_type column to parquet_schema by @@Mytherin in #17852 Internal #4991: Remove Epoch_MS(MS) by @@hawkfish in #17816 #17853 Enable flexible page sizes and update Android NDK to r27 in workflow. by @@aprock in #17854 [Indexes] Buffer-managed indexes part 2: segment handle for base nodes by @@taniabogatsch in #17828 Function Serialization: adapt to removal of overloads by explicitly casting if argument types have changed by @@Mytherin in #17864 julia: add missing methods from C-API by @@tqml in #17733 Issue #17153: Window Order Columns by @@hawkfish in #17835 Issue #17040: FILL Secondary Sorts by @@hawkfish in #17821 Add STRUCT to MAP cast function by @@evertlammerts in #17799 Issue #17849: Test FILL Duplicates by @@hawkfish in #17869 Add GenAI policy by @@szarnyasg in #17882 Update function descriptions and examples for list, array, lambda functions by @@c-herrewijn in #17886 Issue #17861: FILL Argument Types by @@hawkfish in #17888 Reword GenAI policy by @@szarnyasg in #17895 Use an arena linked list for the physical operator children by @@taniabogatsch in #17748 Make CTE Materialization the Default Instead of Inlining by @@kryonix in #17459 Merge v1.3 into main by @@Mytherin in #17897 Leverage VectorType in ColumnDataCollection by @@lnkuiper in #17881 Fix empty BP block when writing parquet by @@platypii in #17929 fix use after free in adbc on invalid stmt by @@ruslandoga in #17927 Do not dispatch JDBC/ODBC jobs in release CI runs by @@staticlibs in #17937 Block based encryption by @@ccfelius in #17275 Unittester failures summary by @@hmeriann in #16833 Add v1.3-ossivalis to Cross version workflow by @@hmeriann in #17906 [CI Nightly Fix] Skip logging test if not standard block size by @@taniabogatsch in #17957 Visual Studio 17 (2022) fixes by @@edouarda in #17948 [Nested] Add struct_position and struct_contains functions by @@maiadegraaf in #17819 Enable building spatial and encodings extensions by @@staticlibs in #17960 [Nested] Optimize structs in LIST_by @@hmeriann in #17949 Issue #5144: AsOf Join Threshold by @@hawkfish in #17979 [Fix] Reset profiling info before preparing a query by @@taniabogatsch in #17940 Flag to disable database invalidation by @@taniabogatsch in #17938 Issue #5123: mpdet in #17947 c-api to copy vector with selection by @@abramk in #17870 Fix #18007: correctly execute expressions with pivot operator by @@Mytherin in #18020 [Chore] Minor conflict manager refactoring by @@taniabogatsch in #18015 Remove LinuAML format for EXPLAIN statements by @@qsliu2017 in #17572 Unittest: Add skip_compiled option that can be used to skip built-in C++ tests by @@Mytherin in #18034 Add ppc64le spin-wait instruction by @@mgiessing in #17837 Merge ossivalis into main by @@taniabogatsch in #18036 Remove match-case statements from polars_io.py by @@evertlammerts in #18052 Avoid adding commands read from a file to the shell history by @@Mytherin in #18057 Adding WAL encryption by @@ccfelius in #17955 Encryption: adding -key for the command line by @@ccfelius in #17950 fix star expr exclude error by @@jayhan94 in #18063 Add support for class-based expression iteration by @@Mytherin in #18070 Use timestamp_t instead of time_t for file last modified time by @@lnkuiper in #18037 Unittester: add on_new_connection + on_load + skip_tests options by @@carlopi in #18042 Fix some scaling issues by @@lnkuiper in #17985 Issue #18071: Temporal inf -inf by @@hawkfish in #18083 Switch to Optional for type hints in polars lazy dataframe function by @@evertlammerts in #18078 Unittest: Configure skip error messages by @@carlopi in #18087 Avoid running DraftPR.yml until timeout if token is missing by @@carlopi in #18090 Add start/end offset percentage options to Python test runner by @@Flogex in #18091 [CSV Reader] Prohibit options delim and sep in same read_csv call by @@ackxolotl in #18096 Fix correlated subquery unnest fail by @@flashmouse in #18092 [CI] don't run jobs on draft PRs by @@hmeriann in #18016 TPC-DS: Use BIGINT fields by @@szarnyasg in #18098 Don't throw InternalException in Sort::Sink by @@lnkuiper in #18105 ci: build duckdb against the latest emscripten by @@cpcloud in #18110 [chore] Merge v1.3-ossivalis on main by @@carlopi in #18109 Update description of 'arrow_lossless_conversion' by @@szarnyasg in #18046 Internal #3273: Window Task Generation by @@hawkfish in #18113 set ::error:: annotations for test runners by @@hmeriann in #18072 Improve sort key comparison performance by @@lnkuiper in #18131 Add support for MERGE INTO by @@Mytherin in #18135 Detect when updates have no effect, and skip performing the actual updates if we encounter these nop updates by @@Mytherin in #18144 Add support for AdbcConnectionGetObjects(table_type) by @@kou in #18066 Issue #17683: TIME_NS Compilation by @@hawkfish in #18053 Implement replace_type function by @@lnkuiper in #18077 Bump spatial again: include re-linking for handling global objects in Wasm by @@carlopi in #18170 Resolve some small build issues by @@madscientist in #18162 fix typo by @@felixhummel in #18165 Avoid realloc in CSV writer by @@lnkuiper in #18174 fix bug with allowed_paths by @@samansmink in #18176 Reduce lock contention for the instance cache by @@NiclasHaderer in #18079 Check if GetLastSegment is not nullptr in ColumnData::RevertAppend by @@lnkuiper in #18171 [Profiling] Move the client context into more write functions by @@taniabogatsch in #17875 Bump Julia to v1.3.2 by @@hmeriann in #18185 Merge v1.3-ossivalis into main by @@carlopi in #18188 Parquet reader logging by @@lnkuiper in #18172 Add VS2019 compat flag to Python wheel build by @@staticlibs in #18198 [Parquet][Dev] Update the vendored parquet.thrift to 3ce0760 by @@Tishj in #18195 Two-rowID-leaf support in the conflict manager and general refactoring by @@taniabogatsch in #18194 More internal-linkage by @@Maxxen in #18177 Temporary file encryption by @@Mytherin in #18208 Adding temporary file encryption by @@ccfelius in #18013 Skip logging test for smaller block sizes by @@taniabogatsch in #18201 ci(pyodide): enable WASM exceptions on the latest pyodide build by @@cpcloud in #18173 Allow explicit compression for user types by @@lnkuiper in #18219 Get type of encoded SortKey from TupleDataLayout by @@lnkuiper in #18218 Improve Parquet reader NULL statistics and compress all-NULL columns using CompressedMaterialization by @@lnkuiper in #18217 Internal #5264: NLJ Not Distinct by @@hawkfish in #18216 Bug#18163 Fix STDDEV_SAMP undeterminism by @@minaracic in #18210 [Parquet] Add read support for the VARIANT LogicalType by @@Tishj in #18187 Track DataChunk memory usage in various places by @@lnkuiper in #18191 Better NULL handling in TupleDataLayout by @@lnkuiper in #18069 Dictionary functions by @@lnkuiper in #18127 Add support for geoarrow encoded geometries in geoparquet files. by @@cfis in #17942 Improve descriptions of thresholds vars affecting join algorithm selection by @@TheHillBright in #17377 Connect relations that are not in a subgraph, but are still part of the new relation set by @@Tmonster in #18182 [Fix] Don't write empty (partial) blocks for FSST dictionary compression by @@taniabogatsch in #18203 Slightly higher memory limit for test by @@lnkuiper in #18235 Re-add string -> hugeint compressed materialization function by @@lnkuiper in #18234 [Fix] Database path conflict resolution by @@taniabogatsch in #18247 Remove require block size from a batch of tests by @@taniabogatsch in #18242 Add nightly builds for out-of-tree python extension by @@evertlammerts in #18239 Backport DB invalidation flag to ossivalis by @@taniabogatsch in #18244 Bump vcpkg-duckdb-ports and test extensions on Windows 10 default stdlib by @@carlopi in #18205 Add type safety to FlatVector::GetData, ConstantVector::GetData and UnifiedVectorFormat::GetData by @@Mytherin in #18256 [Fix] Adjust test for smaller block sizes by @@taniabogatsch in #18255 Fix integer overflow in sequence vector by @@xuke-hat in #18245 fixes for some minor llvm 20 complaints by @@hannes in #18257 update run_extension_medata_tests.sh by @@hmeriann in #17976 Bunch of loosely connected test/CI fixes by @@carlopi in #18254 disable WebAssembly duckdb-wasm builds job in NightlyTests triggered by 'workflow_dispatch' event by @@hmeriann in #18129 Allow for static libs from extension dependencies to be bundled by @@abramk in #18226 Fix dictionary-related assertions by @@lnkuiper in #18260 Fixes for gcc 15 by @@hannes in #18261 Reduce copy in Vector::Reinterpret by @@xuke-hat in #18264 [Parquet] Add read support for the VARIANT LogicalType (with shredded encoding) by @@Tishj in #18224 Expanded autocomplete suggestions by @@Dtenwolde in #18243 Support HUGEINT in printf and format by @@xuke-hat in #13277 Move aarch64 / arm64 to native github runner by @@evertlammerts in #18269 Bump vcpkg-duckdb-ports to solve OSX linking by @@carlopi in #18268 Add support for RETURNING to MERGE INTO by @@Mytherin in #18271 Use set for row ID scanning during index scans by @@taniabogatsch in #18274 Use DuckDB cast infrastructure in fmt for new uhugeint/hugeint code by @@Mytherin in #18275 [Fix] Adjust test to run with different block sizes by @@taniabogatsch in #18277 Use FromEpochSeconds instead of FromTimeT in FileSystem::GetLastModifiedTime by @@lnkuiper in #18281 Add target for installing Python deps. by @@xevix in #18285 backport 'Unit Tester Configuration' pt2 by @@c-herrewijn in #18282 backport 'Unit Tester Configuration' by @@c-herrewijn in #18263 Fixup Main.yml for v1.3-ossivalis post #18282 by @@carlopi in #18289 SHOW TABLES FROM by @@xevix in #18179 [Unittester] Add autoloading option by @@carlopi in #18290 Merge ossivalis into main by @@taniabogatsch in #18272 resolve hidden merge conflict with duplicate db name in json configs by @@c-herrewijn in #18292 Bump vcpkg-duckdb-ports, now fixing also mingw by @@carlopi in #18300 [Fix] Missing block when renaming fields by @@taniabogatsch in #18293 [Arrow] Fix unused static function warning by @@Tishj in #18278 feat: Parquet extension add row_group_compressed_size by @@mapleFU in #18294 [Parquet][Write] Fix timestamp sec writes to parquet by @@Tishj in #18273 bump httpfs by @@Tmonster in #18258 [Clang Tidy] Fix missing includes in patas_scan.hpp by @@Tishj in #18276 New Arrow C-API by @@pdet in #18246 Skip test/sql/copy/s3/url_encode.test due to httpfs update by @@carlopi in #18317 Make storage-version a test parameter by @@Mytherin in #18324 Backport #18254 by @@carlopi in #18306 feat: making Parquet write RowGroup.total_compressed_size by @@mapleFU in #18307 add the from-table-function as parameter to copy-from-bind by @@peterboncz in #18004 Python external dispatch param fixes by @@evertlammerts in #18343 Aarch64 backport by @@evertlammerts in #18345 Fix debug error in join order optimizer by @@Tmonster in #18344 [Fix] Block verification for add and drop field info by @@taniabogatsch in #18302 download Real Nest data in quiet mode by @@hmeriann in #18346 Fix condition indexes in join filter pushdown by @@Damon07 in #18341 [unittest] - fix doubled error headers on Unexpected failure by @@hmeriann in #18314 Extend PEG parser grammar by @@Dtenwolde in #18221 [C API] Expose expressions and use them in scalar function binding by @@taniabogatsch in #18142 Restore OSX tests, moving them to single --autoloading available step by @@carlopi in #18335 Add support for checkpointing in-memory tables by @@Mytherin in #18348 Revert "[unittest] - fix doubled error headers on Unexpected failure" by @@Mytherin in #18355 Python external dispatch param fixes by @@evertlammerts in #18359 Re-enable url-encode test by @@Tmonster in #18360 Enable stack traces on linux for bundled libraries by @@taniabogatsch in #18363 Split up out-of-tree extensions into separate files, and allow out-of-tree extensions to be built using BUILD_EXTENSIONS={ext_name} by @@Mytherin in #18357 Pass AttachOptions to attach method, and turn StorageExtensionInfo into an optional_ptr by @@Mytherin in #18368 Merge v1.3-ossivalis into main by @@carlopi in #18364 More robustness around deprecated extension settings by @@carlopi in #18353 Add missing ninja to workflow file by @@Dtenwolde in #18373 bump httpfs by @@Tmonster in #18380 Re-enable but deprecate CORE_EXTENSIONS in CMakeLists.txt by @@evertlammerts in #18377 Uncomment skipped decimal REE tests by @@amoeba in #18372 add option 'block_size' to test configs by @@c-herrewijn in #18347 [chore] Fixup side-effects from 8cf9ed4 by @@carlopi in #18385 Bump httpfs by @@taniabogatsch in #18388 Re-use table metadata when table is not altered during checkpoint by @@Mytherin in #18390 Approx database count system function by @@taniabogatsch in #18392 Re-use metadata of unaltered row groups when checkpointing a table by @@Mytherin in #18395 Correct and consistent integer arithmetic error messages by @@soerenwolfers in #18393 Record whether or not cross products are implicit or not, and use this for converting queries back to SQL by @@Mytherin in #18394 CI: Fix Discussion mirroring by @@szarnyasg in #18397 Store extra metadata blocks in RowGroupPointer, and only flush dirty Metadata blocks by @@Mytherin in #18398 Internal #3273: Window Hashed Sort by @@hawkfish in #18337 Wrap runner.ExecuteFile, otherwise cleanup is not properly performed by @@carlopi in #18400 [BUGFIX] Update delim offset for RHS of DELIM JOIN when correlated column is in RHS of Cross product by @@Tmonster in #18375 CI: Add separate job for discussion mirroring by @@szarnyasg in #18407 [ Python SQLLogic Tester ] Add MERGE_INTO statement to duckdb python by @@hmeriann in #18402 Remove incorrect assertion by @@Mytherin in #18404 Internal #5294: TIME_NS C API by @@hawkfish in #18215 Add DuckLake back in by @@Mytherin in #18405 Add support for table_constraints of AdbcConnectionGetObjects() by @@kou in #18181 Merge v1.3-ossivalis in main by @@carlopi in #18401 feat: remove anything following ? in database name by @@rustyconover in #18417 Correctly fetch only base column data in ColumnData::FetchUpdateData by @@Mytherin in #18423 Refactor extension CI to use extension-ci-tools by @@samansmink in #18361 Internal #5367: SortedAggregateFunction Sort Update by @@hawkfish in #18408 Internal #5368: WindowNaiveAggregator Sort Update by @@hawkfish in #18409 [Fix] Block size nightly by @@taniabogatsch in #18425 [Chore] Tidy test configs by @@taniabogatsch in #18426 Include pyodide build configuration by @@rgbkrk in #18183 Parquet: add row-group ordinal during writing encryption by @@mapleFU in #18433 [Fix] Reset segment memory when initialising new Prefix by @@taniabogatsch in #18441 Update pyodide build to 0.28.0 by @@rgbkrk in #18446 Add support for "template" types by @@Maxxen in #18410 Internal #5384: WindowDistinctAggregator Sort Update by @@hawkfish in #18442 [Chore] Improve skipped tests in test config and add verify_fetch_row config by @@taniabogatsch in #18436 Buffer index appends during WAL replay by @@taniabogatsch in #18313 Add support for generic settings, and move many settings over to generic settings by @@Mytherin in #18447 Internal #5385: WindowMergeSortTree Sort Update by @@hawkfish in #18461 Bump postgres to latest main by @@Mytherin in #18464 Merge ossivalis by @@taniabogatsch in #18456 Internal #5366: WindowDeltaScanner by @@hawkfish in #18468 SUM and + Operator for Varints by @@pdet in #18424 [Fix] Rework transaction logic in commit, rollback and checkpoint paths by @@taniabogatsch in #18474 re-nable extensions in invokeci by @@samansmink in #18476 Internal #5384: Window Sorting Polish by @@hawkfish in #18484 Unify ON CONFLICT and MERGE INTO by @@Mytherin in #18480 More insights around dict_fsst compression failure by @@taniabogatsch in #18475 Change ctrl-a/ctrl-e to move to start/end of line, not buffer by @@tpot in #18490 add delta linux back to ci by @@samansmink in #18491 Fix accidental internal exception in type transformation by @@hannes in #18492 [Profiling] Add client context into read functions by @@maiadegraaf in #18438 julia: config improvements by @@aplavin in #17585 fix: add missing space in AttachInfo::ToString() by @@rustyconover in #18500 Merge ossivalis by @@taniabogatsch in #18502 Change UNICODE to UTF8 by @@sheldonrobinson in #17586 Fix: Remove overly strict assertion on empty string value by @@Dtenwolde in #18504 Fix several bugs/fuzzer issues by @@Mytherin in #18503 Allow expressions to be used in ATTACH / COPY options by @@Mytherin in #18515 Remove immediate_transaction_mode from DB config options by @@jeewonhh in #18516 Temporarily excluding Build Pyodide wheel for Python 3.11 because it fails to build WASM wheels by @@hmeriann in #18508 ParserException for Pragma with named parameters by @@Dtenwolde in #18506 Add verify fetch row config to Main.yml by @@taniabogatsch in #18478 Adding WITH ORDINALITY to DuckDB by @@niykko in #16581 When tracking evicted_data_per_tag, track actual size on disk after temp file compression by @@Mytherin in #18521 Fix: Write the salt together with the HT offset when determining the value for key comparison by @@gropaul in #18374 Fix incorrect character encoding in GetLastErrorAsString on Windows by @@soutong in #18431 Dynamically determine dictionary size limit in Parquet writer (if unset) by @@lnkuiper in #18356 Internal #16560: Numeric TRUNC Precision by @@hawkfish in #18511 Consistently detect JSON schema indepent of number of threads by @@lnkuiper in #18522 ALP test: skip TPC-DS 67 - it is not consistent with floating point numbers by @@Mytherin in #18528 [Varint] Negation, Subtraction and Over/under-flow checking by @@pdet in #18477 fix: support both field orders for variant struct by @@samansmink in #18532 Add CAPI to retrieve client context for table functions by @@VGSML in #18520 Add StatementVerifier for EXPLAIN by @@lnkuiper in #18529 Use global index, not local id when creating filters in MultiFileColumnMapper by @@lnkuiper in #18537 Add support for explicit clean-up routine in test config, and exit multi-statement execution when an error is encountered by @@Mytherin in #18539 fix: improve handling variant nulls and nested types by @@samansmink in #18538 Allow overriding openssl version for FIPS compliance by @@abramk in #18499 Unittester: Add the --sort-style parameter that allows a fallback comparison where results are sorted according to a given sort-style by @@Mytherin in #18542 Restore missing test/configs/small_block_size.json file by @@hmeriann in #18507 [Fix] Follow-up PR to only delete unique row IDs by @@taniabogatsch in #18545 [ART] Node::Free refactoring by @@taniabogatsch in #18544 Implement special-case VARCHAR to JSON[] casts and vice versa by @@lnkuiper in #18541 Check if heap_block_ids is empty before getting start/end when destroying chunks in TupleDataCollection by @@lnkuiper in #18556 optimize/parquet: generate movable types for parquet by @@mapleFU in #18510 [easy] [no-op] Minor optimization on iterator lookup by @@dentiny in #15349 Fixing compilation with -std=cpp23 by @@hannes in #18557 Add compile option standalone-debug for clang by @@flashmouse in #17433 Rename the Varint type to Bignum by @@pdet in #18547 [Indexes] Buffer-managed indexes part 3: segment handle for Node48 and Node256 by @@taniabogatsch in #18567 fix: add formatting to explain row counts by @@rustyconover in #18566 [CSV Sniffer] Fixing bug of not properly setting skipped rows from sniffer by @@pdet in #18555 [Fix] Tidy check ossivalis by @@taniabogatsch in #18583 [Fix] Adjust shrink threshold back to original count > SHRINK_THRESHOLD by @@taniabogatsch in #18582 Flip left/right delim join based on cardinalities by @@lnkuiper in #18552 fix: use thousands separator and decimal for row counts induckbox output format by @@rustyconover in #18564 Force LIST/ARRAY child vectors on a Parquet single page by @@lnkuiper in #18578 String dictionary hash cache by @@lnkuiper in #18580 fix: libduckdb.so missing soversion by @@strophy in #18305 Pushdown filters on coalesced outer join keys compared for equality under the join condition by @@matteobilardi in #18169 Adds a function for updating and adding values in a struct by @@teaguesterling in #15533 fix hidden merge conflict by @@hannes in #18589 Increment storage version to enable DICT_FSST in benchmark file by @@lnkuiper in #18588 [Fix] Hidden test failure in test_struct_update.test by @@taniabogatsch in #18598 correctly setting log transaction id in ThreadContext by @@xuke-hat in #18536 Backport renaming a config name small_block_size.json to block_size_16kB in NightlyTests by @@hmeriann in #18581 Update README.md by @@matthew-wright07 in #18614 [Test] Fix test case and a benchmark by @@hmeriann in #18610 [CI] Don't zip and upload Code Coverage tests results when Code Coverage got cancelled by @@hmeriann in #18607 [Profiling] Add client context into more read functions by @@maiadegraaf in #18514 bump httpfs by @@Tmonster in #18591 Fix serialization backwards compatability for varargs functions by @@Maxxen in #18596 Issue #18631: Streaming Windowed Quantile by @@hawkfish in #18636 parquet/parquet_multi_file_info.cpp: fix move from stack by @@carlopi in #18634 Adjust filter pushdown to latest polars release by @@pdet in #18624 Re-add hugeint to __internal_compress_string by @@jeewonhh in #18622 Add Field IDS to multi file reader for positional deletes by @@Tmonster in #18617 [CSV Sniffer] Fix type detection issue with union and empty columns by @@pdet in #18606 [ART] ART::Erase refactoring by @@taniabogatsch in #18595 wrap httplib ::max() call in WIN_32 check by @@Tmonster in #18590 Add enable verification config run by @@taniabogatsch in #18467 feat: add ETA to progress bar in DuckDB CLI by @@rustyconover in #18575 Add "Hash Zero" verification CI run by @@lnkuiper in #18623 Make more configs into generic settings by @@jeewonhh in #18592 bump avro to v1.4 by @@Tmonster in #18434 bump spatial (on main) by @@Maxxen in #18197 Change arrow() to export record batch reader by @@pdet in #18642 [Fix] Prevent logger deadlock by @@taniabogatsch in #18637 Remove PRAGMA enable_verification by @@taniabogatsch in #18645 Add 1.4 release codename by @@hannes in #18652 Python test runner: Fix result check for COPY ... RETURN_STATS queries by @@Flogex in #18625 Merge ossivalis into main by @@taniabogatsch in #18644 CLI: Make ETA more of an estimate, and support large_row_rendering for footers by @@Mytherin in #18656 Remove more PRAGMA enable_verification by @@taniabogatsch in #18664 [CI] skip building encodings extension in InvokeCI by @@hmeriann in #18655 Python test runner: Fix hash comparison error output by @@Flogex in #18626 [Dev] Add script to create patch from changes in an extension repository by @@Tishj in #18620 Correctly set weights in reservoir sample when switch to slow sampling by @@xuke-hat in #18563 Internal #5366: Window Interrupt Arguments by @@hawkfish in #18651 Remove PRAGMA enable_verification in more tests by @@taniabogatsch in #18670 [ Python SQLLogic Tester ] Add MERGE_INTO to statement.type enum in result.py by @@hmeriann in #18675 Load pandas in import cache before binding by @@evertlammerts in #18658 Internal #5662: IEJoin Test Plans by @@hawkfish in #18680 Correctly allocate uncompressed string data in ZSTD for many giant strings by @@Mytherin in #18678 Grab lock and double-check that column is not loaded in MoveToCollection by @@Mytherin in #18677 fix error message related to wrong memory unit by @@LiranBri in #18671 [CI] Temporarily skip triggering R Package Windows (Extensions) job by @@hmeriann in #18628 Fix the issue where delta_for isn't used in bitpacking when for is unavailable by @@xuke-hat in #18616 Add date_trunc() simplification rules by @@rcurtin in #18457 Expected errors 2053 by @@hmeriann in #14213 Internal #5366: Window State Arguments by @@hawkfish in #18676 Add WAL test config run by @@taniabogatsch in #18683 Using a different workflow to release the python package by @@evertlammerts in #18685 Make sure parse errors are wrapped in ErrorData by @@evertlammerts in #18682 [Python SQLLogicTest] Add test/sql/pragma/profiling/test_profiling_all.test to the SKIPPED_TESTS set by @@hmeriann in #18689 Issue #18457: DateTrunc Simplification Warnings by @@hawkfish in #18687 Expected errors 2053 by @@hmeriann in #18695 Hold row group lock for entire call of MoveToCollection by @@Mytherin in #18694 Unplug python (in ossivalis) by @@evertlammerts in #18699 Correctly handle collations for IN (subquery) by @@Mytherin in #18698 Move attached databases from a CatalogSet to a dedicated map of shared pointers by @@Mytherin in #18693 Make ART construction iterative via ARTBuilder by @@taniabogatsch in #18702 [Fix] Correctly handle table and index chunks in WAL replay buffering by @@taniabogatsch in #18700 Python-style positional/named arguments for macro's by @@lnkuiper in #18684 Internal #3273: Hashed Sort States by @@hawkfish in #18690 Add Option to Allocate Using an Arena in string_t by @@maiadegraaf in #17992 Fix issue with materialized CTE optimization in flatten_dependent_join by @@kryonix in #18714 [Profiling] Add Profiling to Read Function by @@maiadegraaf in #18661 Correctly throw an error when too few columns are supplied in MERGE INTO INSERT by @@Mytherin in #18715 Improved grammar generation script by @@NiclasHaderer in #18716 #Fix 18558: add row_group scan fast path by @@flashmouse in #18686 Added support for blob<->uuid conversions by @@dioptre in #18027 Minor fixes for other catalogs - mostly checking IsDuckTable() for unsupported operations by @@Mytherin in #18720 Fix PIVOT in multiple statements by @@evertlammerts in #18729 Internal #5669: Loop Join Thresholds by @@hawkfish in #18733 feat: enhance .tables command with schema disambiguation and filtering by @@shivampr in #18641 Add (CSV) file logger by @@samansmink in #17692 Use 1-based indexing for SQL-based JSON array extraction by @@lnkuiper in #18735 [unittest] SkipLoggingSameError() to make unittester report one failure per case by @@hmeriann in #18270 fix timetravel for default tables by @@samansmink in #18240 [C API] Function to set a copy callback for bind data by @@taniabogatsch in #18739 Secrets: if serialization_type is not specified, assume it's a key value secret by @@Mytherin in #18743 Merge ossivalis into main by @@taniabogatsch in #18719 Use correct type for pushing collations in subqueries by @@Mytherin in #18744 Add OS X notarization for DuckDB CLI and libduckdb.dylib by @@hannes in #18747 Add missing expected errors to the test cases by @@hmeriann in #18746 removed placeholder client directories for node and jdbc, its been > 1 yr by @@hannes in #18757 Append using a SQL query, instead of directly appending to a base table, and support user-provided queries through the QueryAppender by @@Mytherin in #18738 Backport #18374 to v1.3-ossivalis by @@lnkuiper in #18752 Add leak suppressions to nightly runs by @@Mytherin in #18748 Remove separate WAL encryption flag by @@Mytherin in #18750 Fixing lazy polars execution on query result by @@pdet in #18749 [Profiling] Add Profiling to Write Function by @@maiadegraaf in #18724 Extensions.yml should also check converted_to_draft by @@carlopi in #18754 Minor logging fixes and more benchmarking by @@samansmink in #18755 Add missing expected errors to the test cases (next chunk) by @@hmeriann in #18753 Refactor read_blob and read_text to use MultiFileFunction. by @@xevix in #18706 Add support for auto-globbing within a directory: if no matches are found for a specific path, we retry with /**/*.[ext] appended by @@Mytherin in #18760 Fix radix partitioning with more than 10 bits by @@ctsk in #18761 Fix index resolution when querying table with index via view by @@mach-kernel in #18319 Fix Path Typo in Extension's CMake Warning Message by @@beryllw in #18766 Make duckdb_log return a TIMESTAMP_TZ by @@Mytherin in #18768 Revert "Use 1-based indexing for SQL-based JSON array extraction" by @@Mytherin in #18758 [CI] Adjust test configs post logger PR by @@taniabogatsch in #18771 [Test Fix] Forward output to file by @@taniabogatsch in #18772 Propagate DUCKDB_*_VERSION in extensions and tests by @@Y-- in #18774 Add file_size_bytes (de-)serialization by @@lnkuiper in #18775 Use microsecond resolution for printing the current timestamp by @@Mytherin in #18776 Improve error messages for merge / vector reference by @@Mytherin in #18777 Move row id logic to separate RowIdColumnData class instead of inlining it into the RowGroup by @@Mytherin in #18780 Treat ENABLE_EXTENSION_AUTOINSTALL as the BOOL that it is by @@evertlammerts in #18778 Add memory_limit parameter to benchmark_runner/test_runner.py by @@lnkuiper in #18790 fix: improve speed of GetValue() for STRUCT type by @@rustyconover in #18785 Internal #3273: Parallel Window Masks by @@hawkfish in #18731 Task Scheduler: track exact task count, and re-signal on dequeue failure if there are tasks left by @@Mytherin in #18792 fix: coalesce query progress updates to reduce terminal writes by @@rustyconover in #18672 Support expressions as COPY file target by @@Mytherin in #18795 Remove everything python-package related by @@evertlammerts in #18789 Improve autocomplete suggestions by @@Dtenwolde in #18773 bump httpfs so it includes curl option by @@Tmonster in #18691 Issue #18767: Ignore Timestamp Offsets by @@hawkfish in #18794 Fixup progress_bar: avoid converting doubles into int32_t unchecked by @@carlopi in #18800 [chore] Fixup tidy-check on src/logging/log_manager.cpp by passing const & by @@carlopi in #18801 Internal #3273: Hashed Sort Callbacks by @@hawkfish in #18796 Typed macro parameters by @@lnkuiper in #18786 Fix some unindented interactions between EMPTY_RESULT_PULLUP and MATERIALIZED CTEs by @@kryonix in #18805 Add support for non-aggregate window functions by @@Maxxen in #18788 Expected errors 2053 by @@hmeriann in #18810 Test runner: Expand '{UUID}' into a random UUID by @@carlopi in #18809 Provide failing file name in Parquet reader error messages by @@Mytherin in #18814 [CI] install libcurl4-openssl-dev with apt-get by @@hmeriann in #18811 fix: Add COLLATE NOCASE support to strpos function by @@shivampr in #18819 Add callback to get a list of copy options, use this to provide suggestions and to erase options from import that are only used during exporting by @@Mytherin in #18812 For BC reasons - keep VARINT as alias for BIGNUM by @@Mytherin in #18821 [Fix] Bug in fixed-size buffer when throwing out-of-memory by @@taniabogatsch in https://github.com/duckdb/duckdb/pull/18769 Re-add accidentally removed check if copy_from is supported by @@Mytherin in https://github.com/duckdb/duckdb/pull/18824 Fix format-fix runs on Linux by @@staticlibs in https://github.com/duckdb/duckdb/pull/18827 Extensions.yml: Pass down save_cache to inner workflows by @@carlopi in https://github.com/duckdb/duckdb/pull/18828 Fix: Preserve database configuration flags for tab completion in DuckDB shell by @@rustyconover in https://github.com/duckdb/duckdb/pull/18482 Ensure a WAL file matches the DB file and checkpoint iteration by @@taniabogatsch in https://github.com/duckdb/duckdb/pull/18823 fix: sanitize input for enable_logging by @@samansmink in https://github.com/duckdb/duckdb/pull/18830 fix: silence warnings about signed/unsigned conversions. by @@rustyconover in https://github.com/duckdb/duckdb/pull/18835 Avoid expensive checkpoints and write amplification by appending row groups, and limiting vacuum operations for the last number of row groups by @@Mytherin in https://github.com/duckdb/duckdb/pull/18829 Fix/run function in transaction by @@Evannnnnnnn in https://github.com/duckdb/duckdb/pull/18741 add appender to concurrent test by @@c-herrewijn in https://github.com/duckdb/duckdb/pull/18721 Add support for reading/writing native parquet geometry types by @@Maxxen in https://github.com/duckdb/duckdb/pull/18832 Don't notify Py pkg when override git describe is set by @@evertlammerts in https://github.com/duckdb/duckdb/pull/18843 Avoid printing '99 hours', given in most cases that means estimate is… by @@carlopi in https://github.com/duckdb/duckdb/pull/18839 Add the VARIANT LogicalType by @@Tishj in https://github.com/duckdb/duckdb/pull/18609 Document storage version flag in CLI + minor rendering fix by @@Mytherin in https://github.com/duckdb/duckdb/pull/18841 Ignore null verification for statistics on structs by @@d-justen in https://github.com/duckdb/duckdb/pull/18813 Add OnBeginExtensionLoad callback by @@Mytherin in https://github.com/duckdb/duckdb/pull/18842 Bump MySQL/Postgres/SQLite by @@Mytherin in https://github.com/duckdb/duckdb/pull/18848 Merge ossivalis into main by @@taniabogatsch in https://github.com/duckdb/duckdb/pull/18844 Add test_env to unit tester by @@pdet in https://github.com/duckdb/duckdb/pull/18847 WAL <> DB File Match Fixes by @@Mytherin in https://github.com/duckdb/duckdb/pull/18849 Make ATTACH OR REPLACE atomic, keep list of used databases in MetaTransaction by @@Mytherin in https://github.com/duckdb/duckdb/pull/18850 Fix NULL path for json_each/json_tree by @@lnkuiper in https://github.com/duckdb/duckdb/pull/18852 No more wal_encryption flag by @@jeewonhh in https://github.com/duckdb/duckdb/pull/18851 Bump Ducklake by @@pdet in https://github.com/duckdb/duckdb/pull/18825 Add more encryption modes CTR and CBC by @@hannes in https://github.com/duckdb/duckdb/pull/18619 Centralize attached database paths in a DatabaseFilePathManager which is shared across databases created through the same DBInstanceCache by @@Mytherin in https://github.com/duckdb/duckdb/pull/18857 Hold segment lock during GetColumnSegmentInfo by @@Mytherin in https://github.com/duckdb/duckdb/pull/18859 update duckdb azure extension ref for 1.4.0 by @@benfleis in https://github.com/duckdb/duckdb/pull/18868 Expected errors 2053 by @@hmeriann in https://github.com/duckdb/duckdb/pull/18864 Add a FORCE_DEBUG flag to force -DDEBUG, similar to FORCE_ASSERT by @@Mytherin in https://github.com/duckdb/duckdb/pull/18872 Bump & remove patches for delta, avro, excel, encodings, fts by @@samansmink in https://github.com/duckdb/duckdb/pull/18869 [minor] Incompatible DB error message: add newline by @@carlopi in https://github.com/duckdb/duckdb/pull/18861 Bump mbedtls to v3.6.4 by @@Mytherin in https://github.com/duckdb/duckdb/pull/18871 Storage fuzzing + several fixes by @@Mytherin in https://github.com/duckdb/duckdb/pull/18876 Update ducdkb iceberg hash by @@Tmonster in https://github.com/duckdb/duckdb/pull/18873 [Test] Small fixes to concurrent attach/detach test by @@taniabogatsch in https://github.com/duckdb/duckdb/pull/18862 Internal #5796: Window Progress by @@hawkfish in https://github.com/duckdb/duckdb/pull/18860 Add COPY (...) TO ... (FORMAT BLOB) by @@Maxxen in https://github.com/duckdb/duckdb/pull/18840 Update spatial+vss+sqlsmith in preparation for v1.4 by @@Maxxen in https://github.com/duckdb/duckdb/pull/18882 Avoid automatically checkpointing if the database instance has been invalidated by @@Mytherin in https://github.com/duckdb/duckdb/pull/18881 Add COPY (FORMAT BLOB) to Andium too :^) by @@Maxxen in https://github.com/duckdb/duckdb/pull/18884 [C API] Result schema of prepared statements by @@hrl20 in https://github.com/duckdb/duckdb/pull/18779 Json: no reinterpret by @@carlopi in https://github.com/duckdb/duckdb/pull/18886 [Dev] Fix footgun in string_t::SetSizeAndFinalize by @@Tishj in https://github.com/duckdb/duckdb/pull/18885 [chore] Bump config test/configs/compressed_in_memory.json to new format by @@carlopi in https://github.com/duckdb/duckdb/pull/18888 bump aws and iceberg by @@Tmonster in https://github.com/duckdb/duckdb/pull/18889 Add rowsort to upsert_default.test by @@jeewonhh in https://github.com/duckdb/duckdb/pull/18890 fixing auto-specifying ciphers and remove double storage by @@hannes in https://github.com/duckdb/duckdb/pull/18891 Expected errors 2053 by @@hmeriann in https://github.com/duckdb/duckdb/pull/18892 Keep base data scan state alive in ColumnData::Update call by @@Mytherin in https://github.com/duckdb/duckdb/pull/18893 Add callback for when an extension fails to load, and also log this by @@Mytherin in https://github.com/duckdb/duckdb/pull/18894 Encryption now encoded as a bit, centralizing in set/getter by @@carlopi in https://github.com/duckdb/duckdb/pull/18897 Bump httpfs to v1.4-andium branch by @@carlopi in https://github.com/duckdb/duckdb/pull/18898 fix: refine query ETA display and Kalman filter stability by @@rustyconover in https://github.com/duckdb/duckdb/pull/18880 Bump inet & aws by @@samansmink in https://github.com/duckdb/duckdb/pull/18899 [chore] Fix amalgamation build in progress_bar by @@carlopi in https://github.com/duckdb/duckdb/pull/18910 Cannot create table from variant yet by @@Mytherin in https://github.com/duckdb/duckdb/pull/18912 In VerifyZeroReaders, get the header size from the buffer we are replacing instead of from the block manager by @@Mytherin in https://github.com/duckdb/duckdb/pull/18909 Fix #18152: avoid auto-detecting hive partitioning with COPY .. FROM by @@Mytherin in https://github.com/duckdb/duckdb/pull/18911 CLI: Correctly move to start of line by @@Mytherin in https://github.com/duckdb/duckdb/pull/18920 Strip question mark parameters from default temporary directory by @@Mytherin in https://github.com/duckdb/duckdb/pull/18915 Move Hash Zero CI run to nightly by @@Mytherin in https://github.com/duckdb/duckdb/pull/18925 Bump Iceberg by @@Tmonster in https://github.com/duckdb/duckdb/pull/18917 Issue template: Add the Python repository by @@szarnyasg in https://github.com/duckdb/duckdb/pull/18928 fix extension size increase by @@samansmink in https://github.com/duckdb/duckdb/pull/18923 [Dev] Fix reference of uninitialized memory in Variant conversion first pass by @@Tishj in https://github.com/duckdb/duckdb/pull/18921 Bump DuckLake to Latest Main by @@pdet in https://github.com/duckdb/duckdb/pull/18926 Make row-group metadata re-use experimental for now by @@Mytherin in https://github.com/duckdb/duckdb/pull/18922 Fix exception propagation in C API by @@mlafeldt in https://github.com/duckdb/duckdb/pull/18924 Bump httpfs by @@carlopi in https://github.com/duckdb/duckdb/pull/18930 Bump ducklake and don't write empty bbox in geoparquet stats by @@Maxxen in https://github.com/duckdb/duckdb/pull/18936 [PROFILING] Fix EXPLAIN ANALYZE returning empty results when PRAGMA enabled_profiling = 'no_output' by @@maiadegraaf in https://github.com/duckdb/duckdb/pull/18935 Http_util can return success for all [200, 300) responses, as well as redirects by @@Tmonster in https://github.com/duckdb/duckdb/pull/18940 Fix TransformStringToLogicalType for enums arrays by @@tdoehmen in https://github.com/duckdb/duckdb/pull/18941 [unittester] Allow overriding data/ folder to custom location by @@carlopi in https://github.com/duckdb/duckdb/pull/18929 Unpin fixed-size sorting keys by @@lnkuiper in https://github.com/duckdb/duckdb/pull/18945 Add missing parameters to COPY ... (FORMAT JSON) by @@lnkuiper in https://github.com/duckdb/duckdb/pull/18946 Fixes for encrypted database, make cross-engine encryption work, and expand testing by @@hannes in https://github.com/duckdb/duckdb/pull/18951 fix windows linking issue ducklake by @@samansmink in https://github.com/duckdb/duckdb/pull/18953 bump iceberg by @@Tmonster in https://github.com/duckdb/duckdb/pull/18957 [SQLLogicTest] Detect errors thrown in LoadExtension of the require statement by @@Tishj in https://github.com/duckdb/duckdb/pull/18950 Don't use VectorOperations::Copy for string dictionary hashes by @@lnkuiper in https://github.com/duckdb/duckdb/pull/18949 Fix error reporting in SSLClient by @@staticlibs in https://github.com/duckdb/duckdb/pull/18958 bump spatial by @@Maxxen in https://github.com/duckdb/duckdb/pull/18961 Allow extensions to customize ATTACH OR REPLACE conflict behavior by @@ywelsch in https://github.com/duckdb/duckdb/pull/18962 Unify test runner keyword replacement, and don't run LOAD [ext] by default by @@Mytherin in https://github.com/duckdb/duckdb/pull/18963 [chore] Bump httpfs and remove patches by @@carlopi in https://github.com/duckdb/duckdb/pull/18965 Correctly update row group data pointers and root table pointer after checkpoint by @@Mytherin in https://github.com/duckdb/duckdb/pull/18966 Attach: Cleanup duplicate data path handling, and make IF NOT EXISTS no longer abort if we are adding a path with the same name by @@Mytherin in https://github.com/duckdb/duckdb/pull/18974 Bump DuckLake and HTTPFS by @@pdet in https://github.com/duckdb/duckdb/pull/18975 Issue #18971: Empty Unsorted Windows by @@hawkfish in https://github.com/duckdb/duckdb/pull/18976 Check context.interrupted flag in table scan by @@Mytherin in https://github.com/duckdb/duckdb/pull/18981 Only return cgroup memory limit if it's a sane value by @@szarnyasg in https://github.com/duckdb/duckdb/pull/18668 Macro fixes by @@lnkuiper in https://github.com/duckdb/duckdb/pull/18992 ATTACH IF NOT EXISTS - wait until database is fully attached before returning by @@Mytherin in https://github.com/duckdb/duckdb/pull/18993 WALReplay Fix: In UpdateColumn, no longer assume all updates are part of the same vector, but instead verify this and batch updates per vector by @@Mytherin in https://github.com/duckdb/duckdb/pull/18999 Bump iceberg by @@Tmonster in https://github.com/duckdb/duckdb/pull/19001 @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.4 2025/10/09 07:57:27 wiz Exp $ d3 1 a3 1 DISTNAME= duckdb-1.4.4 @ 1.4 log @*: remove reference to (removed) Python 3.9 @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.3 2025/07/03 19:18:03 wiz Exp $ d3 1 a3 1 .include "../../databases/duckdb/Makefile.common" d5 2 d13 2 d17 2 a18 1 TOOL_DEPENDS+= ${PYPKGPREFIX}-pybind11>=2.6.0:../../devel/py-pybind11 d20 1 a20 1 USE_LANGUAGES+= c++ d22 1 a22 2 BUILD_DIRS= tools/pythonpkg PYSETUPSUBDIR= ${BUILD_DIRS} d26 1 a26 2 # as of 1.3.0 # 95 skipped, 648 deselected, 65 errors d28 2 a29 3 post-install: ${RM} -rf ${DESTDIR}${PREFIX}/duckdb_build ${RM} -f ${DESTDIR}${PREFIX}/*.list d31 2 d35 2 a36 1 .include "../../lang/python/wheel.mk" @ 1.3 log @*: py-numpy needs Python >= 3.11 now @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.2 2025/06/18 08:14:36 wiz Exp $ d20 1 a20 1 PYTHON_VERSIONS_INCOMPATIBLE= 39 310 @ 1.2 log @py-duckdb: add missing dependencies, adapt PLIST, add test status @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.1 2025/06/15 13:31:39 ryoon Exp $ d20 2 @ 1.1 log @databases/py-duckdb: import py313-duckdb-1.3.0 DuckDB is a high-performance analytical database system. It is designed to be fast, reliable and easy to use. DuckDB provides a rich SQL dialect, with support far beyond basic SQL. DuckDB supports arbitrary and nested correlated subqueries, window functions, collations, complex types (arrays, structs), and more. This package provides Python module. @ text @d1 1 a1 1 # $NetBSD$ d11 4 d20 3 @