Skip to content

What's New in Version 1.0.3

March 11, 2026 3:52 PM UTC

Version 1.0.3 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
  • Added a new reasoner library for prescriptive reasoning. See the prescriptive reasoning guides. For API reference docs, see std.reasoners.prescriptive.

  • Improved typing support for Graph. Graph.__init__() now has overloads so IDEs and static type checkers can catch incorrect combinations of graph constructor parameters.

  • Made Graph attributes directed and weighted read-only. Mutations to these attributes had no effect on graph behavior. They are now immutable to avoid confusion.

  • Improved configuration and authentication diagnostics. create_config() now includes the active profile name in YAML validation errors when available.

  • Improved CLI diagnostics for Snowflake authentication failures. The CLI now surfaces clearer guidance for login and SSO failures.

  • Added await_storage_vacuum support for reasoner configuration. You can now set this in raiconfig.yaml under reasoners.*. Use it when you want a reasoner to wait for storage vacuum work to finish before suspending.

  • Made field access by name in relationships case-insensitive. For example, Thermometer.readings["time"] and Thermometer.readings["Time"] now refer to the same field.

  • rai init --migrate now produces cleaner raiconfig.yaml output when migrating from raiconfig.toml. Generated YAML no longer includes spurious default fields, places reuse_model under model, and formats profiles and connections more readably.

  • Fixed ProgrammaticAccessTokenAuth so token_file_path works correctly in v1 configuration. You can now provide either a literal token string or a file path to a Programmatic Access Token in raiconfig.yaml.

  • Improved type checking for relationships and properties. If a field’s target type can’t be inferred, PyRel now raises a type mismatch error.

  • DataConfig.data_freshness_mins is now capped at 30240 minutes (3 weeks). If you set a larger value, PyRel clamps it to 3 weeks and emits a warning during config creation.