Profiles 0.9.x Changelog

Changelog for Profiles v0.9.x.

Version 0.9.4

8 November 2023

This release includes the following bug fixes and improvements:

  • pb run --grep_var_dependencies - we are now setting default values using the rule “if a project is migrated on load from a version older than 43, then grep_var_dependencies will default to true otherwise false”. Also, handled a null pointer case for non existent vars listed in dependencies.
  • pb migrate_on_load / migrate auto - we have made the message clearer on curly braches in dot syntax message.
  • pb migrate manual - we have removed compatibility-mode as it was no longer required.
  • A few internal refactorings.

Version 0.9.3

2 November 2023

This release addresses a few vulnerability fixes.

Version 0.9.2

26 October 2023

In case you are unable to install then we recommend having Python3 versions from 3.8 to 3.10.

This release includes a bug fix on self dependency of vars, in case column has same name as entity-var.

Version 0.9.1

19 October 2023

Our latest release contains some useful features and improvements, as asked by our users.

After the auto-migration to v44, you might be shown some warnings to do changes in the YAML. Please check the Tutorials section. Or, you may contact our team and we will assist you with the same.

What’s New

  • We have added support for Databricks (beta). Now Databricks users can seamlessly create ID stitcher and feature table models, without writing complex SQL queries! If you’re using Databricks and want to try out Profiles, kindly get in touch with our team.
  • Vars as models : Now, entity_vars and input_vars can be treated as independent models. Presently, they are tied to a feature table model. In SQL template text, for example in SQL model templates, please use {{entity-name.Var(var-name)}} going forward to refer to an entity-var or an input-var. For example, for entity_var user_lifespan in HelloPbProject, change select: last_seen - first_seen to select: '{{user.Var("last_seen")}} - {{user.Var("first_seen")}}'.
  • pb show dataflow and pb show dependencies commands - A new flag --include_disabled flag is added to let disabled models be part of the generated image. Also, we now show the relative path from local root, instead of the full path.
  • pb run command - Added flag --ignore-model-errors to let the project continue running in case of an erroneous model. So, the execution wouldn’t stop due to 1 bad model.
  • pb run - Added flag --grep_var_dependencies (default: true) which searches for vars dependencies by using grep over fields from vars definition.
  • pb show idstitcher-report - Added flag --seq_no, using which a specific run for an ID stitcher model can be specified.
  • Best schema version - For a library project, in the url key of packages, we have introduced the concept of “best version tag”. That is, instead of specifying the specific Git URL of the library project, we give a URL with GIT tag url:{{best_schema_version}}. Using this will make our tool use the best compatible version of the library project, in case of any schema updates.
  • Schema has been migrated from version 42 -> 44.


  • The command pb show user-lookup now includes more details including the count of rows created and total number of features.
  • Commenting out features will ensure that the corresponding entity-var and any related entity-var/input-var being used only for computation of this commented feature wont run
  • Several improvements done beneath the surface.

Bug Fixes

  • The flag -- force was having issues in dropping priorly created materialization models. This has now been resolved.
  • Fixed bug where project was unable to run due to giving a custom name to the ID stitcher.
  • Resolved an issue in the command pb show idstitcher-report, in the case if the hash of the ID Stitcher model has changed from that of the last run, rerunning the ID Stitcher model.
  • Removed flag -l from the command pb show idstitcher-report as it was redundant.

Known Issues

  • Redshift: If two different users create material objects on the same schema, then our tool will throw error when trying to drop views created by the other user, such as user_var_table.
  • Some commands such as insert do not work on Redshift and Databricks.
  • For a few clusters, cross DB references can fail on Redshift.

Questions? Contact us by email or on Slack