From eaa2f0b65e1b6b44762c8a12e6eee42809b513a9 Mon Sep 17 00:00:00 2001 From: Ian Armstrong Date: Mon, 24 Jul 2023 22:39:04 -0400 Subject: [PATCH 01/14] Unit test over multiple python versions --- .github/workflows/ci.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4957383..b6f1916 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -11,6 +11,9 @@ on: jobs: test: + strategy: + matrix: + python-version: ["3.9", "3.10", "3.11"] runs-on: ubuntu-latest steps: @@ -18,10 +21,10 @@ jobs: with: fetch-depth: 1 - - name: Set up Python 3.9 + - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v2 with: - python-version: 3.9 + python-version: ${{ matrix.python-version }} - name: Install Poetry uses: snok/install-poetry@v1 @@ -34,6 +37,7 @@ jobs: key: poetry-${{ hashFiles('**/poetry.lock') }} restore-keys: | poetry-${{ hashFiles('**/poetry.lock') }} + - name: Install dependencies run: poetry install if: steps.cache.outputs.cache-hit != 'true' From 0888c82bfbc1fea1da483f4baf50fe74040c8f24 Mon Sep 17 00:00:00 2001 From: Ian Armstrong Date: Mon, 24 Jul 2023 22:43:43 -0400 Subject: [PATCH 02/14] set strategy to tolerate failues in specific versions --- .github/workflows/ci.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b6f1916..9da4de5 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -12,8 +12,9 @@ jobs: test: strategy: + fail-fast: false matrix: - python-version: ["3.9", "3.10", "3.11"] + python-version: ["3.8", "3.9", "3.10", "3.11"] runs-on: ubuntu-latest steps: From f86625163b46683ccc8d1ab01b50b5c4ab07c1d4 Mon Sep 17 00:00:00 2001 From: Ian Armstrong Date: Mon, 24 Jul 2023 22:51:56 -0400 Subject: [PATCH 03/14] install delta version from matrix --- .github/workflows/ci.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9da4de5..69fdd41 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,6 +15,7 @@ jobs: fail-fast: false matrix: python-version: ["3.8", "3.9", "3.10", "3.11"] + delta-lake-version: ["2.0", "2.1", "2.2", "2.3", "2.4"] runs-on: ubuntu-latest steps: @@ -35,13 +36,16 @@ jobs: id: cache with: path: ~/.virtualenvs - key: poetry-${{ hashFiles('**/poetry.lock') }} + key: poetry-${{ hashFiles('**/poetry.lock') }}-${{ matrix.python-version}}-${{ matrix.delta-lake-version}} restore-keys: | - poetry-${{ hashFiles('**/poetry.lock') }} + poetry-${{ hashFiles('**/poetry.lock') }}-${{ matrix.python-version}}-${{ matrix.delta-lake-version}} - name: Install dependencies run: poetry install if: steps.cache.outputs.cache-hit != 'true' + - name: Install specific delta-spark version + run: poetry update delta-spark==${{ matrix.delta-lake-version }} + - name: Run mack tests with pytest run: poetry run pytest From 79f2081d2f9eaf480c8ce84789f75725fa5953e0 Mon Sep 17 00:00:00 2001 From: Ian Armstrong Date: Mon, 24 Jul 2023 22:54:27 -0400 Subject: [PATCH 04/14] update before install --- .github/workflows/ci.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 69fdd41..f98760b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -40,12 +40,12 @@ jobs: restore-keys: | poetry-${{ hashFiles('**/poetry.lock') }}-${{ matrix.python-version}}-${{ matrix.delta-lake-version}} + - name: Install specific delta-spark version + run: poetry update delta-spark&${{ matrix.delta-lake-version }} + - name: Install dependencies run: poetry install if: steps.cache.outputs.cache-hit != 'true' - - name: Install specific delta-spark version - run: poetry update delta-spark==${{ matrix.delta-lake-version }} - - name: Run mack tests with pytest run: poetry run pytest From a2ffd0f1f76939ba1e0e6701160c7df2eafd610a Mon Sep 17 00:00:00 2001 From: Ian Armstrong Date: Mon, 24 Jul 2023 22:57:07 -0400 Subject: [PATCH 05/14] poetry add --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f98760b..6eefd39 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -41,7 +41,7 @@ jobs: poetry-${{ hashFiles('**/poetry.lock') }}-${{ matrix.python-version}}-${{ matrix.delta-lake-version}} - name: Install specific delta-spark version - run: poetry update delta-spark&${{ matrix.delta-lake-version }} + run: poetry add delta-spark==${{ matrix.delta-lake-version }} - name: Install dependencies run: poetry install From 1f9cae2339b3a2da32c5e69272beee475b9d887a Mon Sep 17 00:00:00 2001 From: Ian Armstrong Date: Mon, 24 Jul 2023 22:58:16 -0400 Subject: [PATCH 06/14] poetry update? --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6eefd39..c6e0538 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -41,7 +41,7 @@ jobs: poetry-${{ hashFiles('**/poetry.lock') }}-${{ matrix.python-version}}-${{ matrix.delta-lake-version}} - name: Install specific delta-spark version - run: poetry add delta-spark==${{ matrix.delta-lake-version }} + run: poetry update delta-spark==${{ matrix.delta-lake-version }} - name: Install dependencies run: poetry install From e60ac4d91934ac3f0e65b3ac1d4302488b8dd4fd Mon Sep 17 00:00:00 2001 From: Ian Armstrong Date: Tue, 25 Jul 2023 16:27:41 -0400 Subject: [PATCH 07/14] remove python 3.11 from matrix --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c6e0538..152642d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,7 +14,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.8", "3.9", "3.10", "3.11"] + python-version: ["3.8", "3.9", "3.10"] delta-lake-version: ["2.0", "2.1", "2.2", "2.3", "2.4"] runs-on: ubuntu-latest @@ -45,7 +45,7 @@ jobs: - name: Install dependencies run: poetry install - if: steps.cache.outputs.cache-hit != 'true' + - name: Run mack tests with pytest run: poetry run pytest From 0d9fc811e9b8d45d0e4ed07ba559b79797fffd03 Mon Sep 17 00:00:00 2001 From: Ian Armstrong Date: Tue, 25 Jul 2023 16:27:49 -0400 Subject: [PATCH 08/14] add delta-spark 1.1/1.2 --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 152642d..19e80f8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,7 +15,7 @@ jobs: fail-fast: false matrix: python-version: ["3.8", "3.9", "3.10"] - delta-lake-version: ["2.0", "2.1", "2.2", "2.3", "2.4"] + delta-lake-version: ["1.0", "1.1", "1.2", "2.0", "2.1", "2.2", "2.3", "2.4"] runs-on: ubuntu-latest steps: From 0b9c4e8365b304353ae5e1bc8fa5d86f1beccb2b Mon Sep 17 00:00:00 2001 From: Ian Armstrong Date: Tue, 25 Jul 2023 16:30:51 -0400 Subject: [PATCH 09/14] test over pyspark version? --- .github/workflows/ci.yml | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 19e80f8..1fe8bab 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -16,6 +16,7 @@ jobs: matrix: python-version: ["3.8", "3.9", "3.10"] delta-lake-version: ["1.0", "1.1", "1.2", "2.0", "2.1", "2.2", "2.3", "2.4"] + pyspark-version: ["3.1", "3.2", "3.3", "3.4"] runs-on: ubuntu-latest steps: @@ -36,16 +37,13 @@ jobs: id: cache with: path: ~/.virtualenvs - key: poetry-${{ hashFiles('**/poetry.lock') }}-${{ matrix.python-version}}-${{ matrix.delta-lake-version}} + key: poetry-${{ hashFiles('**/poetry.lock') }}-${{ matrix.python-version}}-${{ matrix.delta-lake-version}}-${{ matrix.pyspark-version }} restore-keys: | - poetry-${{ hashFiles('**/poetry.lock') }}-${{ matrix.python-version}}-${{ matrix.delta-lake-version}} + poetry-${{ hashFiles('**/poetry.lock') }}-${{ matrix.python-version}}-${{ matrix.delta-lake-version}}-${{ matrix.pyspark-version }} - name: Install specific delta-spark version - run: poetry update delta-spark==${{ matrix.delta-lake-version }} - - - name: Install dependencies - run: poetry install - + if: steps.cache.outputs.cache-hit != 'true' + run: poetry update delta-spark==${{ matrix.delta-lake-version }} pyspark==${{ matrix.pyspark-version }} - name: Run mack tests with pytest run: poetry run pytest From f8e53ee808207fba4c75978611203be985a76240 Mon Sep 17 00:00:00 2001 From: Ian Armstrong Date: Tue, 25 Jul 2023 16:41:01 -0400 Subject: [PATCH 10/14] set job name --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1fe8bab..cf7cf68 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -18,7 +18,7 @@ jobs: delta-lake-version: ["1.0", "1.1", "1.2", "2.0", "2.1", "2.2", "2.3", "2.4"] pyspark-version: ["3.1", "3.2", "3.3", "3.4"] runs-on: ubuntu-latest - + name: test (python ${{ matrix.python-version }}, delta-lake ${{ matrix.delta-lake-version }}, pyspark ${{ matrix.pyspark-version }}) steps: - uses: actions/checkout@v1 with: From 4683db8022a6b94774223ea63f6538503836fe23 Mon Sep 17 00:00:00 2001 From: Ian Armstrong Date: Tue, 31 Oct 2023 21:02:43 -0400 Subject: [PATCH 11/14] include pairs instead of running over combinations --- .github/workflows/ci.yml | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index cf7cf68..f0fdf80 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,11 +14,26 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.8", "3.9", "3.10"] - delta-lake-version: ["1.0", "1.1", "1.2", "2.0", "2.1", "2.2", "2.3", "2.4"] - pyspark-version: ["3.1", "3.2", "3.3", "3.4"] + python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] + delta-lake-version: ["1.0", "1.1", "1.2", "2.0", "2.1", "2.2", "2.3", "2.4", "3.0"] + include: + - delta-lake-version: "3.0" + pyspark-version: "3.5" + - delta-lake-version: "2.4" + pyspark-version: "3.4" + - delta-lake-version: "2.3" + pyspark-version: "3.3" + - delta-lake-version: "2.2" + pyspark-version: "3.3" + - delta-lake-version: "2.1" + pyspark-version: "3.3" + - delta-lake-version: "2.0" + pyspark-version: "3.2" + - delta-lake-version: "2.4" + pyspark-version: "3.4" + runs-on: ubuntu-latest - name: test (python ${{ matrix.python-version }}, delta-lake ${{ matrix.delta-lake-version }}, pyspark ${{ matrix.pyspark-version }}) + name: Unit Test (Python ${{ matrix.python-version }}, Delta ${{ matrix.delta-lake-version }}, PySpark ${{ matrix.pyspark-version }}) steps: - uses: actions/checkout@v1 with: From a9b89856cb5bb4f5737af21536849acba491e3df Mon Sep 17 00:00:00 2001 From: Ian Armstrong Date: Tue, 31 Oct 2023 21:03:34 -0400 Subject: [PATCH 12/14] remove delta lake list --- .github/workflows/ci.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f0fdf80..4975f1d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,7 +15,6 @@ jobs: fail-fast: false matrix: python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] - delta-lake-version: ["1.0", "1.1", "1.2", "2.0", "2.1", "2.2", "2.3", "2.4", "3.0"] include: - delta-lake-version: "3.0" pyspark-version: "3.5" From 034cd764a0a2f0cccfa0c0952aee7482b19f168e Mon Sep 17 00:00:00 2001 From: Ian Armstrong Date: Tue, 31 Oct 2023 21:07:29 -0400 Subject: [PATCH 13/14] test with python 3.10 --- .github/workflows/ci.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4975f1d..9057276 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,7 +14,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] + # python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] include: - delta-lake-version: "3.0" pyspark-version: "3.5" @@ -32,16 +32,16 @@ jobs: pyspark-version: "3.4" runs-on: ubuntu-latest - name: Unit Test (Python ${{ matrix.python-version }}, Delta ${{ matrix.delta-lake-version }}, PySpark ${{ matrix.pyspark-version }}) + name: Unit Test (Python 3.10, Delta ${{ matrix.delta-lake-version }}, PySpark ${{ matrix.pyspark-version }}) steps: - uses: actions/checkout@v1 with: fetch-depth: 1 - - name: Set up Python ${{ matrix.python-version }} + - name: Set up Python 3.10 uses: actions/setup-python@v2 with: - python-version: ${{ matrix.python-version }} + python-version: 3.10 - name: Install Poetry uses: snok/install-poetry@v1 From 7013891da4c361d8a56532e10eabc120ae0d90b5 Mon Sep 17 00:00:00 2001 From: Ian Armstrong Date: Tue, 31 Oct 2023 21:08:07 -0400 Subject: [PATCH 14/14] python 3.10 as string --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9057276..761f383 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -41,7 +41,7 @@ jobs: - name: Set up Python 3.10 uses: actions/setup-python@v2 with: - python-version: 3.10 + python-version: "3.10" - name: Install Poetry uses: snok/install-poetry@v1