From a7effa0f9c8e9d1cdfcadd70551e1f1b6e98c839 Mon Sep 17 00:00:00 2001 From: Heba Alazzeh Date: Mon, 20 Jul 2026 19:20:41 +0000 Subject: [PATCH 1/2] fix(ci): explicitly skip sqlalchemy-bigquery on python 3.15+ in profiler script --- scripts/import_profiler/profiler.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/scripts/import_profiler/profiler.py b/scripts/import_profiler/profiler.py index d2734dadce88..2234fe7321a1 100644 --- a/scripts/import_profiler/profiler.py +++ b/scripts/import_profiler/profiler.py @@ -156,6 +156,13 @@ def _format_stats(title, data, p50, p90, p99, fmt): def run_master(iterations, target_module, cpu=0, csv_path=None, clear_cache=True, fail_threshold=None, diff_baseline=None, diff_threshold=None): """Orchestrates the benchmark.""" + # Skip packages/sqlalchemy-bigquery because python_requires restricts to < 3.15 + # TODO: Re-enable once Python 3.15 is supported (see issue #17786) + if (target_module == "sqlalchemy.bigquery" or target_module == "sqlalchemy_bigquery") and sys.version_info >= (3, 15): + print(f"\nWARNING: Skipping {target_module} import profiling: python_requires limits support to < 3.15 (see issue #17786)") + print("\nSession import_profiler was successful.") + sys.exit(0) + if iterations < 1: raise ValueError("Number of iterations must be at least 1.") times, memories, rss_memories = [], [], [] From 6c6933d209a9bc421faed36a1d0d49b003f616bb Mon Sep 17 00:00:00 2001 From: Heba Alazzeh Date: Mon, 20 Jul 2026 19:33:05 +0000 Subject: [PATCH 2/2] chore(bigquery): support python 3.15 in sqlalchemy-bigquery --- packages/sqlalchemy-bigquery/setup.py | 2 +- scripts/import_profiler/profiler.py | 7 ------- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/packages/sqlalchemy-bigquery/setup.py b/packages/sqlalchemy-bigquery/setup.py index 8d7ad005c2ee..bdfb262bf4c2 100644 --- a/packages/sqlalchemy-bigquery/setup.py +++ b/packages/sqlalchemy-bigquery/setup.py @@ -121,7 +121,7 @@ def readme(): "sqlalchemy>=1.4.16,<3.0.0", ], extras_require=extras, - python_requires=">=3.10, <3.15", + python_requires=">=3.10", tests_require=["packaging", "pytz"], entry_points={ "sqlalchemy.dialects": ["bigquery = sqlalchemy_bigquery:BigQueryDialect"] diff --git a/scripts/import_profiler/profiler.py b/scripts/import_profiler/profiler.py index 2234fe7321a1..d2734dadce88 100644 --- a/scripts/import_profiler/profiler.py +++ b/scripts/import_profiler/profiler.py @@ -156,13 +156,6 @@ def _format_stats(title, data, p50, p90, p99, fmt): def run_master(iterations, target_module, cpu=0, csv_path=None, clear_cache=True, fail_threshold=None, diff_baseline=None, diff_threshold=None): """Orchestrates the benchmark.""" - # Skip packages/sqlalchemy-bigquery because python_requires restricts to < 3.15 - # TODO: Re-enable once Python 3.15 is supported (see issue #17786) - if (target_module == "sqlalchemy.bigquery" or target_module == "sqlalchemy_bigquery") and sys.version_info >= (3, 15): - print(f"\nWARNING: Skipping {target_module} import profiling: python_requires limits support to < 3.15 (see issue #17786)") - print("\nSession import_profiler was successful.") - sys.exit(0) - if iterations < 1: raise ValueError("Number of iterations must be at least 1.") times, memories, rss_memories = [], [], []