diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1acb224f..37a74ff3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -18,35 +18,38 @@ jobs: matrix: include: # Linux - - { 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", + - { cabal: "3.16", os: ubuntu-24.04, ghc: "8.8.4" } + - { cabal: "3.16", os: ubuntu-24.04, ghc: "8.10.7" } + - { cabal: "3.16", os: ubuntu-24.04, ghc: "9.0.2" } + - { cabal: "3.16", os: ubuntu-24.04, ghc: "9.2.8" } + - { cabal: "3.16", os: ubuntu-24.04, ghc: "9.4.8" } + - { cabal: "3.16", os: ubuntu-24.04, ghc: "9.6.7" } + - { cabal: "3.16", os: ubuntu-24.04, ghc: "9.6.7", flags: "-fUnsafeChecks -fInternalChecks" } - - { 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" } + - { cabal: "3.16", os: ubuntu-24.04, ghc: "9.8.4" } + - { cabal: "3.16", os: ubuntu-24.04, ghc: "9.10.2" } + - { cabal: "3.16", os: ubuntu-24.04, ghc: "9.12.2" } + - { cabal: "3.16", os: ubuntu-24.04, ghc: "9.14.1" } # Win - - { 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" } + - { cabal: "3.16", os: windows-latest, ghc: "9.6.7" } + - { cabal: "3.16", os: windows-latest, ghc: "9.8.4" } + - { cabal: "3.16", os: windows-latest, ghc: "9.10.2" } + - { cabal: "3.16", os: windows-latest, ghc: "9.12.2" } + - { cabal: "3.16", os: windows-latest, ghc: "9.14.1" } # MacOS # # Fails with: # > : can't load framework: Security (not found) - # - { cabal: "3.14", os: macOS-15-intel, ghc: "8.8.4" } - - { cabal: "3.14", os: macOS-15-intel, ghc: "8.10.7" } - - { cabal: "3.14", os: macOS-15-intel, 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" } + # - { cabal: "3.16", os: macOS-15-intel, ghc: "8.8.4" } + - { cabal: "3.16", os: macOS-15-intel, ghc: "8.10.7" } + - { cabal: "3.16", os: macOS-15-intel, ghc: "9.0.2" } + - { cabal: "3.16", os: macOS-latest, ghc: "9.2.8" } + - { cabal: "3.16", os: macOS-latest, ghc: "9.4.8" } + - { cabal: "3.16", os: macOS-latest, ghc: "9.6.7" } + - { cabal: "3.16", os: macOS-latest, ghc: "9.8.4" } + - { cabal: "3.16", os: macOS-latest, ghc: "9.10.2" } + - { cabal: "3.16", os: macOS-latest, ghc: "9.12.2" } + - { cabal: "3.16", os: macOS-latest, ghc: "9.14.1" } fail-fast: false steps: diff --git a/vector/tests-inspect/Inspect/DerivingVia.hs b/vector/tests-inspect/Inspect/DerivingVia.hs index 5cc0ef48..ffad28f9 100644 --- a/vector/tests-inspect/Inspect/DerivingVia.hs +++ b/vector/tests-inspect/Inspect/DerivingVia.hs @@ -19,6 +19,7 @@ import qualified Data.Vector.Generic.Mutable as VGM import qualified Data.Vector.Unboxed as VU import GHC.Generics (Generic) +import Test.InspectExtra import Inspect.DerivingVia.OtherFoo @@ -64,12 +65,12 @@ pipeline_OtherFoo n -- and even mentions of Foo data type. tests :: TestTree tests = testGroup "iso-deriving" - [ $(inspectObligations [(`doesNotUse` 'Foo), hasNoGenerics, hasNoTypeClasses] + [ $(inspectObligations [(`doesNotUse` 'Foo), hasNoGenerics, hasNoTypeClasses'] 'map_Foo) - , $(inspectObligations [(`doesNotUse` 'OtherFoo), hasNoGenerics, hasNoTypeClasses] + , $(inspectObligations [(`doesNotUse` 'OtherFoo), hasNoGenerics, hasNoTypeClasses'] 'pipeline_Foo) - , $(inspectObligations [(`doesNotUse` 'OtherFoo), hasNoGenerics, hasNoTypeClasses] + , $(inspectObligations [(`doesNotUse` 'OtherFoo), hasNoGenerics, hasNoTypeClasses'] 'map_OtherFoo) - , $(inspectObligations [(`doesNotUse` 'OtherFoo), hasNoGenerics, hasNoTypeClasses] + , $(inspectObligations [(`doesNotUse` 'OtherFoo), hasNoGenerics, hasNoTypeClasses'] 'pipeline_OtherFoo) ] diff --git a/vector/tests-inspect/Test/InspectExtra.hs b/vector/tests-inspect/Test/InspectExtra.hs index ce73e9a1..deb4f69c 100644 --- a/vector/tests-inspect/Test/InspectExtra.hs +++ b/vector/tests-inspect/Test/InspectExtra.hs @@ -5,11 +5,13 @@ module Test.InspectExtra ( noStream , inspectFusion , inspectClassyFusion + , hasNoTypeClasses' , module Test.Tasty.Inspection ) where import Language.Haskell.TH (Name,Q,Exp) import Test.Tasty.Inspection +import GHC.Base (IP) import qualified Data.Stream.Monadic as S @@ -19,8 +21,11 @@ noStream = (`doesNotUseAnyOf` ['S.Yield, 'S.Skip, 'S.Done]) inspectFusion :: Name -> Q Exp inspectFusion = inspectObligations [ noStream - , hasNoTypeClasses + , hasNoTypeClasses' ] inspectClassyFusion :: Name -> Q Exp inspectClassyFusion = inspectObligations [ noStream ] + +hasNoTypeClasses' :: Name -> Obligation +hasNoTypeClasses' e = hasNoTypeClassesExcept e [''IP] diff --git a/vector/vector.cabal b/vector/vector.cabal index cd9e3956..a2031ad9 100644 --- a/vector/vector.cabal +++ b/vector/vector.cabal @@ -52,6 +52,7 @@ Tested-With: GHC == 9.8.4 GHC == 9.10.2 GHC == 9.12.2 + GHC == 9.14.1 Extra-doc-files: changelog.md