Skip to main content

Release Notes

Follow us on X to stay up-to-date with new releases!

๐Ÿ” Filter Widgets Directly From The Dashboard Interface

โœจ What's newโ€‹

Have you ever felt frustrated having to navigate through complex Explore modal just to make simple filter changes on your widget?

With this release, weโ€™re aiming to smooth that experience for you! ๐ŸŽ‰

Weโ€™re thrilled to share that in this release, you now can apply filters to any widget right from the dashboard interface.

๐ŸŽฏ Benefitsโ€‹

This is our first step toward bringing the explore experience into the dashboard.

  • It shortens the path to filtering and slicing your data.
  • It also lays the groundwork for future improvements to the exploration experience.

๐Ÿ“ Notesโ€‹

  • This feature is exclusive to Holistics 4.0

๐Ÿ“ค PDF Export to Slack

Share complete dashboards to Slack as a single PDF fileโ€”no more flooding channels with multiple images.

A dashboard being exported as a PDF to a Slack channel

The Problemโ€‹

Previously, we only supported PNG export to Slack. When sharing dashboards with multiple charts, each visualization had to be sent as a separate image. This often resulted in 5-10 individual files cluttering your Slack channels, making it hard to view reports as a cohesive whole.

The Solutionโ€‹

You can now choose PDF format when exporting dashboards to Slack. This automatically combines all selected visualizations into one professional document that's easy to share, review, and archive.

Documentationโ€‹

For more details on how it works, see: Export to Slack

๐Ÿงฎ [Beta - Updates] Calculation Builder: new claculations, more utilities

Building fields just got easier with new updates from Calculation Builder. Let's take a look!

New calculationsโ€‹

Concat, Date difference, Date add, Case when, and Rank โ€“ enabling you to work with text, dates, rankings, and classifications intuitively.

Calculation Builder - New calculations

Support for custom dimensionsโ€‹

Build custom dimensions with Calculation Builder using the new functions above.

Calculation Builder - Custom dimension

Calculation Builder anywhereโ€‹

Access Calculation Builder across your Reporting tab - in the dataset fields panel, visualization settings, and tables, to define logic where you work.

Calculation Builder - Anywhere in Reporting

Composable metric with flexible controlsโ€‹

  • Build new calculations based on existing ones.
  • Apply filters and customize grouping for advanced aggregations directly inside calculations.
Calculation Builder - Composable metric with flexible controls

See it in actionโ€‹

These updates help you create and refine calculations faster and more flexibly.

๐Ÿš€ Thereโ€™s even more coming up. ๐Ÿš€

๐Ÿ“ฆ Content Archiving

We're excited to launch Content Archiving, a powerful new feature that allows you to hide outdated analytics content, keeping your workspace clean while preserving full access to your historical data.

The Problemโ€‹

A growing analytics workspace often becomes cluttered with outdated reports and dashboards, making it difficult to find current, relevant information.

The Solutionโ€‹

Content Archiving provides a clear way to streamline your workspace and ensure data accuracy:

  • Organized workspace and fresh content: Hide outdated content from views, searches, and reports, ensuring a clean workspace and that users only see current, relevant data.
  • Preserve history: Maintain full access to all archived data for reference.

Documentationโ€‹

For details, visit our public documentation: Content Archiving

Timelineโ€‹

  • Released: Archive models, datasets, and dashboards
  • Released: Access all archived items via the Archive page or search
  • Upcoming: Get archive suggestions for inactive items (30/60/90 days)

๐Ÿ” Search Improvements

We're excited to announce our new Search Improvements For Tagged Objects, which allow you to use tags to find the exact item you need โ€” faster!

โœจKey Improvementsโ€‹

  • Prioritizing endorsed items: Endorsed dashboards and datasets are now featured at the top of your search results so that you can start your analysis with confidence. Learn how to mark an object as endorsed to help your team find reliable, high-quality content.
  • Searching by Tags:
    • Before: You have to search using keywords, then narrow down the results with the tag filter.
    • After: Skip the keywords! You can use the tag filter to get all objects associated with that tag. Learn how to organize your content with tags.

๐Ÿค– Auto-Generated Titles and Messages in Pull Request Workflow

Why this feature?โ€‹

Writing clear, descriptive PR titles and messages takes time and mental energy. Analysts often face writer's block when creating pull requests, leading to rushed or incomplete descriptions. This results in poorly documented changes that make code reviews harder.

How it worksโ€‹

  • Smart Generation: AI analyzes your code changes and automatically creates a clear title and detailed description
  • One-Click Usage: Accept the suggestions instantly or customize them to your needs
  • Context-Aware: Captures important details you might forget to mention

Before vs Afterโ€‹

Before (Manual Process)

  • Manually craft a descriptive title and message.
  • Spend time recalling and documenting all changes.
  • Risk inconsistent or incomplete descriptions.

After (AI-Powered)

  • AI instantly generates a clear title and detailed message.
  • One-click to accept the suggestions or customize them.
  • Ensure every PR has consistent, high-quality documentation.

Key Benefitsโ€‹

  • Faster PRs - No more writer's block when creating pull requests
  • Better Documentation - AI catches details you might forget to mention
  • Consistent Quality - Every PR gets a well-structured title and description
  • Time Savings - Spend less time on admin work, more time on analysis

Getting Startedโ€‹

To use this feature, you need to:

  1. Join the Alpha Program - Sign up for Holistics AI access
  2. Connect to GitHub - Integrate with your GitHub repository
  3. Enable PR Workflow - Activate the PR Workflow for your organization

Once enabled, the AI will automatically generate titles and descriptions for all new pull requests in your workflow.

๐ŸŽฏ Viz-aware AQL: Metrics that automatically adapt to your charts

๐Ÿ”ฅ Why this feature?โ€‹

Ever created the same metric 5 times just because users wanted to view data by month, quarter, AND year? Yeah, we fixed that.

๐Ÿ’ก How it worksโ€‹

  • Context-aware functions: New AQL functions that automatically adapt to visualization settings
  • Dynamic references: Use 'x_axis', 'rows', 'columns' instead of hardcoding dimensions
  • Automatic adaptation: Metrics recalculate correctly when users change chart configurations

Before vs Afterโ€‹

โŒ Before (Static AQL)

// Static period comparison - only works for monthly data
metric revenue_vs_prev_month {
definition: @aql
sum(orders.revenue) -
sum(orders.revenue) | relative_period(orders.created_at | month(), interval(-1))
;;
}

// Separate metric needed for yearly comparison
metric revenue_vs_prev_year {
definition: @aql
sum(orders.revenue) -
sum(orders.revenue) | relative_period(orders.created_at | year(), interval(-1 year))
;;
}

// Running total hardcoded to specific dimension
metric running_total_by_month {
definition: @aql
window_sum(sum(orders.revenue), order: orders.created_at | month())
;;
}

// Percent of total hardcoded to specific dimension
metric pct_of_product_total {
definition: @aql (sum(orders.revenue) | of_all(products.category)) / sum(orders.revenue) ;;
}

// ๐Ÿ˜ฐ Common issues:
// - Need duplicate metrics for each time grain
// - Calculations break when users change visualization settings
// - Running totals don't work when pivoting by different dimensions

โœ… After (Viz-aware AQL)

// One metric that adapts to any time grain
metric revenue_vs_previous_period {
definition: @aql
sum(orders.revenue) | relative_period(orders.created_at, -1)
;;
}

// Running total that follows visualization
metric revenue_running_total {
definition: @aql
window_sum(sum(orders.revenue), order: 'x_axis')
;;
}

// Percentage calculations that adapt to pivot structure
metric pct_of_row_total {
definition: @aql
percent_of_total(sum(orders.revenue), 'row_total')
;;
}

// ๐ŸŽ‰ Benefits:
// - Single metric works for monthly, quarterly, yearly views
// - Automatically adapts when users change chart settings
// - Drill-downs and pivots work seamlessly
Note

Your existing static AQL definitions continue to work as before - no breaking changes! If you want to make your metrics visualization-aware, you can modify them to use the new context-aware functions.

Functions that support viz-aware featuresโ€‹

Percentage Calculations

  • percent_of_total - Calculate percentages with 'row_total', 'column_total', or 'grand_total'

Time-based Functions

  • relative_period - Compare metrics across time periods that adapt to visualization granularity

Window Functions

๐Ÿš€ Better syntax validation for Canvas Dashboard

๐Ÿ”ฅ Why this feature?โ€‹

Some of our customers were struggling with cryptic field reference errors that only showed up when trying to publish dashboards. No clear error messages, no way to navigate to problems, and broken references went undetected when fields were renamed. This was creating a poor developer experience and blocking teams from scaling their analytics.

๐Ÿ’ก How it worksโ€‹

  • Real-time validation: Field reference errors now show up immediately with red underlines as you type
  • Click-to-navigate: Click on errors to jump directly to the problematic code
  • New r() syntax: Use r(users.id) instead of ref('users', 'id')

Before vs Afterโ€‹

โŒ Before (Old Syntax)

// Old syntax - prone to typos, no IDE support
VizBlock {
label: 'Revenue by Category'
viz: PieChart {
dataset: 'ecommerce'
legend: ref('products', 'category') // No validation
series {
field {
ref: ref('orders', 'revenue') // String-based, error-prone
aggregation: 'sum'
}
}
}
}

// ๐Ÿ˜ฐ Common issues:
// - Typo: ref('product', 'category') โ†’ No error until runtime
// - Renamed field: orders.revenue โ†’ orders.total_revenue โ†’ Broken reference
// - No autocomplete or navigation support

โœ… After (New Syntax)

// New syntax - validated, IDE-friendly
VizBlock {
label: 'Revenue by Category'
viz: PieChart {
dataset: 'ecommerce'
legend: r(products.category) // Real-time validation
series {
field {
ref: r(orders.revenue) // Click to navigate to definition
aggregation: 'sum'
}
}
}
}

// ๐ŸŽ‰ Benefits:
// - Typo: r(product.category) โ†’ Immediate red underline
// - Renamed field: Automatic detection of broken references
// - Full IDE support: autocomplete, go-to-definition, find usages
Note

This applies everywhere we use field references - not just dashboards but also Pre-aggregates.

๐Ÿ‘€ Migration to new syntaxโ€‹

We don't support mass conversion yet, but the transition is seamless:

  • New dashboards automatically use the new r(model_name.field_name) syntax
  • Existing dashboards convert to new syntax whenever you edit and save a widget
  • Old syntax still works - no breaking changes.

๐ŸŽจ Layout Assist in Canvas Dashboard

We're excited to announce Layout Assist, a new setting designed to make your dashboard editing experience easier and more intuitive.

Here's what's included:

  • Non-overlap mode can be set to the default. To switch to overlap mode, simply hold for 2 seconds.
  • Trim whitespace to remove extra space around your elements.
  • Shift multiple blocks at once for faster adjustments.
  • Auto-expand the canvas as you add new blocks.

Documentationโ€‹

To be updated.

Timelineโ€‹

This feature is planned for release by the end of August.

โœจ Holistics AI: Deprecate Explore data (basic), more unified experience

Weโ€™ve deprecated Explore Data (basic mode) to unify the experience - now in just a single Explore Data interface.

Alongside this, Explore Data now can Explain Chart - a new capability that helps you easily understand visualizations with clear, concise explanations of trends and patterns. It makes charts easier to interpret, so users can act on insights with more confidence.

๐ŸŒŸ More powerful, easier to use - now all in one place.


๐Ÿ“ฅ Interested in Holistics AI? Join the waitlist and start exploring a new way to work with data.