Profiles 0.8.x Changelog

Changelog for Profiles v0.8.x.

Version 0.8.0

25 August 2023

What’s New

  • Model Contracts - We have added support for model contracts and their validation. For every input or SQL model, there’s a new key contract: which contains the following keys: is_optional (boolean, to indicate if the model is optional), is_event_stream (boolean, in case the data is event stream and has timestamp), with_entity_ids (list of all entities model contains), with_columns (list of all column names model have). A contract can be passed along with the model path in this.DeRef. For more information, check out Model Contracts.
  • Inputs model - The keys occurred_at_col and ids are now a part of app_defaults, to reinforce that they can also be overridden.
  • Schema has been migrated from 40 -> 42 in the project file.


  • The command pb cleanup materials now removes tables generated by Python models also.
  • pb show user-lookup now includes user traits from Python models as well.
  • A few changes under the hood, for more efficient processing and execution.

Bug Fixes

  • Fixed issue in Python models where validity of the train file wasn’t working and it so was retraining the model(s) on every run.
  • Resolved the bug where wrong credentials in siteconfig file was not printing the exact error.
  • Queries for checking warehouse access (grant) were duplicated and therefore recursively checking grants on the same models again and again. This resulted in taking more time than what was required. It has now been fixed.
  • pb migrate auto - There was an issue in migration of multi-line strings of SQL models, that has now been resolved.

Questions? Contact us by email or on Slack