0.26.0

Canner/WrenAI0.26.0Aug 1, 2025by github-actions[bot]

AI Summary

This release introduces DuckDB connector, BigQuery white function list updates, and various improvements to error handling, timeouts, and PyArrow support.

Key Highlights

  • Introduce DuckDB connector
  • Add statement timeout for Clickhouse and Trino
  • Handle pyarrow unsupported types (decimal and uuid)
  • Introduce bigquery white function list

New Features

  • DuckDB connector
  • BigQuery white function list
  • Statement timeout for connectors
  • PyArrow Decimal support

Full Release Notes

## Features
* feat(wren-ibis-server): Introduce bigquery white function list by @douenergy
* feat(wren-ibis-server): add statement_timeout for Clickhouse, trino by @goldmedal
* feat(wren-ibis-server): remove to_char from BigQuery white function list by @douenergy
* feat(wren-ibis-server): introduce DuckDB connector by @goldmedal
* feat(wren-engine): enhance the error message for CLAC failure by @goldmedal
* feat(wren-ibis-server): introduce database and statement timeout for connector by @goldmedal
* feat(wren-engine): apply default nulls last policy for ordering by @goldmedal
* feat(wren-engine): improve the scope analyzer for the used models by @goldmedal
* feat(wren-ibis-server): Add safe rounding for Decimal columns to support PyArrow Decimal128 limits by @douenergy

## Fixes and Chores
* fix(wren-ibis-server): handle pyarrow unsupported types (decimal and uuid) by @goldmedal
* fix(wren-engine): fix count statement for BigQuery by @goldmedal
* fix(wren-engine): avoid to generate duplicate models after extracting manifest by @goldmedal
* fix(wren-engine): fix RLAC for model with an alias by @goldmedal
* fix(wren-ibis-server): using DataFusion to format the query result by @goldmedal
* fix(wren-ibis-server): Correctly filter Oracle tables by connected user's schema by @loaferxuan
* chore(wren-ai-service): update backoff retry mechanism by @cyyeh in https://github.com/Canner/WrenAI/pull/1805
* chore(wren-ai-service): improve embedding performance and allow setting batch size for embedding by @cyyeh in https://github.com/Canner/WrenAI/pull/1814
* chore(wren-ai-service): improve intent classification by @cyyeh in https://github.com/Canner/WrenAI/pull/1816
* chore(wren-ai-service): fix configs (ai-env-changed) by @cyyeh in https://github.com/Canner/WrenAI/pull/1815
* chore(wren-ai-service): improve misleading pipeline prompt by @cyyeh in https://github.com/Canner/WrenAI/pull/1818
* chore(wren-ai-service): improve text2sql stability by @cyyeh in https://github.com/Canner/WrenAI/pull/1819, https://github.com/Canner/WrenAI/pull/1836, https://github.com/Canner/WrenAI/pull/1841, https://github.com/Canner/WrenAI/pull/1844, https://github.com/Canner/WrenAI/pull/1846, https://github.com/Canner/WrenAI/pull/1855
* chore(wren-ai-service): add vertex ai config by @cyyeh in https://github.com/Canner/WrenAI/pull/1833
* chore(wren-ai-service): make sure there is data in recommended questions by @cyyeh in https://github.com/Canner/WrenAI/pull/1826
* refactor(wren-ui): error handling on mutations, chart spec by @fredalai, @andreashimin  in https://github.com/Canner/WrenAI/pull/1837, https://github.com/Canner/WrenAI/pull/1840