Skip to content

Python package and CLI 1.0.6

Version 1.0.6 fixes require() and isclose(), improves reserved-name errors, and deprecates use_direct_access in favor of direct_access.

How to install this version

Review the changes below before installing. To install this version, activate a compatible Python virtual environment and run:

Terminal window
python -m pip install "relationalai==1.0.6"

For the latest installation instructions, see Start building with PyRel.

  • Fixed require() checks that reference columns from data(). Before, a .require() condition that used model.data() columns could emit a warning even when the input rows satisfied the requirement. Now PyRel warns only when the condition is actually violated.

  • Fixed std.math.isclose() so that it correctly evaluates an absolute-tolerance comparison. Before, std.math.isclose() could silently produce the wrong result in filters and selections.

  • Fixed lookups on subtypes such as Manager, a subtype of Employee. Before, a lookup such as Manager.approves_budget could use the wrong relationship or raise a type mismatch. Now PyRel resolves the subtype before resolving the relationship.

  • Improved reserved-name diagnostics for concepts and tables. Before, if you used a reserved name such as alias, new, or require, the error could be unclear or point to the wrong place. Now PyRel points the error at the call site. For reserved table column names, the message also tells you to use table indexing, such as table["alias"].

  • The use_direct_access config option is now deprecated. Use the top-level direct_access setting instead.

    Preferred configuration:

    connections:
    snowflake:
    account: my-account
    user: my-user
    password: ${SNOWFLAKE_PASSWORD}
    database: MY_DB
    schema: PUBLIC
    warehouse: COMPUTE_WH
    direct_access: true

    Deprecated configuration:

    connections:
    snowflake:
    account: my-account
    user: my-user
    password: ${SNOWFLAKE_PASSWORD}
    database: MY_DB
    schema: PUBLIC
    warehouse: COMPUTE_WH
    use_direct_access: true

    Existing use_direct_access entries still work. PyRel warns that they are deprecated and maps them to the top-level direct_access setting. For details, see Configure reasoners.