Skip to content

What's New in Version 1.33.0

September 29, 20262:50 PM UTC

Version 1.33.0 of the relationalai Python package is now available!

To upgrade, activate your virtual environment and run the following command:

Terminal window
pip install --upgrade relationalai
  • You can now install the relationalai package on Python 3.14. It supports Python 3.10 through 3.14.

  • You can now apply your own Snowflake masking policies and projection policies to the columns of a model you deploy to Snowflake, in addition to the row access policies added in the previous release. A deployment now validates every configured policy up front and reports any that are missing or inaccessible. See Configure access policies for setup instructions.

    Here is an example configuration for applying masking and projection policies to a deployed output:

    deployment:
    outputs:
    overrides:
    - objects: [CUSTOMERS] # the deployed output to protect
    policies:
    masking_policies: # mask values for some roles
    - fqn: GOVERNANCE.POLICIES.PII_MASK
    columns: [EMAIL, PHONE]
    projection_policies: # hide a column from some roles
    - fqn: GOVERNANCE.POLICIES.HIDE_SSN
    columns: [SSN]
  • Installing relationalai no longer includes OpenTelemetry by default. If you already use its optional handler with the older v0 PyRel API to send traces for troubleshooting, run pip install 'relationalai[otel]' when you upgrade to keep tracing working. Otherwise, you don’t need the extra.

  • Running several queries on one model at the same time, such as calling to_df() from multiple threads, no longer fails with an “Unground Variable” error, returns empty results, or hangs. You still cannot change the model while these queries run, and running an export or an optimization solve at the same time is also unsupported.

  • If a concept inherits from more than one concept, or uses identify_by with more than one property, its queries and exports no longer put values in the wrong columns or return empty results. These problems only showed up for models deployed to Snowflake, which is a Public Preview feature.

  • Fixed a bug that caused local copies of a shared model to diverge from the original when collaborating with rai models pull and rai models merge. These commands are in Public Preview.

  • When your Snowflake connection does not specify a database, deployment now uses the database in a fully qualified deployment.schema instead of failing with Database '"default"' does not exist or not authorized. Set the option to <DATABASE>.<SCHEMA>; if neither the connection nor this setting specifies a database, deployment reports a clear configuration error.

  • You can now deploy a model into a Snowflake transient database or schema without an Unknown domain: TRANSIENT error. Set oplog.table_type: standard in your configuration first, because Snowflake cannot create the default Hybrid Tables in a transient location.

  • If the role set by the deployment.role configuration option cannot set Snowflake’s trace level, the deploy warning now tells you to grant MODIFY TRACE LEVEL.

  • The rai debugger no longer freezes or crashes on large traces or refresh logs. Big traces render as plain, scrollable text, the Refresh Log handles bigger dependency graphs and shows an error instead of going blank when one is too large, and it opens on the timeline view instead of the graph.