Releases
v0.208.0
MetricFlow 0.208.0 - September 11, 2025
Features
Support for custom offset windows. (#1584 )
Support for multiple time spines in one query. (#1644 )
Allow bypassing the group by when making queries without metrics. (#1720 )
Support aliases for dimensions and entities. (#1727 )
Support for order_by and limit on saved queries (#1759 )
Expose semantic_model(s) on Metrics and Dimensions in API (#1776 )
Support ordering dimensions by semantic model name" (#1778 )
Add new CLI command 'mf list saved-queries' to list all saved queries with their descriptions (#1787 )
Improve engine initialization speed via semantic graph (#1835 )
Fixes
Add config to get_measures_for_metrics response (#1606 )
Compatibility Issue with dbt-core 1.9.0 and dbt-metricflow 0.7.1. (#1589 )
dbt-core dependency issue with metricflow==0.207.0. (#1632 )
Remove semantic_manifest.json
from the tutorial project (#1704 )
Remove trailing comma when pretty-formatting list
(#1735 )
Fix error message with empty queries (#1740 )
Fix exception propagation in SQL generation (#1747 )
Fix ambiguity error for time dimensions in Dimension Jinja block (#1772 )
Ensure agg_time_dimension is lowercased (#1773 )
Fix error message in no_common_items.py
(#1795 )
Fix ambiguous-join-path detection for UNIQUE
entities (#1835 )
Under the Hood
Add properties to LazyFormat
for custom logging handlers (#1713 )
Synthetic manifests for performance tests (#1495 )
Add support for index object to improve MF engine initialization times. (#1715 )
Use option object for mf_pformat
(#1731 )
Provide context in MetricFlowPrettyFormattable.pretty_format()
(#1733 )
Use {}
for pretty-formatting Set
(#1734 )
Add include_underscore_prefix_fields
option to mf_pformat
(#1736 )
Add pretty_format_object_by_parts()
to pretty formatter (#1738 )
Add test to check the error message for empty queries (#1739 )
Update SequentialIdGenerator
to support async methods (#1741 )
Generate a SELECT
statement for sink nodes in a dataflow plan (#1743 )
Update SelectColumnSet
fields to tuples (#1744 )
Add MetricQuerySpec.spec_output_order
(#1745 )
Update engine interface to order output columns by query inputs (#1746 )
Use output
from the click
invocation to check test results (#1749 )
Handle order_output_columns_by_input_order
for filtered metrics (#1753 )
Rename mf_test_configuration
-> snapshot_configuration
(#1750 )
Consolidate dev dependencies of metricflow-semantics
and metricflow
(#1751 )
Add handling of Path
objects in mf_pformat()
(#1752 )
Implement Sized
for WhereFilterSpecSet
(#1756 )
Skip rendering of the table alias in SQL if not needed (#1757 )
Replace Singleton
with @singleton_dataclass()
(#1761 )
Assorted improvements to snapshot methods (#1762 )
Implement Mergeable
for PrettyFormatOption
(#1763 )
Add base classes to model a directed graph (#1764 )
Add formatter to display graphs in DOT notation. (#1766 )
Add formatter to display graphs in DOT notation (#1766 )
Assorted fixes for graph-related classes (#1782 )
Remove predicate pushdown optimizer for now (#1783 )
Update the snapshot format for LinkableElementSet
(#1784 )
Add interfaces for LinkableElementSet
/ LinkableSpecResolver
(#1785 )
Add fast lookup for semantic-manifest objects (#1789 )
Add a helper for writing timeit
-based performance tests (#1788 )
Cache predecessors / successors in graphs (#1790 )
Add semantic-graph node classes (#1791 )
Migrate back to Singleton
for simplicity / performance (#1793 )
Add semantic-graph edge classes (#1794 )
Add subgraph generator for measures (#1796 )
Add subgraph generator for modeling joins (#1798 )
Add subgraph generator for categorical dimensions (#1799 )
Add subgraph generator for configured-entity keys (#1800 )
Add subgraph generator for metrics (#1802 )
Add subgraph generator for time-related elements (#1801 )
Add graph path / pathfinder classes (#1803 )
Add path weight-function for the semantic graph (#1804 )
Add trie-like data structure for dunder names (#1805 )
Add semantic-graph-based resolver for simple group-by items (#1806 )
Add semantic-graph-based resolver for group-by metrics (#1807 )
Add an implementation of LinkableSpecResolver
using the semantic-graph (#1808 )
Add performance tests for the semantic-graph-based resolver (#1809 )
Add use_semantic_graph
flag to SemanticManifestLookup
(#1812 )
Add query-parser tester and additional cases for SCDs (#1814 )
Update error handling for simple_dimensions_for_metrics
(#1816 )
Minor fixes for semantic manifests in test cases (#1818 )
Add text-table formatter for SessionReport
(#1819 )
Assorted minor fixes / improvements (#1820 )
Switch back to using minimum time grain from models (#1822 )
Migrate correctness tests for the semantic-graph-based resolver (#1833 )
Migrate performance tests for the semantic-graph-based resolver (#1834 )
Dependencies
Remove version requirement for dbt adapters in dbt-metricflow
(#1837 )
Contributors
@DevonFulcher (#1606 )
@courtneyholcomb (#1584 , #1644 , #1720 , #1727 , #1759 , #1776 , #1778 , #1772 , #1773 )
@kiwamizamurai (#1787 )
@plypaul (#1835 , #1589 , #1632 , #1704 , #1735 , #1740 , #1747 , #1795 , #1835 , #1713 , #1495 , #1715 , #1731 , #1733 , #1734 , #1736 , #1738 , #1739 , #1741 , #1743 , #1744 , #1745 , #1746 , #1749 , #1753 , #1750 , #1751 , #1752 , #1756 , #1757 , #1761 , #1762 , #1763 , #1764 , #1766 , #1766 , #1782 , #1783 , #1784 , #1785 , #1789 , #1788 , #1790 , #1791 , #1793 , #1794 , #1796 , #1798 , #1799 , #1800 , #1802 , #1801 , #1803 , #1804 , #1805 , #1806 , #1807 , #1808 , #1809 , #1812 , #1814 , #1816 , #1818 , #1819 , #1820 , #1822 , #1833 , #1834 , #1837 )
You can’t perform that action at this time.