pypi duckdb 0.3.3
0.3.3 Preview Release "Sansaniensis"

latest releases: 1.1.1, 1.1.1.dev100, 1.1.1.dev64...
2 years ago

This preview release of DuckDB is named "Sansaniensis" after the (regrettably extinct) Chenoanas sansaniensis.

Binary builds are listed below. Feedback is very welcome.

Note: Again, this release introduces a backwards-incompatible change to the on-disk storage format. We suggest you use the EXPORT DATABASE command with the old version followed by IMPORT DATABASE with the new version to migrate your data. See the documentation for details.

Below a list of changes in this release

Major Changes & Features

  • #2926: DuckDB SQL backend for dbplyr
  • #2970: JSON extension
  • #2998: Support explicit aggregate state export, re-combination and finalisation
  • #3069: S3 writes and #3225: S3 file glob
  • #3092: Basic UDF support for Node API
  • #3109: Storage dictionary compression
  • #3111: Simple filtered aggregates
  • #3165: Add support for a DESCRIBE statement that gives a summary of all tables
  • #3178: 1-based indexing for lists and strings
  • #3195: Add support for FOREIGN KEY
  • #3253: Julia Client & C API Extensions
  • #3292: Support NaN and Infinity in floating point columns

Minor Changes & Bug Fixes

  • #2954: JDBC enable usage of LocalDateTime via get/setObject
  • #2985: Issue #2590: Add overwrite flag to CSV copy, overwrite only if query completes
  • #3006: JDBC BigDecimal support
  • #3007: Feature: Add support for Excel text format (Update #2996)
  • #3010: R: Arrow timestamps in seconds, milliseconds and nanoseconds
  • #3027: Allow literal option for regex
  • #3030: Macros for floored division and modulo
  • #3034: Substrait Installable Extension
  • #3038: Issue #3037: DATE + TIME
  • #3045: fix for STRING_AGG(...) failing (vector type mismatch) assertion when used with DISTINCT and ORDER BY inside STRING_AGG.
  • #3050: R-pkg: cpp11-ify
  • #3051: Enable printing of EXPLAIN query trees in the R client
  • #3060: Issue #3056: Null list scatter
  • #3065: Implementation of list_contains
  • #3066: Report dlopen/dlsym errors in extension load
  • #3067: ODBC: Many changes
  • #3071: c-api: support decimal and prevent invalid type throws
  • #3072: Add CMake setting to disable linking of extensions
  • #3077: Issue 2498: Consistent NULL hashing
  • #3084: Hmb1 select macro feature mr
  • #3085: First batch of aggregation functions for python rapi
  • #3087: Fix incorrect link for testing docs
  • #3088: Add LIST_EXTRACT support for several missing types (including booleans)
  • #3090: Fix for Arrow Timezone CI Fail
  • #3093: Test/add parser error on missing newline
  • #3097: Fix remaining winsock error
  • #3098: Round-trippable Expression ToString()
  • #3101: Issue #3100: MAKE_DATE struct variant
  • #3102: Add flatten function for nested list
  • #3107: Allow multiple statements in the R-client
  • #3112: Issue #1423: PiecewiseMergeJoin multiple predicates
  • #3115: ODBC: SQLGetDescRec and SQLSetDescRec
  • #3116: NodeJS Windows CI Fix Attempt
  • #3120: Fix #3119: correctly perform case insensitive comparisons in default function/view/schema creation
  • #3121: Fix #3108: support ILIKE ESCAPE
  • #3123: Issue #3020: Unify column names of DESCRIBE and SUMMARIZE
  • #3124: Add Alias to projected columns
  • #3125: Adds support for the REPLACE keyword in CREATE TABLE AS ... SELECT (CTAS) statements
  • #3126: BLOB support for aggregate state combine
  • #3139: More Python Relational API Functions
  • #3142: Fix type hints for query_df
  • #3147: Python: Relation dependency on Connection
  • #3148: Alter Type of column from varchar to enum
  • #3151: Support trailing commas in many lists in the parser
  • #3154: JDBC - Bugfix - Negative timestamp fix
  • #3156: JDBC - Add timestamp with timezone support
  • #3158: Enable DISABLE_VPTR_SANITIZER by default on M1
  • #3161: Implementation of unnest(null), list_position, rewrites
  • #3162: Add support for list parameters in the Python API
  • #3163: ODBC: Diagnostic Feature
  • #3166: Move test_group_by_parallel out of the coverage tests
  • #3171: Fix #3169: verify that WAL exists in PRAGMA database_size
  • #3173: Adding chunk size parameter to functions that return arrow objects.
  • #3174: Correctly zero-initialize pg_parser allocation heap to prevent potential corruption in clean up of parser state of SQL strings
  • #3179: Change pipe so it doesnt print on terminal
  • #3180: Fix for build error of R package on Windows
  • #3190: Fix Python clean.sh: avoid deleting all locally installed libraries and instead only remove installed DuckDB libraries
  • #3191: Returning feature for INSERT
  • #3192: Tear down connections
  • #3196: linking fixes for extensions
  • #3197: Fix convert uuid to arrow str error
  • #3199: Dbplyr-backend SQL translation of is.na() must use only IS NULL
  • #3201: Enable universal builds for OSX
  • #3208: numeric md5 functions
  • #3209: JDBC - Fix missing metadata
  • #3213: Making the deliminator more flexible and Q 02/17/20 of TPC-H for Substrait
  • #3214: Extension linking fix
  • #3218: Fixed empty list aggregates
  • #3219: Issue #1423: IEJoin Implementation
  • #3220: Fix for #3200
  • #3221: FIX for parquet reader on diff files
  • #3224: feat: expose from_substrait in python package
  • #3226: ODBC: Windows setup
  • #3230: Fix for #3215
  • #3231: CodeCov apparently does not like target anymore, + validate codecov configuration in CI
  • #3232: Fix #3223: Prune trees with LIMIT 0
  • #3233: Fix #3205: implement skip for struct and list column readers
  • #3234: Fix #3222: avoid int overflow in RleBpDecoder
  • #3235: Removing std::binary_function because its deprecated in cpp11
  • #3238: Parquet globbing: Better support for schema evolution
  • #3239: Properly send mapped function on RAPI
  • #3244: Returning feature for update and delete statements
  • #3245: test: prevent master ci from being canceled
  • #3251: Improving CI performance
  • #3255: Adding check_same_thread option to py connector
  • #3256: ci: restructure to run format/tidy/codecov for python
  • #3263: JDBC - Enable useage of ENUM type
  • #3264: Allow the use of native replacement scan of parquet/csv files with the dbplyr-backend
  • #3266: Fix #3260: if a schema name is provided, pass along the schema name and table name to the replacement scan
  • #3268: Add python module constants from PEP249
  • #3270: python extension loading tests
  • #3274: Implementation of the list aggregate function
  • #3276: Properly resizing DuckDB batches that reference arrow batches
  • #3281: ODBC: LibreOffice on Linux
  • #3287: Several Julia API enhancements
  • #3289: ODBC: windows installer has to copy and pass program parameters
  • #3293: Issue #3262: Nested comparison fixes
  • #3295: Allow strftime arguments to be specified in both orders
  • #3299: [Arrow] Read Record Batch Reader and Scanners
  • #3301: Use FieldWriter/FieldReader in Checkpoint Manager
  • #3303: Add benchmark_runner based regression test, and remove random engine from cycle counter
  • #3305: Fix #3304: correctly trigger old result-set materialization prior in duckdb_value_is_null
  • #3307: Fix #3271: correctly check for negative limit and offset
  • #3308: Cleanup some unused include
  • #3311: Fix #3272: avoid incorrectly moving LIMIT to before the ORDER clause in certain cases
  • #3312: Issue #3290: Histogram Temporal Bindings
  • #3313: Issue #3275: Global Operator State
  • #3314: Issue #3262: Dead Code Removal
  • #3318: R bug-fixes: Pipes in tests and silence R NOTE
  • #3323: Fix #3291: delete root entries after a catalog entry is deleted and no more transactions can reference it
  • #3328: Fix #3294: initialize validity mask to correct size in placeholder code
  • #3329: Fix use after free bug in local storage
  • #3331: Add automatic issue labeler
  • #3335: #3324 Throw error instead of crashing when misusing prepared statements
  • #3338: Issue #3298: Nested Unflat MinMax
  • #3339: Add a create_value for strings to the Julia API
  • #3342: Issue #1423: IEJoin Performance Improvements
  • #3343: Issue #3118: Non-string Formats
  • #3355: Fix #3349: correctly handle empty table case in grouping set
  • #3356: Fix #3350: correctly update statistics after a SINGLE join, since SINGLE joins may introduce NULL values
  • #3357: Fix #3351: avoid double-binding functions in subqueries after an initial binding error
  • #3358: Fix #3352: fix several bugs with index selection for verifying foreign key constraints
  • #3359: Fix #3353: check if any results are returned in sqlite api wrapper before looking at the chunk
  • #3360: Fix #3354: add missing recursive CTE node traversal in correlated subquery flattening
  • #3362: ODBC: unixodbc_setup.sh
  • #3363: Fix #3361: correctly handle overflows in sequences with cycles
  • #3369: Fix #3367: correctly detect overflow in statistics propagation for ORDER BY
  • #3370: Fix #3366: check for invalid double values in progress bar
  • #3372: Fix #3365: correctly handle overflows in left-shifts
  • #3376: Fix Python Windows CI
  • #3378: Correctly handle rowid scans in Julia DataFrame scan (for COUNT(*))
  • #3380: ArgMinMax: correctly manage memory of strings in both values and arguments
  • #3381: Python extension loading
  • #3383: ODBC: unixodbc_setup.sh usage message
  • #3399: removed -k param for gzip
  • #3406: Install AWS CLI in CentOS Extension

Don't miss a new duckdb release

NewReleases is sending notifications on new releases.