From a5ea8b0df8d72e49509e1fcddc7ec322976689e7 Mon Sep 17 00:00:00 2001 From: Alexey Khudyakov Date: Mon, 16 Sep 2024 15:42:24 +0300 Subject: [PATCH 1/2] Enable CPP per module in tests This is workaround for problem of benchmarking build time. When package is compiled with GHC flags `-ddump-timings -ddump-to-file` *.dump-timings files corresponding to modules with enabled CPP gets overwritten at link time. Timing for Utilities still get lost but its contribution is small anyway and we're able to keep timings for other modules Note that libraries are not affected by this problem. --- vector/tests/Utilities.hs | 1 + vector/vector.cabal | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/vector/tests/Utilities.hs b/vector/tests/Utilities.hs index abba2f6e..5aa9e8b0 100644 --- a/vector/tests/Utilities.hs +++ b/vector/tests/Utilities.hs @@ -1,3 +1,4 @@ +{-# LANGUAGE CPP #-} {-# LANGUAGE DefaultSignatures #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE GADTs #-} diff --git a/vector/vector.cabal b/vector/vector.cabal index 1ba9b306..ee8f1071 100644 --- a/vector/vector.cabal +++ b/vector/vector.cabal @@ -208,7 +208,7 @@ common tests-common Tests.Vector.UnitTests Utilities - default-extensions: CPP, + default-extensions: ScopedTypeVariables, PatternGuards, MultiParamTypeClasses, From 76a24687c3ed97b9c793029f3c01f61632597ae0 Mon Sep 17 00:00:00 2001 From: Alexey Khudyakov Date: Thu, 10 Oct 2024 19:58:46 +0300 Subject: [PATCH 2/2] Unbreak CI github actions upgraded to Ubuntu 24.04 and all uses of PAPI and GHC 8.0, 8.2 immediately broke. Easiest way is to roll back to 22.04 --- .github/workflows/ci.yml | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2ab30b7a..5f8419ee 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -18,19 +18,19 @@ jobs: matrix: include: # Linux - - { cabal: "3.10", os: ubuntu-latest, ghc: "8.0.2" } - - { cabal: "3.10", os: ubuntu-latest, ghc: "8.2.2" } - - { cabal: "3.10", os: ubuntu-latest, ghc: "8.4.4" } - - { cabal: "3.10", os: ubuntu-latest, ghc: "8.6.5" } - - { cabal: "3.10", os: ubuntu-latest, ghc: "8.8.4" } - - { cabal: "3.10", os: ubuntu-latest, ghc: "8.10.7" } - - { cabal: "3.10", os: ubuntu-latest, ghc: "9.0.2" } - - { cabal: "3.10", os: ubuntu-latest, ghc: "9.2.8" } - - { cabal: "3.10", os: ubuntu-latest, ghc: "9.4.8" } - - { cabal: "3.10", os: ubuntu-latest, ghc: "9.6.5" } - - { cabal: "3.10", os: ubuntu-latest, ghc: "9.6.5", + - { cabal: "3.10", os: ubuntu-22.04, ghc: "8.0.2" } + - { cabal: "3.10", os: ubuntu-22.04, ghc: "8.2.2" } + - { cabal: "3.10", os: ubuntu-22.04, ghc: "8.4.4" } + - { cabal: "3.10", os: ubuntu-22.04, ghc: "8.6.5" } + - { cabal: "3.10", os: ubuntu-22.04, ghc: "8.8.4" } + - { cabal: "3.10", os: ubuntu-22.04, ghc: "8.10.7" } + - { cabal: "3.10", os: ubuntu-22.04, ghc: "9.0.2" } + - { cabal: "3.10", os: ubuntu-22.04, ghc: "9.2.8" } + - { cabal: "3.10", os: ubuntu-22.04, ghc: "9.4.8" } + - { cabal: "3.10", os: ubuntu-22.04, ghc: "9.6.5" } + - { cabal: "3.10", os: ubuntu-22.04, ghc: "9.6.5", flags: "-fUnsafeChecks -fInternalChecks" } - - { cabal: "3.10", os: ubuntu-latest, ghc: "9.8.2" } + - { cabal: "3.10", os: ubuntu-22.04, ghc: "9.8.2" } # Win - { cabal: "3.10", os: windows-latest, ghc: "8.4.4" } # OOM when building tests @@ -73,7 +73,7 @@ jobs: run: | sudo apt-get install -y libpapi-dev echo FLAG_PAPI=-fBenchPAPI >> "$GITHUB_ENV" - if: matrix.os == 'ubuntu-latest' + if: matrix.os == 'ubuntu-22.04' # ---------------- - name: Versions run: |