Skip to content

v1.50.0

Choose a tag to compare

@wcchang1115 wcchang1115 released this 27 May 08:30
· 101 commits to main since this release

What's new in Recce v1.50.0

We're excited to announce the latest version of our software, bringing you enhanced features and improvements.
Here's what's new:

🔒 Security

This release includes a security fix based on a responsibly disclosed report. Thank you to Sitampan (@hxcbtc) for reporting the issue and helping improve Recce’s security.

🔎 See Downstream Impact of Whole-Model Changes (beta)

When a change touches every row of a model — a WHERE, GROUP BY, or JOIN change — Recce now marks it at the source and flags every impacted model downstream, with the sidebar naming the upstream model that caused it so you can trace the blast radius.

Opt in with --whole-model-impact (off by default).

🤖 Structural Model Analysis in the MCP Server

New analyze_model tool parses a model's compiled SQL to return its structure (refs, projections, filters, joins, aggregations) plus downstream column impact — single-environment, no base env or git history needed.

🎨 Clearer Lineage, Clearer Language

  • Cleaner nodes on hover — status icons stay visible; model actions move to a floating toolbar, and tooltips now show materialization/resource type.
  • Redesigned node sidebar — key metadata visible without scrolling, schema-diff actions in the Columns tab, deprecated Sandbox button removed.
  • Plain-language change labels — "Breaking" / "Partial Breaking" / "Non Breaking" become Model-Wide Change / Column Change / Additive Change.

🐛 Bug Fixes

  • Value Diff on Snowflake — normalize column case before quoting
  • Honest column-change status when CTE-internal changes can't be resolved
All changes

What's Changed

  • feat(lineage): float kebab on hover, keep status icons visible, enrich name tooltip by @danyelf in #1383
  • feat(lineage): redesign NodeView sidebar for clarity by @danyelf in #1386
  • feat(cll): surface downstream impact of whole-model changes (DRC-3341) by @danyelf in #1381
  • feat(mcp): add analyze_model tool for single-env structural analysis by @wcchang1115 in #1379
  • refactor(storybook): rationalize sidebar taxonomy and prune variants by @danyelf in #1395
  • refactor(ui): migrate CHANGE_CATEGORY_LABELS off legacy "Breaking" vocabulary by @danyelf in #1400
  • chore(deps): consolidate Dependabot updates + missed minor/patch bumps by @gcko in #1402
  • fix(smoke): align staging cloud smoke tests with current cloud behavior by @even-wei in #1393
  • fix: cancel button gives immediate UI feedback by @even-wei in #1376
  • test(smoke): cover auto-snapshot session lifecycle staleness + refresh by @even-wei in #1396
  • fix(breaking): surface unknown when CTE-internal change can't be resolved by @even-wei in #1375
  • fix(valuediff): normalise column case before adapter.quote() for Snowflake (DRC-3464) by @iamcxa in #1388
  • fix(adapter): match DuckDB 1.5.x external-access denial wording by @wcchang1115 in #1403

Full Changelog: v1.49.0...v1.50.0

💬 We Want Your Feedback!

We'll continue to optimize performance, fix bugs, and improve user experience in future updates.

Your input helps us make Recce better! Share your thoughts and connect with the community: