From 7317191c275fbf9752cd22349aeb2d493c33b85f Mon Sep 17 00:00:00 2001 From: Alexey Khudyakov Date: Mon, 1 Sep 2025 15:01:49 +0300 Subject: [PATCH 1/4] Bump of cabal in CI --- .github/workflows/ci.yml | 52 ++++++++++++++++++++-------------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c0b2672a..ac3b721a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -18,23 +18,23 @@ jobs: matrix: include: # Linux - - { cabal: "3.12", os: ubuntu-24.04, ghc: "8.0.2" } - - { cabal: "3.12", os: ubuntu-24.04, ghc: "8.2.2" } - - { cabal: "3.12", os: ubuntu-24.04, ghc: "8.4.4" } - - { cabal: "3.12", os: ubuntu-24.04, ghc: "8.6.5" } - - { cabal: "3.12", os: ubuntu-24.04, ghc: "8.8.4" } - - { cabal: "3.12", os: ubuntu-24.04, ghc: "8.10.7" } - - { cabal: "3.12", os: ubuntu-24.04, ghc: "9.0.2" } - - { cabal: "3.12", os: ubuntu-24.04, ghc: "9.2.8" } - - { cabal: "3.12", os: ubuntu-24.04, ghc: "9.4.8" } - - { cabal: "3.12", os: ubuntu-24.04, ghc: "9.6.7" } - - { cabal: "3.12", os: ubuntu-24.04, ghc: "9.6.7", + - { cabal: "3.14", os: ubuntu-24.04, ghc: "8.0.2" } + - { cabal: "3.14", os: ubuntu-24.04, ghc: "8.2.2" } + - { cabal: "3.14", os: ubuntu-24.04, ghc: "8.4.4" } + - { cabal: "3.14", os: ubuntu-24.04, ghc: "8.6.5" } + - { cabal: "3.14", os: ubuntu-24.04, ghc: "8.8.4" } + - { cabal: "3.14", os: ubuntu-24.04, ghc: "8.10.7" } + - { cabal: "3.14", os: ubuntu-24.04, ghc: "9.0.2" } + - { cabal: "3.14", os: ubuntu-24.04, ghc: "9.2.8" } + - { cabal: "3.14", os: ubuntu-24.04, ghc: "9.4.8" } + - { cabal: "3.14", os: ubuntu-24.04, ghc: "9.6.7" } + - { cabal: "3.14", os: ubuntu-24.04, ghc: "9.6.7", flags: "-fUnsafeChecks -fInternalChecks" } - - { cabal: "3.12", os: ubuntu-24.04, ghc: "9.8" } - - { cabal: "3.12", os: ubuntu-24.04, ghc: "9.10" } - - { cabal: "3.12", os: ubuntu-24.04, ghc: "9.12" } + - { cabal: "3.14", os: ubuntu-24.04, ghc: "9.8.4" } + - { cabal: "3.14", os: ubuntu-24.04, ghc: "9.10.2" } + - { cabal: "3.14", os: ubuntu-24.04, ghc: "9.12.2" } # Win - - { cabal: "3.12", os: windows-latest, ghc: "8.4.4" } + - { cabal: "3.14", os: windows-latest, ghc: "8.4.4" } # OOM when building tests # - { cabal: "3.6", os: windows-latest, ghc: "8.6.5" } # - { cabal: "3.6", os: windows-latest, ghc: "8.8.4" } @@ -42,17 +42,17 @@ jobs: # Too flaky: # - { cabal: "3.6", os: windows-latest, ghc: "9.0.1" } # MacOS - - { cabal: "3.12", os: macOS-13, ghc: "8.4.4" } - - { cabal: "3.12", os: macOS-13, ghc: "8.6.5" } - - { cabal: "3.12", os: macOS-13, ghc: "8.8.4" } - - { cabal: "3.12", os: macOS-13, ghc: "8.10.7" } - - { cabal: "3.12", os: macOS-13, ghc: "9.0.2" } - - { cabal: "3.12", os: macOS-latest, ghc: "9.2.8" } - - { cabal: "3.12", os: macOS-latest, ghc: "9.4.8" } - - { cabal: "3.12", os: macOS-latest, ghc: "9.6.7" } - - { cabal: "3.12", os: macOS-latest, ghc: "9.8" } - - { cabal: "3.12", os: macOS-latest, ghc: "9.10" } - - { cabal: "3.12", os: macOS-latest, ghc: "9.12" } + - { cabal: "3.14", os: macOS-13, ghc: "8.4.4" } + - { cabal: "3.14", os: macOS-13, ghc: "8.6.5" } + - { cabal: "3.14", os: macOS-13, ghc: "8.8.4" } + - { cabal: "3.14", os: macOS-13, ghc: "8.10.7" } + - { cabal: "3.14", os: macOS-13, ghc: "9.0.2" } + - { cabal: "3.14", os: macOS-latest, ghc: "9.2.8" } + - { cabal: "3.14", os: macOS-latest, ghc: "9.4.8" } + - { cabal: "3.14", os: macOS-latest, ghc: "9.6.7" } + - { cabal: "3.14", os: macOS-latest, ghc: "9.8.4" } + - { cabal: "3.14", os: macOS-latest, ghc: "9.10.2" } + - { cabal: "3.14", os: macOS-latest, ghc: "9.12.2" } fail-fast: false steps: From f1f4c29a537bda4d7d1717bb7a2008ccc65536cf Mon Sep 17 00:00:00 2001 From: Alexey Khudyakov Date: Mon, 1 Sep 2025 15:26:30 +0300 Subject: [PATCH 2/4] Drop 8.6 & 8.8 from CI matrix Build fail with some linker errors --- .github/workflows/ci.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ac3b721a..36f7ae14 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -43,8 +43,11 @@ jobs: # - { cabal: "3.6", os: windows-latest, ghc: "9.0.1" } # MacOS - { cabal: "3.14", os: macOS-13, ghc: "8.4.4" } - - { cabal: "3.14", os: macOS-13, ghc: "8.6.5" } - - { cabal: "3.14", os: macOS-13, ghc: "8.8.4" } + # Fails with linker errors + # > ld: warning: -single_module is obsolete + # > : can't load framework: Security (not found) + # - { cabal: "3.14", os: macOS-13, ghc: "8.6.5" } + # - { cabal: "3.14", os: macOS-13, ghc: "8.8.4" } - { cabal: "3.14", os: macOS-13, ghc: "8.10.7" } - { cabal: "3.14", os: macOS-13, ghc: "9.0.2" } - { cabal: "3.14", os: macOS-latest, ghc: "9.2.8" } From 5287bb5b212de9b32cccf16ffebd8c73945050d5 Mon Sep 17 00:00:00 2001 From: Alexey Khudyakov Date: Mon, 1 Sep 2025 15:27:32 +0300 Subject: [PATCH 3/4] Add latest GHC versions to windows build --- .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 36f7ae14..ef3d1d45 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -35,10 +35,10 @@ jobs: - { cabal: "3.14", os: ubuntu-24.04, ghc: "9.12.2" } # Win - { cabal: "3.14", os: windows-latest, ghc: "8.4.4" } - # OOM when building tests - # - { cabal: "3.6", os: windows-latest, ghc: "8.6.5" } - # - { cabal: "3.6", os: windows-latest, ghc: "8.8.4" } - # - { cabal: "3.6", os: windows-latest, ghc: "8.10.4" } + - { cabal: "3.14", os: windows-latest, ghc: "9.6.7" } + - { cabal: "3.14", os: windows-latest, ghc: "9.8.4" } + - { cabal: "3.14", os: windows-latest, ghc: "9.10.2" } + - { cabal: "3.14", os: windows-latest, ghc: "9.12.2" } # Too flaky: # - { cabal: "3.6", os: windows-latest, ghc: "9.0.1" } # MacOS From c4caeb0b9f5f39ef0c9d1065814943b0299801c0 Mon Sep 17 00:00:00 2001 From: Alexey Khudyakov Date: Mon, 1 Sep 2025 16:51:48 +0300 Subject: [PATCH 4/4] Build vector in directory unpacked This is to check that source distribution is in fact buildable Fixes #525 --- .github/workflows/ci.yml | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ef3d1d45..4f82dabd 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -90,28 +90,39 @@ jobs: - name: Make sdist run: | mkdir sdist - cabal sdist vector -o sdist + cabal sdist vector -o sdist + cabal sdist vector-stream -o sdist + cabal sdist vector-bench-papi -o sdist - name: Unpack run: | mkdir unpacked - tar -C unpacked -xzf sdist/vector*tar.gz - cd unpacked + for NM in sdist/vector*tar.gz; do + tar -C unpacked -xzf $NM + done + echo "packages:" >> unpacked/cabal.project + echo " vector-*/*.cabal" >> unpacked/cabal.project # ---------------- - name: cabal check run: | - (cd vector-stream && cabal -vnormal check) - (cd vector && cabal -vnormal check) - # ---------------- + for nm in vector-*; do + echo Checking $nm + (cd "$nm" && cabal -vnormal check) + done + working-directory: unpacked/ + # ---------------- - name: Build run: | echo FLAG_PAPI=$FLAG_PAPI cabal configure ${{ matrix.flags }} $FLAG_PAPI --haddock-all --enable-tests --enable-benchmarks --benchmark-option=-l cabal build all --write-ghc-environment-files=always + working-directory: unpacked/ # ---------------- - name: Test run: | cabal test all + working-directory: unpacked/ # ---------------- - name: Bench run: | cabal bench all + working-directory: unpacked/