1.35.2
Earlier deployment checks and predictive date and time checks.
See changes to the relationalai Python package, including the rai CLI, and the RelationalAI Native App in one timeline.
Open a version to read its complete release note.
Subscribe to all updates via RSS
Earlier deployment checks and predictive date and time checks.
Corrected rule results, clearer shared-model source.
Fixes empty Snowflake table exports and makes predictive reasoner forecasts repeatable.
Deploy multiple PyRel models in one Snowflake schema with custom object names.
Standalone properties now deploy as their own Snowflake tables, plus model deployment reliability fixes.
Fixes a few bugs in incremental maintenance and predictive reasoners.
Python 3.14 support, Snowflake masking and projection policies, and various bug fixes.
Fixes a crash under heavy concurrent query load and prevents full recomputation when a model definition changes without source data changing under incremental maintenance (Public Preview).
If you use prescriptive reasoning (Public Preview, by request), review optimization problems after upgrading because some formerly accepted constraints and objectives now error or change meaning.
Clear, actionable errors for write-write conflicts, plus improved prescriptive problem validation.
Deploying a model to Snowflake now needs one less tag, plus a uniqueness-requirement deploy fix.
New variance and variance_samp aggregates measure how spread out your data is.
PyRel 1.30.4 fixes math.haversine() distances, so recompute prior results, and a select() containing only a function call on a literal can now return a null row instead of no rows.
Adds new Snowflake sign-in options, a floats module, and faster refresh, plus aggregate and deployment fixes.
Adds clearer error messages for Snowflake-managed Iceberg table exports and functional dependency violations.
Loads data faster and gives a clearer error when a solver parameter has the wrong type.
Model deployment now validates generated SQL by default and supports scheduled prescriptive solves in Snowflake for users of the by-request prescriptive reasoning Public Preview who configure a Snowflake identity.
Fixes grouped aggregates that collapsed to one row in a union, and a deploy blocked after Rel App activity.
Speeds up model deployment and fixes bugs.
Prescriptive reasoning users must stop passing part= or where= to Problem.display() and pass only one argument to all_different() after upgrading.
Fixes correctness issues when using Snowflake-managed Iceberg tables.
In the model deployment Public Preview, op log recording now turns on by default when you deploy, so rai models branch, pull, and merge work without extra setup.
Speeds up undirected-graph queries and deployments; now requires DuckDB 1.5.0 or newer.
Deployments now create SQL views for eligible direct sources, and common.hash() values have changed: check stored hashes before upgrading and plan to recompute those that must stay stable.
Creating a data stream on a Snowflake-managed Iceberg table now fails immediately because CDC streams cannot process those sources, so use a supported source instead.
Fixes an issue where expired OAuth tokens could cause reasoner operations to fail without retrying.
Adds account usage reports, faster model builds for deployment, and fixes several bugs.
Speeds deployed-model refreshes and fixes query errors when you enable incremental maintenance (Public Preview, off by default).
Improves rai models CLI commands and fixes several bugs.
PyRel 1.26.0 makes model.deploy() run a full, tracked deployment from Python and notebooks, plus many Snowflake deploy and query fixes.
Adds PAT authentication support for prescriptive reasoners and fixes several data stream issues.
Adds model.teardown() and fixes several bugs.
Fixes query export and data stream bugs.
PyRel 1.24.0 fixes several Snowflake deploy and query correctness bugs and warns about unrecognized raiconfig.yaml keys.
PyRel 1.23.1 adds a default refresh schedule to deployed models and fixes several bugs.
PyRel 1.23.0 corrects Snowflake deployments of models with entity identity keys, and adds an option to preserve column-name case.
Upgrading the Native App fixes a remote code execution vulnerability in predictive reasoners and restores a required query permission on older installations.
PyRel 1.22.0 adds a home-level ~/.rai/raiconfig.yaml file so you can share connections across projects, and improves deploy diagnostics and query performance.
PyRel 1.21.4 fixes duplicated rows in some deployed models and speeds up refreshes for models with declared primary keys.
PyRel 1.21.3 improves refresh performance for deployed models.
PyRel 1.21.2 improves error messages and fixes several bugs with model deployment.
In the model deployment Public Preview, manual mode (auto_deploy=False) starts queries faster but can return stale results, so use it only in development.
PyRel 1.21.0 introduces a new public preview feature called deploy mode that lets you deploy a PyRel model to a Snowflake schema as SQL tables and views.
Version 2026.7.13-470c23f improves write-conflict errors and engine startup timeout handling.
PyRel 1.20.1 makes deployed Cortex tools start returning results faster and fixes queries that returned NULL for Snowflake columns with mixed-case or special-character names.
Custom automation must stop calling the removed app.finalize_upgrade() procedure because upgrades finalize automatically, and app activation now checks for incompatible Snowflake account settings.
PyRel 1.20.0 adds a prefix field to DeploymentConfig so multiple Cortex agents can share one Snowflake schema, and improves the error message for unsupported operators in prescriptive problem expressions.
PyRel 1.19.4 makes predictive dataset diagrams easier to render and save and removes a dependency incompatible with Python 3.13.
PyRel 1.19.3 restores Snowflake table export via .into(Table(...)) and fixes an Unused variable declared error in expressions using the | operator.
Fixes data stream interruptions from transient CDC service suspensions and a jupyter-server XSS vulnerability in predictive reasoners' notebook server conversion handlers.
PyRel 1.19.2 improves reasoner name validation.
PyRel 1.19.1 fixes queries against quoted and case-sensitive Snowflake table names.
PyRel 1.19.0 fixes queries that read multiple fields from the same Property.
PyRel 1.18.0 adds diagnosis reports to the rai doctor CLI command and fixes several bugs.
PyRel 1.17.0 adds relationship keyword arguments, supports per(...).product(...), and fixes several bugs.
PyRel 1.16.0 adds OplogConfig so you can opt in to recording model oplogs during deploys.
PyRel 1.15.0 adds relationalai.semantics.alias() so you can give any value an output alias, including Python literals.
Version 2026.6.14-4f4ec3d of the RAI Native App adds a transaction_attributes column to api.transactions for filtering transactions by query attributes.
PyRel 1.14.0 sends background job guidance to stderr instead of stdout, keeping script output cleaner.
PyRel 1.13.0 adds SQL backend regex support, clearer rai doctor:report summaries, earlier Direct Access authenticator warnings, and correct DeploymentConfig.role handling.
PyRel 1.12.0 adds query support for aggregates.product() and expands diagnostics in rai doctor:report.
PyRel 1.11.0 now stops at the first model compilation error.
PyRel 1.10.0 adds support for stddev_samp() in queries, improves rai doctor:report diagnostics, and fixes query, import, and Snowflake deployment issues.
Adds experimental observability_preview metrics views for predictive and prescriptive reasoners.
Concept.filter_by() and Ref.filter_by() still work in PyRel 1.9.0 but now emit deprecation warnings, so switch to .lookup() when updating your code.
The off-by-default LogicReasonerConfig.readonly_queries option can improve performance when you run multiple queries against the same model.
PyRel 1.8.0 now includes the packages needed for GNN workflows, runs independent Snowflake exports concurrently, and uses a stable load order for predictive GNN edge tables.
PyRel 1.7.1 is available with bug fixes.
PyRel 1.7.0 adds Snowflake oauth_client_credentials authentication and a new rai reasoners sizes CLI command.
Version 2026.5.17-26db430-1 of the RAI Native App includes minor improvements to performance and stability.
PyRel 1.6.0 adds new rai clean CLI commands for cache and debugger cleanup.
PyRel 1.5.0 adds a new rai doctor CLI command group for diagnostics, supports additional Snowflake connection settings in config, and includes several bug fixes.
PyRel 1.4.2 improves rai config use profile selection and fixes cleanup when model.keep is set to False.
PyRel 1.4.1 adds predictive reasoning APIs and includes several bug fixes.
PyRel 1.3.1 includes a bug fix for identity field handling in Concept.new().
PyRel 1.3.0 adds new rai diagnose, rai whoami, and rai version CLI commands for troubleshooting and environment checks, plus enhanced prescriptive problem display options.
PyRel 1.2.2 adds more consistent CLI JSON and YAML output, new wait controls for long-running workflows, and Cortex agent deployment diagnostics.
PyRel 1.2.1 adds several new CLI commands and features for managing configuration profiles.
Version 2026.5.4-535f669-3 of the RAI Native App includes minor improvements to performance and stability.
PyRel 1.2.0 adds easier CLI navigation, directed graph support in Graph.cosine_similarity(), and fixes several bugs.
PyRel version 1.1.1 makes pagination clearer in the rai jobs:list and rai reasoners:list CLI commands, and adds upgrade notices to all CLI commands when your installed relationalai version is out of date.
Version 2026.4.27-2ba1778 of the RAI Native App includes minor improvements to performance and stability.
PyRel version 1.1.0 adds directed graph support for Graph.jaccard_similarity() and fixes a bug in the CLI.
PyRel 1.0.19 removes the currently unsupported std.re APIs and speeds up Graph.is_acyclic() on many large graphs.
PyRel 1.0.18 adds support for passing an existing Snowpark session to create_config() and fixes several bugs.
PyRel 1.0.17 rejects Relationship, Property, Concept, and Table as property or relationship names on concepts, so rename those attributes before upgrading.
PyRel 1.0.16 speeds up repeated Graph API calls, improves data security, and fixes several property and concept inheritance issues.
Version 2026.4.19-001506c-3 of the RAI Native App includes minor improvements to performance and stability.
PyRel 1.0.15 adds the RAI_ACTIVE_PROFILE env var, reduces Model.Table() schema fetch overhead, and fixes several configuration, debugger, and Model.data() issues.
PyRel 1.0.14 improves the experience using PyRel in notebooks, expands CLI and reasoner configuration options, and fixes several query and data-handling bugs.
With multiple prescriptive solutions, query the returned ProblemVariable instead of deprecated Problem.variable_values(), and stop calling Problem.load_point() with nonzero indices.
Version 2026.3.29-58b69bc-1 is a hotfix release that fixes an issue with SPCS deployment.
Version 2026.3.29-58b69bc of the RAI Native App includes minor improvements to performance and stability.
PyRel 1.0.12 adds support for configuring source tables and export targets in raiconfig.yaml and a new type parameter for Model.Table() to specify Snowflake table types.
PyRel 1.0.11 clarifies the warning shown for unsupported direct_access: true configurations in v1.
PyRel 1.0.10 makes DSL objects easier to inspect and fixes .in_() filters in select() so they no longer mutate model state.
PyRel 1.0.9 adds explicit config-file loading, restores Snowflake OAuth authorization-code sign-in for Direct Access, and includes graph support and behavior updates.
PyRel version 1.0.8 fixes exports to destination tables that do not exist yet and improves error messages for cross-model usage and relationship field access.
PyRel 1.0.7 moves auto_suspend_mins to rai reasoners:alter and await_storage_vacuum to rai reasoners:create instead of raiconfig.yaml.
Version 1.0.6 fixes require() and isclose(), improves reserved-name errors, and deprecates use_direct_access in favor of direct_access.
Version 2026.3.16-75ea12b-1 of the RAI Native App no longer supports creating data streams outside the standard app-managed workflow.
Version 1.0.5 adds explicit schema support for in-memory data and fixes several configuration and execution issues.
Version 1.0.4 adds a new CLI config inspection command and fixes several bugs.
Version 2026.3.9-4685f01-1 of the RAI Native App adds support for configuring multiple warm reasoners and introduces new SQL APIs for managing jobs.
PyRel 1.0.3 adds prescriptive reasoning (Public Preview, by request) and caps DataConfig.data_freshness_mins at three weeks, warning when it clamps larger values.
PyRel 1.0.2 deprecates raiconfig.toml in favor of raiconfig.yaml, and Snowflake stored procedures that relied on implicit config loading must now pass an explicit Config.
Version 1.0.1 of the Python SDK is a patch release with bug fixes and reliability improvements.
PyRel 1.0.0 changes model syntax and CLI commands, so treat upgrading as a migration and test existing workflows before switching.
Version 2026.1.26-ba18c9d-2 of the RAI Native App introduces a new stored procedure to show information about warm engines.
This release replaced set_warm_engines with enable_warm_engine and disable_warm_engine to manage warm logic capacity, which incurs ongoing compute costs.