Skip to content

sql-alchemy 1.4 - using is_not on column leads to mypy warning, while using isnot does not lead to the warning #244

@serhiy-yevtushenko

Description

@serhiy-yevtushenko

In the sqlalchemy version 1.4, the method isnot was renamed to is_not, and the old method was left for backward compatibility.

(see https://docs.sqlalchemy.org/en/14/core/sqlelement.html#sqlalchemy.sql.expression.ColumnOperators.is_not)

However, if one try to use is_not on the column expression

(something like:

...
.where(and_(pch_alias.c.New_Id.is_not(None))))

)
then one gets following warning in mypy:

error: "Column[Any]" has no attribute "is_not"
However, if one is using older isnot construct, then mypy produces no warning.

As is_not now is a recommended method, I think stubs should function with it without warnings.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions