Transform

Latest version: v1.4.3

Safety actively analyzes 625726 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 2

0.130.1

Added
- Support for overriding dbt `profile` and `targets` attributes when querying dbt models (QMalcolm)
- Validation to block use of `DISTINCT` keyword in `COUNT` aggregation expressions, as this can lead to incorrect results if optimized queries relying on partial aggregation attempt to do something like `SUM(counts)` to retrieve a less granular total value. (tlento)

Updated
- Made minor improvements to safeguards for internal development (tlento)

0.130.0

Added
- [292](https://github.com/transform-data/metricflow/pull/292) This is the initial implementation of the MetricFlow dbt metrics integration. Allows MetricFlow to bootstrap itself natively from a dbt project that has metrics 🎉

Updated
- Refactored the semantic layer to use the MetricReference object as opposed to MetricSpec (WilliamDee)

0.120.0

Breaking Changes
- Minor API change on SqlClient protocol could break existing API users writing custom SqlClient classes. MyPy should detect this issue. See [the relevant PR](https://github.com/transform-data/metricflow/pull/282) for details.

Added
- Support for Databricks! Now you can use Metricflow with your Databricks-backed warehouse! (courtneyholcomb)
- The ability to define constraints on input measures for ratio and expr metric types. This is a temporary quality of life improvement until full-featured derived metrics (i.e., metrics based on other metrics) are available. (tlento)
- Support for different time granularities, improved group by expression handling, and corrected constraint handling on semi-additive measures (WilliamDee)
- Support for `count` as a measure aggregation type. Note this is implemented as an alias around `sum`, so use of the `DISTINCT` keyword in expressions is not supported, and will be blocked via validation in a separate update. Users wishing for a `COUNT(DISTINCT thing)` equivalent should continue to use the `count_distinct` aggregation type. (WilliamDee)

Fixed
- Resolved incorrect constraint handling with semi-additive measures (WilliamDee)
- Eliminated Dataclass deserialization errors on default parameters (tlento)

Updated
- Optimized multi-hop join candidate selection (plypaul)
- Improved error handling and error messages on config validation (QMalcolm, tlento)
- Streamlined our project README (nhandel)
- CLI now accepts metric-only queries in limited circumstances. See the assertion checks [in the PR](https://github.com/transform-data/metricflow/pull/256) for details. We will announce this as a new feature when it is complete, but for the time being users may try it out to see if it meets their needs in its current form. (WilliamDee)

0.111.1

Added
- A lightweight Visual Studio Code [extension for authoring configs](https://marketplace.visualstudio.com/items?itemName=Transform.metricflow) with simple support for inline schema validation and auto-completion! Local repo changes limited to JSON schema generation. (jack-transform)
- Metric model template for Shopify metrics - if you use Shopify, this template can get you up and running for tracking your Shopify metrics! (hesham-nawaz)

Fixed
- Fixed warehouse validation failures caused by interaction with measure-specific aggregation times (QMalcolm)
- Resolved intermittent semantic validation failures due to unpicklable pydantic objects (tlento)
- Fixed edge case with semi-additive measures failing on certain join dimension connections (WilliamDee)
- Restructured semantic container depedencies to eliminate certain classes of circular import errors (tlento)

Updated
- Replaced Pydantic objects with serializable Dataclasses to improve plan building speed. This can reduce time to generate dataflow plans by 10-20x for complex queries. (plypaul)
- Refactored validation logic to make it easier to reason about (QMalcolm)
- Modified inference detection rules to make it more likely to classify low cardinality string columns as categorical dimensions (tlento)

0.111.0

Added
- Early beta for data source inference - Snowflake users can now run a command to bootstrap data source definitions based on warehouse metadata for tables in a given schema. Check out `mf infer --help` for more details. Feedback welcome! (serramatutu)
- Support for semi-additive measures - semi-additive measures are measures which can be aggregated across some dimensions, but not others. The most common use case for this is an end-of-period measure, such as a statement balance or end of day inventory hold. As of this release we support semi-additive restrictions bound by any time dimension. See the description on [PR 183](https://github.com/transform-data/metricflow/pull/183) for more details on usage. (WilliamDee)
- Expanded data warehouse validations - data warehoue validation runs will now check to ensure all measures, identifiers, and dimensions defined in data sources are queryable. (QMalcolm)

Fixed
- Resolved serialization error on custom Pydantic objects in the model parser (tlento)
- Cleaned up error message handling and missing test depencies on model validation (tlento)
- Eliminated a class of circular import errors by forking reference classes from the specs module (WilliamDee)
- Fixed error state when specifying a where constraint with metric_time (plypaul)
- Removed unused jsonschema element (QMalcolm)

Updated
- Updated the tutorial to use metric_time instead of arbitrary time dimensions (plypaul)
- Increased strictness of typechecking enforcement (tlento)
- Removed unnecessary "all time" WHERE clause rendering for cases where time constraints were not provided (WilliamDee)
- Updated Click version from `^8.1.3` to `>=7.1.2` to temporarily resolve dependency issue for downstream Flask `1.1.4` usage (jack-transform)
- Updated Jinja2 version from `2.11.0` to `>=2.11.0` to allow downstream Flask `1.1.4` users to update to `2.x.x` (jpreillymb, tlento)

0.110.1

Fixed
- Cleaned up package metadata and broken links in external README viewers (tlento)
- Fixed cases where output columns were rendering in the wrong order (WilliamDee)

Updated
- Improved model config schema validation to return all jsonschema errors instead of one at a time (QMalcolm)
- Streamlined rendered SQL to use BETWEEN expressions for date range checks (WilliamDee)

Page 1 of 2

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.