astronomer / astro-sdk

Astro SDK allows rapid and clean development of {Extract, Load, Transform} workflows using Python and SQL, powered by Apache Airflow.
https://astro-sdk-python.rtfd.io/
Apache License 2.0
329 stars 40 forks source link

Investigate nightly build failure with AstroSDK #2167

Closed utkarsharma2 closed 1 month ago

utkarsharma2 commented 1 month ago

ref - https://astronomer.slack.com/archives/C059004990C/p1717074355350809 image

utkarsharma2 commented 1 month ago

We build nightlies from the OSS main branch and there was a change done on OSS airflow to update the version from 2.9.0.dev0 to 2.10.0.dev0 in PR .

With the latest 1.8.0 of AstroSDK, we have this version of file astro/sql/operators/raw_sql.py -

import airflow

if airflow.__version__ >= "2.3":
    from sqlalchemy.engine.row import LegacyRow as SQLAlcRow
else:
    from sqlalchemy.engine.result import RowProxy as SQLAlcRow

In the above code snippet, version comparison is not correct, which leads to the ImportError: cannot import name 'RowProxy' from 'sqlalchemy.engine.result' and explains the recent failures: Screenshot 2024-05-31 at 4 44 36 PM

utkarsharma2 commented 1 month ago

Since we no longer have a incorrect version check, which was removed in PR. We can do a release for AstroSDK and it should be fixed.