Skip to content

Conversation

@josectobar
Copy link
Member

@josectobar josectobar commented Oct 2, 2025

This PR drops support for SQLAlchemy < 2 and replaces the requirement for sqlalchemy-redshift with gx-sqlalchemy-redshift.

  • Description of PR changes above includes a link to an existing GitHub issue
  • PR title is prefixed with one of: [BUGFIX], [FEATURE], [DOCS], [MAINTENANCE], [CONTRIB], [MINORBUMP]
  • Code is linted - run invoke lint (uses ruff format + ruff check)
  • Appropriate tests and docs have been updated

For more information about contributing, visit our community resources.

After you submit your PR, keep the page open and monitor the statuses of the various checks made by our continuous integration process at the bottom of the page. Please fix any issues that come up and reach out on Slack if you need help. Thanks for contributing!

@netlify
Copy link

netlify bot commented Oct 2, 2025

Deploy Preview for niobium-lead-7998 canceled.

Name Link
🔨 Latest commit 750c991
🔍 Latest deploy log https://app.netlify.com/projects/niobium-lead-7998/deploys/68e0024a6128d60008f9011b

@codecov
Copy link

codecov bot commented Oct 2, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 84.07%. Comparing base (56b9b84) to head (750c991).
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@             Coverage Diff             @@
##           develop   #11413      +/-   ##
===========================================
- Coverage    84.09%   84.07%   -0.02%     
===========================================
  Files          468      468              
  Lines        39005    39005              
===========================================
- Hits         32801    32795       -6     
- Misses        6204     6210       +6     
Flag Coverage Δ
3.10 72.99% <100.00%> (ø)
3.10 athena ?
3.10 aws_deps ?
3.10 big ?
3.10 clickhouse ?
3.10 mssql ?
3.10 mysql ?
3.10 openpyxl or pyarrow or project or sqlite or aws_creds ?
3.10 postgresql ?
3.10 spark_connect ?
3.11 72.99% <100.00%> (ø)
3.11 athena ?
3.11 aws_deps ?
3.11 big ?
3.11 clickhouse ?
3.11 filesystem ?
3.11 mssql ?
3.11 mysql ?
3.11 openpyxl or pyarrow or project or sqlite or aws_creds ?
3.11 postgresql ?
3.12 72.99% <100.00%> (ø)
3.12 athena 41.73% <88.88%> (ø)
3.12 aws_deps 46.23% <100.00%> (ø)
3.12 big 55.71% <100.00%> (ø)
3.12 bigquery 50.38% <88.88%> (ø)
3.12 databricks 52.19% <44.44%> (ø)
3.12 filesystem 64.42% <100.00%> (ø)
3.12 gx-redshift 50.58% <100.00%> (ø)
3.12 mssql 50.62% <100.00%> (ø)
3.12 mysql 50.90% <100.00%> (ø)
3.12 openpyxl or pyarrow or project or sqlite or aws_creds 59.16% <100.00%> (ø)
3.12 postgresql 54.60% <100.00%> (ø)
3.12 snowflake 53.00% <100.00%> (ø)
3.12 spark 55.58% <100.00%> (ø)
3.12 spark_connect 46.75% <100.00%> (ø)
3.12 trino 48.48% <100.00%> (ø)
3.9 73.01% <100.00%> (ø)
3.9 athena 41.75% <88.88%> (ø)
3.9 aws_deps 46.25% <100.00%> (ø)
3.9 big 55.73% <100.00%> (ø)
3.9 bigquery 50.37% <88.88%> (ø)
3.9 clickhouse 41.76% <100.00%> (ø)
3.9 databricks 52.18% <44.44%> (ø)
3.9 filesystem 64.42% <100.00%> (ø)
3.9 mssql 50.62% <100.00%> (ø)
3.9 mysql 50.89% <100.00%> (ø)
3.9 openpyxl or pyarrow or project or sqlite or aws_creds 59.16% <100.00%> (ø)
3.9 postgresql 54.60% <100.00%> (ø)
3.9 snowflake 53.00% <100.00%> (ø)
3.9 spark 55.57% <100.00%> (ø)
3.9 spark_connect 46.76% <100.00%> (ø)
3.9 trino 48.50% <100.00%> (ø)
cloud 0.00% <0.00%> (ø)
docs-basic 58.96% <55.55%> (ø)
docs-creds-needed 58.60% <44.44%> (+0.09%) ⬆️
docs-spark 57.13% <55.55%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@josectobar josectobar force-pushed the bump-sqlalchemy branch 4 times, most recently from e78e3d4 to f6afbf8 Compare October 2, 2025 23:05
@josectobar josectobar requested a review from Copilot October 3, 2025 00:19
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR bumps the minimum SQLAlchemy version from 1.4.0 to 2.0, removing all SQLAlchemy 1.x compatibility code and dependencies. This is a significant maintenance change that modernizes the codebase to use only SQLAlchemy 2.x.

Key changes include:

  • Removed all SQLAlchemy 1.x compatibility files and references
  • Updated minimum version constraints to require SQLAlchemy 2.0+
  • Consolidated SQLAlchemy 2.x requirements into the main requirements files
  • Updated test configurations and CI pipelines to reflect the new minimum version

Reviewed Changes

Copilot reviewed 24 out of 24 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
tests/test_packaging.py Removed references to sqlalchemy1 requirements and updated package count assertions
tasks.py Removed sqlalchemy1 requirement files from test dependencies and updated redshift references
setup.py Removed SQLAlchemy 1.x compatibility logic and consolidated to SQLAlchemy 2.x requirements
requirements-types.txt Updated to use sqlalchemy.txt instead of sqlalchemy2.txt and added version constraints
reqs/ files Removed SQLAlchemy 1.x files, updated version constraints, and consolidated requirements
pyproject.toml Removed SQLAlchemy type checking exclusion
compatibility files Cleaned up type ignore comments related to SQLAlchemy compatibility
docs/ Updated documentation to reference new package names
ci/ files Updated minimum version constraints and CI pipeline configurations

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

numpy==1.23.0
pandas==1.5.1
sqlalchemy<2.0.0 # SQLAlchemy 2.0.0 is not compatible with pandas < 2.0.0
numpy==1.23.2
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pandas 2.0.0 has different numpy requirements. Python 3.11 requires numpy>=1.23.2

@josectobar josectobar requested a review from Copilot October 3, 2025 00:28
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

Copilot reviewed 24 out of 24 changed files in this pull request and generated 1 comment.


Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Instead of deleting I would change this to look like requirements-dev-gx-redshift.txt. I think that would like people do pip install great_expectations[redshift] and get our redshift. We should verify that we can install our redshift package in that way.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We already have a requirements-dev-gx-redshift.txt.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I believe that requires someone doing pip install great_expectations[gx-redshift]. Both should work. People will most likely do pip install great_expectations[redshift] since that is more like what one would do for other databases but we don't want to break anyone who does [gx-redshift].

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Got it, let me check.

@klavavej klavavej mentioned this pull request Oct 3, 2025
4 tasks
@josectobar josectobar changed the title [MAINTENANCE] Bump SQLA minimum version to 2.0 [MINORBUMP] Bump SQLA minimum version to 2.0 Oct 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants