From 48ebb72476dba429678be5062d3be2abfdf52da2 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Mon, 9 May 2022 19:37:06 -0700 Subject: [PATCH 1/5] CI: Move MacOS build to Github Actions --- .../{windows.yml => macos-windows.yml} | 8 +-- azure-pipelines.yml | 5 -- ci/azure/posix.yml | 50 ------------------- 3 files changed, 5 insertions(+), 58 deletions(-) rename .github/workflows/{windows.yml => macos-windows.yml} (88%) delete mode 100644 ci/azure/posix.yml diff --git a/.github/workflows/windows.yml b/.github/workflows/macos-windows.yml similarity index 88% rename from .github/workflows/windows.yml rename to .github/workflows/macos-windows.yml index 6f267357554a3..dc30fbceae7e5 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/macos-windows.yml @@ -1,4 +1,4 @@ -name: Windows +name: Windows-MacOS on: push: @@ -21,18 +21,20 @@ env: jobs: pytest: - runs-on: windows-latest defaults: run: shell: bash -el {0} timeout-minutes: 90 strategy: matrix: + os: [macos-latest, windows-latest] env_file: [actions-38.yaml, actions-39.yaml, actions-310.yaml] fail-fast: false + runs-on: ${{ matrix.os }} + name: ${{ format('{0} {1}', matrix.os, matrix.env_file) }} concurrency: # https://github.community/t/concurrecy-not-work-for-push/183068/7 - group: ${{ github.event_name == 'push' && github.run_number || github.ref }}-${{ matrix.env_file }}-windows + group: ${{ github.event_name == 'push' && github.run_number || github.ref }}-${{ matrix.env_file }}-${{ matrix.os }} cancel-in-progress: true steps: diff --git a/azure-pipelines.yml b/azure-pipelines.yml index b2ae620019962..37df662df8edc 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -22,11 +22,6 @@ variables: PANDAS_CI: 1 jobs: -- template: ci/azure/posix.yml - parameters: - name: macOS - vmImage: macOS-10.15 - - job: py38_32bit pool: vmImage: ubuntu-18.04 diff --git a/ci/azure/posix.yml b/ci/azure/posix.yml deleted file mode 100644 index df1d5049be33d..0000000000000 --- a/ci/azure/posix.yml +++ /dev/null @@ -1,50 +0,0 @@ -parameters: - name: '' - vmImage: '' - -jobs: -- job: ${{ parameters.name }} - timeoutInMinutes: 90 - pool: - vmImage: ${{ parameters.vmImage }} - strategy: - matrix: - py38: - ENV_FILE: ci/deps/actions-38.yaml - CONDA_PY: "38" - - py39: - ENV_FILE: ci/deps/actions-39.yaml - CONDA_PY: "39" - - py310: - ENV_FILE: ci/deps/actions-310.yaml - CONDA_PY: "310" - - steps: - - script: echo '##vso[task.prependpath]$(HOME)/miniconda3/bin' - displayName: 'Set conda path' - - - script: rm /usr/local/miniconda/pkgs/cache/*.json - displayName: 'Workaround for mamba-org/mamba#488' - - - script: ci/setup_env.sh - displayName: 'Setup environment and build pandas' - - - script: | - conda run -n pandas-dev --no-capture-output ci/run_tests.sh - displayName: 'Test' - - - script: | - pushd /tmp - conda run -n pandas-dev python -c "import pandas; pandas.show_versions()" - popd - displayName: 'Build versions' - - - task: PublishTestResults@2 - condition: succeededOrFailed() - inputs: - failTaskOnFailedTests: true - testResultsFiles: 'test-data.xml' - testRunTitle: ${{ format('{0}-$(CONDA_PY)', parameters.name) }} - displayName: 'Publish test results' From 4378f5ed28f15166c252109045bf23d4e76a35bb Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Mon, 9 May 2022 20:26:30 -0700 Subject: [PATCH 2/5] Move pyarrow upgrade for macOS --- .github/workflows/macos-windows.yml | 7 +++++++ ci/setup_env.sh | 9 --------- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/.github/workflows/macos-windows.yml b/.github/workflows/macos-windows.yml index dc30fbceae7e5..aaa71aa60ef70 100644 --- a/.github/workflows/macos-windows.yml +++ b/.github/workflows/macos-windows.yml @@ -53,6 +53,13 @@ jobs: environment-file: ci/deps/${{ matrix.env_file }} use-only-tar-bz2: true + # ImportError: 2): Library not loaded: @rpath/libssl.1.1.dylib + # Referenced from: /Users/runner/miniconda3/envs/pandas-dev/lib/libthrift.0.13.0.dylib + # Reason: image not found + - name: Upgrade pyarrow on MacOS + run: conda install -n pandas-dev -c conda-forge --no-update-deps pyarrow=6 + if: ${{ matrix.os == 'macos-latest' }} + - name: Build Pandas uses: ./.github/actions/build_pandas diff --git a/ci/setup_env.sh b/ci/setup_env.sh index a85767eb6f1b4..483353cfcb3cd 100755 --- a/ci/setup_env.sh +++ b/ci/setup_env.sh @@ -73,15 +73,6 @@ mamba install -n pandas-dev 'setuptools<60' echo "conda list -n pandas-dev" conda list -n pandas-dev -# From pyarrow on MacOS -# ImportError: 2): Library not loaded: @rpath/libssl.1.1.dylib -# Referenced from: /Users/runner/miniconda3/envs/pandas-dev/lib/libthrift.0.13.0.dylib -# Reason: image not found -if [[ "$(uname)" == 'Darwin' ]]; then - echo "Update pyarrow for pyarrow on MacOS" - conda install -n pandas-dev -c conda-forge --no-update-deps pyarrow=6 -fi - if [[ "$BITS32" == "yes" ]]; then # activate 32-bit compiler export CONDA_BUILD=1 From 92ca2f8bb8ca00e3cb0d441957e540d92b841075 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Tue, 10 May 2022 19:04:41 -0700 Subject: [PATCH 3/5] Change strictness based on os --- .github/workflows/macos-windows.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos-windows.yml b/.github/workflows/macos-windows.yml index aaa71aa60ef70..a4c4e88fa9733 100644 --- a/.github/workflows/macos-windows.yml +++ b/.github/workflows/macos-windows.yml @@ -49,7 +49,7 @@ jobs: mamba-version: "*" channels: conda-forge activate-environment: pandas-dev - channel-priority: strict + channel-priority: ${{ matrix.os == 'macos-latest' && flexible || strict }} environment-file: ci/deps/${{ matrix.env_file }} use-only-tar-bz2: true From 299cad8e0810b1c6cb3d68f7991940defceada2e Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Tue, 10 May 2022 20:09:37 -0700 Subject: [PATCH 4/5] fix invalid workflow --- .github/workflows/macos-windows.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos-windows.yml b/.github/workflows/macos-windows.yml index a4c4e88fa9733..001f2cfe6d0cb 100644 --- a/.github/workflows/macos-windows.yml +++ b/.github/workflows/macos-windows.yml @@ -49,7 +49,7 @@ jobs: mamba-version: "*" channels: conda-forge activate-environment: pandas-dev - channel-priority: ${{ matrix.os == 'macos-latest' && flexible || strict }} + channel-priority: ${{ matrix.os == 'macos-latest' && "flexible" || "strict" }} environment-file: ci/deps/${{ matrix.env_file }} use-only-tar-bz2: true From 2b7f58d428cc0184648967c83fe978f1f8ae6ad4 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Tue, 10 May 2022 20:12:21 -0700 Subject: [PATCH 5/5] Single quote --- .github/workflows/macos-windows.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/macos-windows.yml b/.github/workflows/macos-windows.yml index 001f2cfe6d0cb..560a421ec74ec 100644 --- a/.github/workflows/macos-windows.yml +++ b/.github/workflows/macos-windows.yml @@ -49,7 +49,7 @@ jobs: mamba-version: "*" channels: conda-forge activate-environment: pandas-dev - channel-priority: ${{ matrix.os == 'macos-latest' && "flexible" || "strict" }} + channel-priority: ${{ matrix.os == 'macos-latest' && 'flexible' || 'strict' }} environment-file: ci/deps/${{ matrix.env_file }} use-only-tar-bz2: true