What's New in Version 0.12.0
Version 0.12.0 of the relationalai Python package is now available!
To upgrade, activate your virtual environment and run the following command:
pip install --upgrade relationalaiBreaking Changes
Section titled “Breaking Changes”-
This release raises the minimum supported Python version for the
relationalaipackage to Python 3.10 and updates the command-line framework dependency to Click 8.2.1. This lets us rely on a more modern, better-supported Python baseline and a newer CLI library, improving long-term stability and making it easier to deliver new features and fixes.What this means for you:
- You now need Python 3.10 or later to install or upgrade to this version of
relationalai. On Python 3.9, installation will fail with a message that Python 3.10+ is required. - If you cannot upgrade from Python 3.9 yet, please pin
relationalaito a version released before this change. - If you manage CI or automation, update your pipelines to run on Python 3.10 or 3.11 instead of 3.9.
- You now need Python 3.10 or later to install or upgrade to this version of
-
RelationalAI now installs with fewer dependencies by default. If you only use Snowflake, you can simply run
pip install relationalaias before; Snowflake features and the CLI will continue to work, and you’ll benefit from a lighter, more reliable installation.If you use RAI Azure, you now need to explicitly enable legacy Azure support. When your configuration sets
platform = "azure"and the required legacy package is missing, you’ll see a clear error message explaining what to do.To enable Azure support, install with the
[legacy]extra:Terminal window pip install "relationalai[legacy]"Or, to upgrade your existing installation:
Terminal window pip install --upgrade "relationalai[legacy]"This change prevents legacy RAI Azure-related issues from affecting Snowflake-only users, while giving RAI Azure users straightforward guidance to get the required components installed.
New Features and Enhancements
Section titled “New Features and Enhancements”-
When a query takes longer than its allowed time, the Python client will clearly tell you what happened instead of quietly returning an empty result. In these cases, it raises a
QueryTimeoutExceededExceptionwith a helpful message that includes how long the timeout was, the query or transaction ID (when available), and where your config file is located, along with guidance on how to increasequery_timeout_mins. This makes it much easier to tell the difference between “no data found” and “the query ran out of time,” and helps you quickly adjust your settings or query as needed.You may want to update your code to catch this exception. For example, wrap your query calls in a
try/except QueryTimeoutExceededExceptionblock and decide whether to treat a timeout as “no results,” retry with a higher timeout, or show an error to your users.