Releases: DataRecce/recce
v1.51.0
What's new in Recce v1.51.0
We're excited to announce the latest version of our software, bringing you enhanced features and improvements.
Here's what's new:
📋 Copy values from SQL query results
Pull numbers straight out of a query result — no more Share → Copy as TXT → paste-into-editor detour. Highlight the text in any cell and Cmd/Ctrl+C, or tick the new row checkboxes on the query grids and use Share → Copy Selected Rows to grab a whole selection as spreadsheet-ready text.
🐛 Bug Fixes
- Lineage minimap impact coloring — In the new CLL experience, impacted-but-unchanged models now show their amber impact color in the minimap instead of neutral grey.
All changes
What's Changed
- feat: DuckDB-only paired-histogram backend (DRC-3390 Stage B) by @danyelf in #1399
- refactor(telemetry): drop _cli suffix on OSS PostHog event names by @even-wei in #1415
- feat(query): allow copying values from SQL query results by @gcko in #1416
Full Changelog: v1.50.1...v1.51.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:
- Join our Discord community: https://discord.com/invite/VpwXRC34jz
- Email us: product@datarecce.io
- Found a bug or missing functionality? Please open a GitHub Issue
v1.50.1
What's Changed
- chore(husky): add pre-commit guard for pinned @biomejs/biome version by @gcko in #1404
- docs(agents): add tooling/git/PR-review sections and split frontend guidance by @gcko in #1406
- feat(ui): export StalenessBanner from @datarecce/ui (DRC-3508) by @even-wei in #1405
- feat: paired histogram cells in Storybook (DRC-3390 Stage A) by @danyelf in #1398
- chore(ui): delete orphaned LineageDiffView (DRC-3596) by @even-wei in #1409
- fix(lineage): show impact coloring in the minimap (DRC-3250) by @danyelf in #1407
- feat(telemetry): dual-write OSS CLI + frontend events to PostHog (dual-run) by @even-wei in #1412
Full Changelog: v1.50.0...v1.50.1
What's Changed
- chore(husky): add pre-commit guard for pinned @biomejs/biome version by @gcko in #1404
- docs(agents): add tooling/git/PR-review sections and split frontend guidance by @gcko in #1406
- feat(ui): export StalenessBanner from @datarecce/ui (DRC-3508) by @even-wei in #1405
- feat: paired histogram cells in Storybook (DRC-3390 Stage A) by @danyelf in #1398
- chore(ui): delete orphaned LineageDiffView (DRC-3596) by @even-wei in #1409
- fix(lineage): show impact coloring in the minimap (DRC-3250) by @danyelf in #1407
- feat(telemetry): dual-write OSS CLI + frontend events to PostHog (dual-run) by @even-wei in #1412
Full Changelog: v1.50.0...v1.50.1
v1.50.0
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:
- Join our Discord community: https://discord.com/invite/VpwXRC34jz
- Email us: product@datarecce.io
- Found a bug or missing functionality? Please open a GitHub Issue
v1.49.0
What's Changed
- feat(storybook): improve NodeView stories with real SchemaView by @danyelf in #1385
- feat(lineage): make Columns the default tab in NodeView by @wcchang1115 in #1382
- docs(cli): add cloud-mode examples to recce mcp-server --help by @wcchang1115 in #1387
Full Changelog: v1.48.0...v1.49.0
v1.48.0
What's Changed
- feat(cli): recce check-base + MCP startup freshness warning (M2) by @even-wei in #1353
- chore(claude): add recce-pr-verifier subagent by @even-wei in #1364
- refactor(ui): unify DOM-to-image capture on snapdom (DRC-2685) by @gcko in #1370
- chore: remove locally-defined skills (consolidated into recce-dev plugin) by @gcko in #1371
- feat(ui): staleness banner and refresh-base action by @even-wei in #1366
- chore(deps): consolidate dependabot updates by @gcko in #1373
- chore(pnpm): migrate recce to pnpm v11 + Node ≥24 (DRC-3439) by @gcko in #1374
Full Changelog: v1.47.1...v1.48.0
v1.47.1
What's Changed
- fix(mcp): accept session_id env var for cloud MCP validation by @even-wei in #1358
- fix(mcp): restore cloud-snapshot mode for Recce Summary agent (DRC-3384) by @kentwelcome in #1359
Full Changelog: v1.47.0...v1.47.1
v1.47.0
What's Changed
- refactor(lineage): remove Value Diff warning modal (DRC-2611) by @gcko in #1357
- feat(lineage): show impact badges on direct upstream/downstream in Lineage tab by @wcchang1115 in #1352
Full Changelog: v1.46.3...v1.47.0
v1.46.3
What's Changed
- feat(mcp): cloud-mode support for recce mcp-server (DRC-3345) by @kentwelcome in #1349
- fix(cll): handle compiled SQL referencing unresolved parents (#1354) by @gcko in #1355
Full Changelog: v1.46.2...v1.46.3