L'équipe DuckDB a annoncé le 21 octobre la sortie de DuckDB 2.0.0 LTS, nom de code « Cinnamon Teal » (Spatula cyanoptera). Selon le blog officiel, il s'agit de la plus grande version en termes de fonctionnalités à ce jour, construite à partir de près de 20 000 commits depuis DuckDB 1.5 — et elle arrive avec un support à long terme jusqu'en octobre 2027 au moins.
Contrairement à DuckDB 1.0, qui se concentrait sur la stabilité et la compatibilité ascendante, DuckDB 2.0 est avant tout une version fonctionnelle. Elle embarque un protocole Quack peaufiné, l'I/O asynchrone, un type Variant de premier ordre, le mode agent, les triggers, un parseur SQL extensible et plus encore. Certains clients, comme la CLI et Python, sont déjà disponibles ; d'autres (R, Rust et certaines extensions) peuvent prendre quelques jours en raison de cycles de révision supplémentaires.
Nouvelles fonctionnalités de DuckDB 2.0.0 LTS
La version introduit une version peaufinée du protocole Quack avec de meilleures performances et stabilité. Une nouvelle instruction CONNECT permet d'attacher et de basculer vers une base de données distante en une seule commande. Par défaut, le serveur Quack n'écoute que sur localhost ; pour accepter des connexions distantes, l'équipe recommande de le maintenir sur localhost derrière un proxy inverse terminant TLS. L'option allow_other_hostname est destinée uniquement aux tests.
L'I/O asynchrone couvre désormais Parquet, CSV et le format de stockage natif de DuckDB, permettant à la couche d'I/O de s'étendre indépendamment du traitement des requêtes — particulièrement utile pour les lectures distantes sur stockage objet comme s3://. DuckDB 1.5 avait déjà introduit Variant, mais 2.0 l'intègre pleinement : les données semi-structurées et sans schéma sont découpées pour bien se compresser et s'exécuter rapidement, avec un support de bout en bout pour Parquet et une famille de fonctions variant_*.
Le mode agent dans la CLI est également inclus, destiné aux agents de codage comme Claude Code. Les triggers, un parseur SQL extensible et d'autres améliorations complètent cette version. Les détails complets sont dans le blog officiel et les notes de version GitHub.



