NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #1521 most downloaded on PyPI
Translates a simple metric definition into reusable SQL and executes it against the SQL engine of your choice.
Last release 24 days ago
10 Sep 2026
Release timing varies
gaps range from 9 days to 6 months
Most releases are documented
notes for 31 of 45 stable releases
Nothing withdrawn
no release was ever pulled
5 years old
96 releases · first in 2022
One column per quarter.
MetricFlow 0.213.0 - September 10, 2026
datatype field to Dimension and Metric in metricflow-semantic-interfaces, enabling downstream consumers (e.g. the Ossie converter) to preserve specific data types instead of the coarse DimensionType bucket (#2121)datatype field on Field/Metric, preserving Ossie's specific data type through an Ossie -> MetricFlow -> Ossie round trip instead of collapsing it into the coarse DimensionType bucket (#2122)where_sql_template) to close a Server-Side Template Injection vector that allowed arbitrary code execution (#2134)MetricFlow 0.212.0 - August 11, 2026
dbt-metricflow dependency changes in release flow (#2055)ExecutionTimer (#2084)ort instead of fossa (#2102)>= 1.5 (#2051)dbt-core to >=1.11, <1.13 (#2105)dbt-metricflow (#2108)MetricFlow 0.211.0 - May 11, 2026
--where arguments in the CLI (#2050)dbt-metricflow in a separate environment (#2039)dbt-metricflow package CI tests (#1933)dbt-metricflow package tests to check log file (#1934)test_format_report_to_text_table (#2047)graphviz dependency from dbt-metricflow (#2038)>= 1.5 (#2051)Remove deprecated measure-related classes
MetricFlowEngine.get_measures_for_metrics (#1881)WHERE filter (#1941)MetricFlowEngine (#1949)resolve_available_items to prevent repeated expensive DAG traversals during query resolution with invalid group-by items (#1964)fill_nulls_with set (#1963)ComputeMetricsBranchCombiner (#1986)mf query options (#1815)AnnotatedSpecLinkableElementSet (#1864)LegacyLinkableSpecResolver (#1865)GroupByItemSetResolver (#1871)LinkableElementSet (#1866)MeasureLookup (#1868)MetricLookup (#1872)GroupByItemSetFilter (#1873)SemanticGraphNodeTypedCollection (#1880)metricflow_semantics to migrate measures -> simple metrics (#1882)metricflow to migrate measures -> simple metrics (#1889)MetricLookup. get_aggregation_time_dimension_specs() (#1890)measures -> simple metrics migration (#1891)MetricLookup (#1892)test_dataflow_to_sql_plan.py as DuckDB-Only (#1896)SimpleMetricInputSpec.non_additive_dimension_spec (#1897)measures -> simple metrics migration - Part 1 (#1898)measures -> simple metrics migration - Part 2 (#1902)measures -> simple metrics migration - Part 3 (#1903)Metricflow* -> MetricFlow* (#1904)toolkit module (#1909)experimental (#1921)ComputeMetricsNode (#1936)AggregateSimpleMetricInputsNode.alias_mapping (#1937)make test-include-slow to execute CLI tests locally, and will need to run hatch -v run dev-env:pre-commit clean to pick up the relevant config changes for linting. (#1948)metric_time__alien_day (#1954)fill_nulls_with set (#1962)ComputeMetricsNode to allow passthrough (#1972)FilterElementsNode to SelectorNode (#1973)DataflowPlanBuilder (#1976)WhereFilterSpecSet (#1977)PydanticMetricTimeWindow fields with immutable equivalent (#1978)WhereConstraintNode to WhereFilterNode for consistency (#1979)WHERE filters (#1980)LinklessEntitySpec (#1981).create() initializer to spec / request classes (#1983)DataflowPlanBuilder to use DFS metric evaluation plan (#1989)DataflowPlanOptionSet to group build options (#1995)PASSTHROUGH_METRIC_EVALUATION as an optimizer option (#1994)dataflow_plan_builder.py (#2003)toolkit module (#2006)metricflow dependencies (#2015)ruff.toml and AGENTS.md for Python 3.10 (#2022)DataflowPlanBuilder (#2023)more-itertools to include newest version (#1879)dbt-semantic-interfaces==0.9.4.dev0 (#1889)>=3.10, <3.14 (#2020)Remove deprecated measure-related classes by @plypaul in https://github.com/dbt-labs/metricflow/pull/1893
Releases MetricFlow with an Apache 2.0 license.
Note that dbt-semantic-interfaces is currently pinned to a development version, which may cause issues for some installers. This will be resolved soon.
AnnotatedSpecLinkableElementSet by @plypaul in https://github.com/dbt-labs/metricflow/pull/1864LegacyLinkableSpecResolver by @plypaul in https://github.com/dbt-labs/metricflow/pull/1865LinkableElementSet by @plypaul in https://github.com/dbt-labs/metricflow/pull/1866MeasureLookup by @plypaul in https://github.com/dbt-labs/metricflow/pull/1868node_relation to render time spine table SQL by @courtneyholcomb in https://github.com/dbt-labs/metricflow/pull/1875GroupByItemSetResolver by @plypaul in https://github.com/dbt-labs/metricflow/pull/1871MetricLookup by @plypaul in https://github.com/dbt-labs/metricflow/pull/1872GroupByItemSetFilter by @plypaul in https://github.com/dbt-labs/metricflow/pull/1873DimensionPattern without time dimensions by @courtneyholcomb in https://github.com/dbt-labs/metricflow/pull/1883SemanticGraphNodeTypedCollection by @plypaul in https://github.com/dbt-labs/metricflow/pull/1880MetricFlowEngine.get_measures_for_metrics by @plypaul in https://github.com/dbt-labs/metricflow/pull/1881metricflow_semantics to migrate measures -> simple metrics by @plypaul in https://github.com/dbt-labs/metricflow/pull/1882metricflow to migrate measures -> simple metrics by @plypaul in https://github.com/dbt-labs/metricflow/pull/1889MetricLookup. get_aggregation_time_dimension_specs() by @plypaul in https://github.com/dbt-labs/metricflow/pull/1890measures -> simple metrics migration by @plypaul in https://github.com/dbt-labs/metricflow/pull/1891MetricLookup by @plypaul in https://github.com/dbt-labs/metricflow/pull/1892more-itertools to include newest version by @MatthijsKok in https://github.com/dbt-labs/metricflow/pull/1879test_dataflow_to_sql_plan.py as DuckDB-Only by @plypaul in https://github.com/dbt-labs/metricflow/pull/1896SimpleMetricInputSpec.non_additive_dimension_spec by @plypaul in https://github.com/dbt-labs/metricflow/pull/1897measures -> simple metrics migration - Part 1 by @plypaul in https://github.com/dbt-labs/metricflow/pull/1898measures -> simple metrics migration - Part 2 by @plypaul in https://github.com/dbt-labs/metricflow/pull/1902measures -> simple metrics migration - Part 3 by @plypaul in https://github.com/dbt-labs/metricflow/pull/1903Metricflow* -> MetricFlow* by @plypaul in https://github.com/dbt-labs/metricflow/pull/1904Full Changelog: https://github.com/dbt-labs/metricflow/compare/v0.208.1...v0.209.0
Releases MetricFlow with an Apache 2.0 license.
Note that dbt-semantic-interfaces is currently pinned to a development version, which may cause issues for some installers. This will be resolved soon.
AnnotatedSpecLinkableElementSet by @plypaul in #1864LegacyLinkableSpecResolver by @plypaul in #1865LinkableElementSet by @plypaul in #1866MeasureLookup by @plypaul in #1868node_relation to render time spine table SQL by @courtneyholcomb in #1875GroupByItemSetResolver by @plypaul in #1871MetricLookup by @plypaul in #1872GroupByItemSetFilter by @plypaul in #1873DimensionPattern without time dimensions by @courtneyholcomb in #1883SemanticGraphNodeTypedCollection by @plypaul in #1880MetricFlowEngine.get_measures_for_metrics by @plypaul in #1881metricflow_semantics to migrate measures -> simple metrics by @plypaul in #1882metricflow to migrate measures -> simple metrics by @plypaul in #1889MetricLookup. get_aggregation_time_dimension_specs() by @plypaul in #1890measures -> simple metrics migration by @plypaul in #1891MetricLookup by @plypaul in #1892more-itertools to include newest version by @MatthijsKok in #1879test_dataflow_to_sql_plan.py as DuckDB-Only by @plypaul in #1896SimpleMetricInputSpec.non_additive_dimension_spec by @plypaul in #1897measures -> simple metrics migration - Part 1 by @plypaul in #1898measures -> simple metrics migration - Part 2 by @plypaul in #1902measures -> simple metrics migration - Part 3 by @plypaul in #1903Metricflow* -> MetricFlow* by @plypaul in #1904Full Changelog: v0.208.1...v0.209.0
Update metricflow to 0.208.1.dev0 by @plypaul in https://github.com/dbt-labs/metricflow/pull/1844
metricflow to 0.208.1.dev0 by @plypaul in https://github.com/dbt-labs/metricflow/pull/1844dbt-metricflow==0.10.0 by @plypaul in https://github.com/dbt-labs/metricflow/pull/1845dbt-metricflow to 0.10.1.dev0 by @plypaul in https://github.com/dbt-labs/metricflow/pull/1846Full Changelog: https://github.com/dbt-labs/metricflow/compare/v0.208.0...v0.208.1
Support for custom offset windows.
semantic_manifest.json from the tutorial project (#1704)list (#1735)no_common_items.py (#1795)UNIQUE entities (#1835)LazyFormat for custom logging handlers (#1713)mf_pformat (#1731)MetricFlowPrettyFormattable.pretty_format() (#1733){} for pretty-formatting Set (#1734)include_underscore_prefix_fields option to mf_pformat (#1736)pretty_format_object_by_parts() to pretty formatter (#1738)SequentialIdGenerator to support async methods (#1741)SELECT statement for sink nodes in a dataflow plan (#1743)SelectColumnSet fields to tuples (#1744)MetricQuerySpec.spec_output_order (#1745)output from the click invocation to check test results (#1749)order_output_columns_by_input_order for filtered metrics (#1753)mf_test_configuration -> snapshot_configuration (#1750)metricflow-semantics and metricflow (#1751)Path objects in mf_pformat() (#1752)Sized for WhereFilterSpecSet (#1756)Singleton with @singleton_dataclass() (#1761)Mergeable for PrettyFormatOption (#1763)LinkableElementSet (#1784)LinkableElementSet / LinkableSpecResolver (#1785)timeit-based performance tests (#1788)Singleton for simplicity / performance (#1793)LinkableSpecResolver using the semantic-graph (#1808)use_semantic_graph flag to SemanticManifestLookup (#1812)simple_dimensions_for_metrics (#1816)SessionReport (#1819)dbt-metricflow (#1837)Allow querying SCDs without metric_time.
--quiet option to the query CLI command. (#1554)DBT_PROFILES_DIR / DBT_PROJECT_DIR in the CLI (#1702)ref() (#1691)None in the output of mf query (#1700)mf query (#1701)pytest to skip scanning snapshots directory (#1710)CliConfiguration to be loaded from specified paths (#1693)dbt project metadata dependency in tutorial project generation (#1694)CLIConfiguration (#1697)This release includes a number of a number of assorted fixes and updates that were backported from main. It includes some updates to enable CTEs by de
Changes from 0.207.2:
This release includes a number of a number of assorted fixes and updates that were backported from main. It includes some updates to enable CTEs by default.
Note: this release is compatible with / requires dbt-core >= 1.9.0, < 1.10.0 and is cut from 5bb13511d36c6122527a1bd12de9d6e0707a9ddc. The prior versi
Changes from 0.206.0:
Note: this release is compatible with / requires dbt-core >= 1.9.0, < 1.10.0 and is cut from 5bb13511d36c6122527a1bd12de9d6e0707a9ddc. The prior version 0.207.0 on Pypi depended on a version of dbt-semantic-interfaces that was later than the versions supported in the latest official release of dbt-core (1.9.1 as of this note).
>=3.9 (#1470)dbt-core >= 1.9.0, < 1.10.0 (#1615 )metric_time required in this case. (#1451)mf tutorial experience. (#1631)Changes MetricFlowQueryRequest.where_constraint to where_constraints and now accepts a list
>=3.9 (#1470)metric_time required in this case. (#1451)Nothing published for this version
Nothing published for this version
This release requires dbt-core version 1.8. The most important breaking change here will affect installation of the MetricFlow CLI - any MetricFlow CL…
This release requires dbt-core version 1.8. The most important breaking change here will affect installation of the MetricFlow CLI - any MetricFlow CLI users should install dbt-metricflow to pick up the latest CLI updates. This was a necessary step in the process of decoupling the main MetricFlow library from dbt-core's minor version release cycle. Cloud CLI users are not affected.
Notable improvements include the ability to use metric values as filter expressions and some fixes for strange filter behaviors on time spine joins.
dbt-metricflow dependencies to use dbt* 1.8 packages (#1243)metricflow-semantics package. (#1150)Nothing published for this version
Nothing published for this version
Nothing published for this version
Update Jinja2 past 3.1.3 to resolve CVE-2024-22195
This release is an intermediate update to MetricFlow and can be used with existing dbt-core 1.7 installations. The breaking changes listed here will only affect users relying on any sql-comment tagging the MetricFlow CLI had been doing previously (e.g., the mf_rid_* comments).
Notable improvements include increased flexibility in querying the metric_time dimension and increased consistency in how we manage metrics requesting joins against a time spine for filling in missing values on a time axis.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
To take full advantage of this release, please upgrade to dbt-core 1.7.4 or later. Earlier versions of dbt-core 1.7.x will continue to work with any c
To take full advantage of this release, please upgrade to dbt-core 1.7.4 or later. Earlier versions of dbt-core 1.7.x will continue to work with any config that does not include Conversion Metrics.
Notable improvements include:
Unable To Satisfy Query Error with Cumulative Metrics in Saved Queries (#917)Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Fix error in cumulative metric output when start-time and end-time are specified
Complete changelog follows. Please take note of the breaking changes.
This release requires an upgrade to dbt core 1.7 , which is now the minimum requirement for future minor version updates to MetricFlow.
Notable improvements include:
Complete changelog follows. Please take note of the breaking changes.
dbt-semantic-interfaces~=0.4.0 (#846)TypeErrors that arise from create_from_where_filter into InvalidQueryException (#None)Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
This release adds support for granularity adjustments in window offsets and fixes an issue with BigQuery granularity adjustments for YEAR level granul
This release adds support for granularity adjustments in window offsets and fixes an issue with BigQuery granularity adjustments for YEAR level granularities.
BigQuery users take note - YEAR granularity now truncates to calendar year start (1st January), which was the original intention, rather than ISO year start, which is something like the Monday of the week containing the first Thursday of the year. This is now consistent with other engines.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
This release adds duckdb support and provides a partial fix for user-reported issues with partition pruning in BigQuery.
This release adds duckdb support and provides a partial fix for user-reported issues with partition pruning in BigQuery.
Deprecate and refactor CLI commands
This release represents a complete overhaul of MetricFlow targeted at a first class integration with dbt! Complete changelog below:
explain_get_dimension_values & get_dimension_values take a list of metrics parametersprimary_entity in Semantic Models (#694)mf tutorial to work alongside a dbt project.dbt-metricflow which bundles dbt-core and metricflow and dbt-adaptersmodel from the ModelValidator.validate return type. The model isn't altered, and thus doesn't need to be returned.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →