Skip to content

Commit 7c13f6d

Browse files
authored
Merge branch 'main' into aalam-SNOW-2257191-cte-join-bugfix
2 parents 37609b6 + d7e9c10 commit 7c13f6d

329 files changed

Lines changed: 44491 additions & 2026 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/daily_precommit.yml

Lines changed: 48 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -103,15 +103,27 @@ jobs:
103103
strategy:
104104
fail-fast: false
105105
matrix:
106-
os:
107-
- image_name: ubuntu-latest-64-cores
108-
download_name: linux
109-
- image_name: macos-latest
110-
download_name: macos
111-
- image_name: windows-latest-64-cores
112-
download_name: windows
113-
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
114-
cloud-provider: [aws, azure, gcp]
106+
include:
107+
# Ubuntu + rotating cloud providers
108+
- { os: {image_name: ubuntu-latest-64-cores, download_name: linux}, python-version: "3.9", cloud-provider: aws }
109+
- { os: {image_name: ubuntu-latest-64-cores, download_name: linux}, python-version: "3.10", cloud-provider: azure }
110+
- { os: {image_name: ubuntu-latest-64-cores, download_name: linux}, python-version: "3.11", cloud-provider: gcp }
111+
- { os: {image_name: ubuntu-latest-64-cores, download_name: linux}, python-version: "3.12", cloud-provider: aws }
112+
- { os: {image_name: ubuntu-latest-64-cores, download_name: linux}, python-version: "3.13", cloud-provider: azure }
113+
114+
# macOS + rotating cloud providers
115+
- { os: {image_name: macos-latest, download_name: macos}, python-version: "3.9", cloud-provider: gcp }
116+
- { os: {image_name: macos-latest, download_name: macos}, python-version: "3.10", cloud-provider: aws }
117+
- { os: {image_name: macos-latest, download_name: macos}, python-version: "3.11", cloud-provider: azure }
118+
- { os: {image_name: macos-latest, download_name: macos}, python-version: "3.12", cloud-provider: gcp }
119+
- { os: {image_name: macos-latest, download_name: macos}, python-version: "3.13", cloud-provider: aws }
120+
121+
# Windows + rotating cloud providers
122+
- { os: {image_name: windows-latest-64-cores, download_name: windows}, python-version: "3.9", cloud-provider: azure }
123+
- { os: {image_name: windows-latest-64-cores, download_name: windows}, python-version: "3.10", cloud-provider: gcp }
124+
- { os: {image_name: windows-latest-64-cores, download_name: windows}, python-version: "3.11", cloud-provider: aws }
125+
- { os: {image_name: windows-latest-64-cores, download_name: windows}, python-version: "3.12", cloud-provider: azure }
126+
- { os: {image_name: windows-latest-64-cores, download_name: windows}, python-version: "3.13", cloud-provider: gcp }
115127
steps:
116128
- name: Checkout Code
117129
uses: actions/checkout@v4
@@ -170,6 +182,8 @@ jobs:
170182
cloud_provider: ${{ matrix.cloud-provider }}
171183
PYTEST_ADDOPTS: --color=yes --tb=short
172184
TOX_PARALLEL_NO_SPINNER: 1
185+
SNOWPARK_PYTHON_API_TEST_BUCKET_PATH: ${{ secrets.SNOWPARK_PYTHON_API_TEST_BUCKET_PATH }}
186+
SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION: ${{ vars.SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION }}
173187
shell: bash
174188
# SNOW-2213578 : Remove the test below and run udf tests for 3.13
175189
- if: ${{ matrix.python-version == '3.13' }}
@@ -180,6 +194,8 @@ jobs:
180194
cloud_provider: ${{ matrix.cloud-provider }}
181195
PYTEST_ADDOPTS: --color=yes --tb=short
182196
TOX_PARALLEL_NO_SPINNER: 1
197+
SNOWPARK_PYTHON_API_TEST_BUCKET_PATH: ${{ secrets.SNOWPARK_PYTHON_API_TEST_BUCKET_PATH }}
198+
SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION: ${{ vars.SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION }}
183199
shell: bash
184200
- name: Run data source tests
185201
# psycopg2 is not supported on macos 3.9
@@ -307,6 +323,8 @@ jobs:
307323
cloud_provider: ${{ matrix.cloud-provider }}
308324
PYTEST_ADDOPTS: --color=yes --tb=short --disable_sql_simplifier
309325
TOX_PARALLEL_NO_SPINNER: 1
326+
SNOWPARK_PYTHON_API_TEST_BUCKET_PATH: ${{ secrets.SNOWPARK_PYTHON_API_TEST_BUCKET_PATH }}
327+
SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION: ${{ vars.SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION }}
310328
shell: bash
311329
- name: Combine coverages
312330
run: python -m tox -e coverage --skip-missing-interpreters false
@@ -376,6 +394,8 @@ jobs:
376394
TOX_PARALLEL_NO_SPINNER: 1
377395
# Specify SNOWFLAKE_IS_PYTHON_RUNTIME_TEST: 1 when adding >= python3.12 with no server-side support
378396
# For example, see https://github.com/snowflakedb/snowpark-python/pull/681
397+
SNOWPARK_PYTHON_API_TEST_BUCKET_PATH: ${{ secrets.SNOWPARK_PYTHON_API_TEST_BUCKET_PATH }}
398+
SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION: ${{ vars.SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION }}
379399
shell: bash
380400
- name: Combine coverages
381401
run: python -m tox -e coverage --skip-missing-interpreters false
@@ -397,7 +417,13 @@ jobs:
397417
strategy:
398418
fail-fast: false
399419
matrix:
400-
os: [macos-latest, windows-latest, ubuntu-latest]
420+
os:
421+
- download_name: macos
422+
image_name: macos-latest
423+
- download_name: windows
424+
image_name: windows-latest
425+
- download_name: ubuntu
426+
image_name: ubuntu-latest
401427
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
402428
cloud-provider: [azure]
403429
steps:
@@ -523,6 +549,8 @@ jobs:
523549
PYTEST_ADDOPTS: --color=yes --tb=short
524550
TOX_PARALLEL_NO_SPINNER: 1
525551
SNOWFLAKE_IS_PYTHON_RUNTIME_TEST: 1
552+
SNOWPARK_PYTHON_API_TEST_BUCKET_PATH: ${{ secrets.SNOWPARK_PYTHON_API_TEST_BUCKET_PATH }}
553+
SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION: ${{ vars.SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION }}
526554
TZ: EST
527555
shell: bash
528556

@@ -572,7 +600,8 @@ jobs:
572600
run: uv pip install -U setuptools pip wheel --system
573601
- name: Install tox
574602
run: uv pip install tox --system
575-
- if: ${{ contains('macos', matrix.os.download_name) }}
603+
# SNOW-2213578: Re-enable the test for 3.13
604+
- if: ${{ contains('macos', matrix.os.download_name) && matrix.python-version != '3.13' }}
576605
name: Run doctests
577606
run: python -m tox -e "py${PYTHON_VERSION}-doctest-notudf-ci"
578607
env:
@@ -589,6 +618,8 @@ jobs:
589618
cloud_provider: ${{ matrix.cloud-provider }}
590619
PYTEST_ADDOPTS: --color=yes --tb=short --disable_cte_optimization
591620
TOX_PARALLEL_NO_SPINNER: 1
621+
SNOWPARK_PYTHON_API_TEST_BUCKET_PATH: ${{ secrets.SNOWPARK_PYTHON_API_TEST_BUCKET_PATH }}
622+
SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION: ${{ vars.SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION }}
592623
shell: bash
593624
# SNOW-2213578 : Remove the test below and run udf tests for 3.13
594625
- if: ${{ matrix.python-version == '3.13' }}
@@ -599,6 +630,8 @@ jobs:
599630
cloud_provider: ${{ matrix.cloud-provider }}
600631
PYTEST_ADDOPTS: --color=yes --tb=short --disable_cte_optimization
601632
TOX_PARALLEL_NO_SPINNER: 1
633+
SNOWPARK_PYTHON_API_TEST_BUCKET_PATH: ${{ secrets.SNOWPARK_PYTHON_API_TEST_BUCKET_PATH }}
634+
SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION: ${{ vars.SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION }}
602635
shell: bash
603636
- name: Combine coverages
604637
run: python -m tox -e coverage --skip-missing-interpreters false
@@ -686,6 +719,8 @@ jobs:
686719
cloud_provider: ${{ matrix.cloud-provider }}
687720
PYTEST_ADDOPTS: --color=yes --tb=short --join_alias_fix
688721
TOX_PARALLEL_NO_SPINNER: 1
722+
SNOWPARK_PYTHON_API_TEST_BUCKET_PATH: ${{ secrets.SNOWPARK_PYTHON_API_TEST_BUCKET_PATH }}
723+
SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION: ${{ vars.SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION }}
689724
shell: bash
690725
- if: ${{ matrix.python-version == '3.12' }}
691726
name: Run tests (excluding doctests and udf tests)
@@ -696,6 +731,8 @@ jobs:
696731
PYTEST_ADDOPTS: --color=yes --tb=short --join_alias_fix
697732
TOX_PARALLEL_NO_SPINNER: 1
698733
SNOWFLAKE_IS_PYTHON_RUNTIME_TEST: 1
734+
SNOWPARK_PYTHON_API_TEST_BUCKET_PATH: ${{ secrets.SNOWPARK_PYTHON_API_TEST_BUCKET_PATH }}
735+
SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION: ${{ vars.SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION }}
699736
shell: bash
700737
- name: Combine coverages
701738
run: python -m tox -e coverage --skip-missing-interpreters false

.github/workflows/precommit.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -191,6 +191,8 @@ jobs:
191191
cloud_provider: ${{ matrix.cloud-provider }}
192192
PYTEST_ADDOPTS: --color=yes --tb=short
193193
TOX_PARALLEL_NO_SPINNER: 1
194+
SNOWPARK_PYTHON_API_TEST_BUCKET_PATH: ${{ secrets.SNOWPARK_PYTHON_API_TEST_BUCKET_PATH }}
195+
SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION: ${{ vars.SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION }}
194196
shell: bash
195197
# SNOW-2213578 : Remove the test below and run udf tests for 3.13
196198
# for 3.13, skip udf, doctest
@@ -201,6 +203,8 @@ jobs:
201203
PYTHON_VERSION: ${{ matrix.python-version }}
202204
cloud_provider: ${{ matrix.cloud-provider }}
203205
PYTEST_ADDOPTS: --color=yes --tb=short
206+
SNOWPARK_PYTHON_API_TEST_BUCKET_PATH: ${{ secrets.SNOWPARK_PYTHON_API_TEST_BUCKET_PATH }}
207+
SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION: ${{ vars.SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION }}
204208
TOX_PARALLEL_NO_SPINNER: 1
205209
shell: bash
206210
- name: Run data source tests
@@ -481,6 +485,8 @@ jobs:
481485
cloud_provider: ${{ matrix.cloud-provider }}
482486
PYTEST_ADDOPTS: --color=yes --tb=short --enable_ast
483487
TOX_PARALLEL_NO_SPINNER: 1
488+
SNOWPARK_PYTHON_API_TEST_BUCKET_PATH: ${{ secrets.SNOWPARK_PYTHON_API_TEST_BUCKET_PATH }}
489+
SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION: ${{ vars.SNOWPARK_PYTHON_API_S3_STORAGE_INTEGRATION }}
484490
shell: bash
485491
- name: Combine coverages
486492
run: python -m tox -e coverage --skip-missing-interpreters false

.pre-commit-config.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ repos:
8484
- --per-file-ignores=tests/*.py:T201 # prints are allowed in test files
8585
# Ignore errors for generated protocol buffer stubs
8686
- --exclude=src/snowflake/snowpark/_internal/proto/generated/ast_pb2.py
87+
- --exclude=scripts/release/prepare_release_branch.py
8788
# Use mypy for static type checking.
8889
- repo: https://github.com/pre-commit/mirrors-mypy
8990
rev: 'v0.991'

0 commit comments

Comments
 (0)