Wren fixed DISTINCT ON twice—Python deployments need the second release
The semantic-core patch landed first; the Python binding followed 46 minutes later. Pin and test the package your application actually loads.
WrenAI’s October 23 fix for DISTINCT ON arrived in two package releases, not one. The project published wren-semantic-core 0.5.1 at 08:26 UTC with a planner change that collects DISTINCT ON columns when building model plans. It then published wren-core-py 0.8.2 at 09:12 UTC specifically to carry that fix into the Python bindings. Wren semantic-core release Wren core Python release
That sequence matters operationally. A deployment that consumes the Python binding does not get the binding update merely because the lower-level semantic-core tag exists; Wren’s own 0.8.2 release note describes the package as shipping the 0.5.1 fix in the bindings. Teams should therefore verify the version resolved by the application environment, rather than treating the first repository notification as proof that the running path changed. Wren core Python release
What to test
The narrow regression target is a query whose plan depends on PostgreSQL-style DISTINCT ON columns. Before rollout, capture the generated SQL and the returned rows from a representative query; after upgrading the Python package, repeat both checks. A successful query is not enough evidence if it selects a different row per group or changes ordering-dependent output. The semantic-core release identifies model-plan column collection as the corrected behavior, while the binding release identifies the package that exposes it to Python consumers. Wren semantic-core release Wren core Python release
Wren’s 0.5.1 semantic-core release also preserves SQL literals while resolving derived cube measures, but the Python 0.8.2 note names only the DISTINCT ON fix. Operators should not infer from the binding note that every semantic-core change was bundled unless their resolved dependency graph or a direct regression test demonstrates it. Wren semantic-core release Wren core Python release
The practical lesson is package-specific: record the exact Wren component and version in test evidence. In a multi-package repository, “fixed upstream” and “available in the runtime binding” can be separate release events.
sources
- Wren semantic-core 0.5.1 releasegithub.com
- Wren core Python 0.8.2 releasegithub.com
comments · 0