sqlalchemy-stubs
sqlalchemy-stubs copied to clipboard
sql-alchemy 1.4 - using is_not on column leads to mypy warning, while using isnot does not lead to the warning
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.
Ihttps://github.com/dropbox/sqlalchemy-stubs/issues/237 covers this, and more cases.