Skip to content

Commit

Permalink
ci: add ghc 9.6
Browse files Browse the repository at this point in the history
  • Loading branch information
ali-abrar committed May 24, 2023
1 parent 19b5889 commit 99eed59
Show file tree
Hide file tree
Showing 4 changed files with 72 additions and 15 deletions.
9 changes: 6 additions & 3 deletions .github/workflows/haskell.yml
Expand Up @@ -6,16 +6,17 @@ jobs:
build:
strategy:
matrix:
ghc: ['8.4.4', '8.6.5', '8.8.4', '8.10.7', '9.0.1', '9.2.5', '9.4.3']
ghc: ['8.4.4', '8.6.5', '8.8.4', '8.10.7', '9.0.1', '9.2.5', '9.4.5', '9.6.1']
os: ['ubuntu-latest', 'macos-latest']
runs-on: ${{ matrix.os }}

name: GHC ${{ matrix.ghc }} on ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- uses: haskell/actions/setup@v2
with:
ghc-version: ${{ matrix.ghc }}
cabal-version: '3.10.1.0'
- name: Cache
uses: actions/cache@v3
env:
Expand All @@ -35,5 +36,7 @@ jobs:
run: cabal build --enable-tests --enable-benchmarks all
- name: Run tests
run: cabal test --enable-tests all
- name: Build Docs
- if: matrix.ghc != '8.4.4'
# docs aren't built on ghc 8.4.4 because some dependency docs don't build on older GHCs
name: Build Docs
run: cabal haddock
4 changes: 2 additions & 2 deletions nixpkgs/github.json
Expand Up @@ -3,6 +3,6 @@
"repo": "nixpkgs",
"branch": "nixpkgs-unstable",
"private": false,
"rev": "e37ef84b478fa8da0ced96522adfd956fde9047a",
"sha256": "03qak39mn2142gp6zglrzrkdbig6h4r3da1psmvf3q2dwcw3zsfv"
"rev": "c7eb65213bd7d95eafb8c5e2e181f04da103d054",
"sha256": "1glf6j13hbwi459qrc8kkkhfw27a08vdg17sr3zwhadg4bkxz5ia"
}
17 changes: 9 additions & 8 deletions reflex.cabal
Expand Up @@ -28,7 +28,7 @@ extra-source-files:
ChangeLog.md

tested-with:
GHC ==8.4.4 || ==8.6.5 || ==8.8.1 || ==8.10.7 || ==9.0.1 || ==9.2.5 || ==9.4.3,
GHC ==8.4.4 || ==8.6.5 || ==8.8.1 || ==8.10.7 || ==9.0.1 || ==9.2.5 || ==9.4.5 || ==9.6.1,
GHCJS ==8.6 || ==8.10

flag use-reflex-optimizer
Expand Down Expand Up @@ -71,7 +71,7 @@ library
hs-source-dirs: src
build-depends:
MemoTrie == 0.6.*,
base >= 4.11 && < 4.18,
base >= 4.11 && < 4.19,
bifunctors >= 5.2 && < 5.6,
comonad >= 5.0.4 && < 5.1,
commutative-semigroups >= 0.1 && <0.2,
Expand All @@ -80,29 +80,28 @@ library
containers >= 0.6 && < 0.7,
data-default >= 0.5 && < 0.8,
dependent-map >= 0.3 && < 0.5,
exception-transformers == 0.4.*,
lens >= 4.7 && < 5.3,
mmorph >= 1.0 && < 1.2,
mmorph >= 1.0 && < 1.3,
monad-control >= 1.0.1 && < 1.1,
mtl >= 2.1 && < 2.3,
mtl >= 2.1 && < 2.4,
patch >= 0.0.7 && < 0.1,
prim-uniq >= 0.1.0.1 && < 0.3,
primitive >= 0.5 && < 0.8,
profunctors >= 5.3 && < 5.7,
random >= 1.1 && < 1.3,
ref-tf >= 0.4 && < 0.6,
reflection == 2.1.*,
semigroupoids >= 4.0 && < 6,
semigroupoids >= 4.0 && < 7,
stm >= 2.4 && < 2.6,
syb >= 0.5 && < 0.8,
time >= 1.4 && < 1.13,
transformers >= 0.5.6.0 && < 0.6,
transformers >= 0.6 && < 0.7,
unbounded-delays >= 0.1.0.0 && < 0.2,
witherable >= 0.4 && < 0.5

if flag(split-these)
build-depends: these >= 1 && <1.3,
semialign >=1 && <1.3,
semialign >=1 && <1.4,
monoidal-containers >= 0.6.2.0 && < 0.7
else
build-depends: these >= 0.4 && <0.9,
Expand Down Expand Up @@ -260,6 +259,8 @@ test-suite hlint
, directory
, filepath
, filemanip
if impl(ghc >= 9.6)
buildable: False
if impl(ghc < 9.2)
build-depends: hlint (< 2.1 || >= 2.2.2) && < 3.5
else
Expand Down
57 changes: 55 additions & 2 deletions release.nix
Expand Up @@ -5,7 +5,6 @@
let
native-reflex-platform = reflex-platform-fun { __useNewerCompiler = true; };
inherit (native-reflex-platform.nixpkgs) lib;

perPlatform = lib.genAttrs supportedSystems (system: let
reflex-platform = reflex-platform-fun { inherit system; __useNewerCompiler = true; };
compilers = [
Expand All @@ -21,6 +20,60 @@ let
"-dontUseTemplateHaskell"
""
];
nixpkgsGhcs =
let
pkgs = import ./nixpkgs { inherit system; };
nixGhc945 = pkgs.haskell.packages.ghc945.override {
};
nixGhc961 = pkgs.haskell.packages.ghc961.override {
overrides = self: super: {
exception-transformers = pkgs.haskell.lib.doJailbreak super.exception-transformers;
these-lens = self.callHackageDirect {
pkg = "these-lens";
ver = "1.0.1.3";
sha256 = "0n1vkr57jz5yvy4jm15v5cs42rp342ni0gisib7aqyhibpicqs5c";
} {};
these = self.callHackageDirect {
pkg = "these";
ver = "1.2";
sha256 = "1iaaq1fsvg8c3l0czcicshkmbbr00hnwkdamjbkljsa1qvlilaf0";
} {};
lens = self.callHackageDirect {
pkg = "lens";
ver = "5.2.2";
sha256 = "0c4a421sxfjm1cj3nvgwkr4glll23mqnsvs2iv5qh85931h2f3cy";
} {};

assoc = self.callHackageDirect {
pkg = "assoc";
ver = "1.1";
sha256 = "1krvcafrbj98z5hv55gq4zb1in5yd71nmz9zdiqgnywjzbrvpf75";
} {};

strict = self.callHackageDirect {
pkg = "strict";
ver = "0.5";
sha256 = "02iyvrr7nd7fnivz78lzdchy8zw1cghqj1qx2yzbbb9869h1mny7";
} {};

hlint = self.callHackageDirect {
pkg = "hlint";
ver = "3.5";
sha256 = "1np43k54918v54saqqgnd82ccd6225njwxpg2031asi70jam80x9";
} {};

patch = self.callHackageDirect {
pkg = "patch";
ver = "0.0.8.2";
sha256 = "160zqqhjg48fr3a33gffd82qm3728c8hwf8sn37pbpv82fw71rzg";
} {};
};
};
in
{
ghc945 = nixGhc945.callCabal2nix "reflex" (import ./src.nix) {};
ghc961 = nixGhc961.callCabal2nix "reflex" (import ./src.nix) {};
};
compilerPkgs = lib.genAttrs compilers (ghc: let
variationPkgs = lib.genAttrs variations (variation: let
reflex-platform = reflex-platform-fun {
Expand All @@ -40,7 +93,7 @@ let
cache = reflex-platform.pinBuildInputs "reflex-${system}-${ghc}"
(builtins.attrValues variationPkgs);
});
in compilerPkgs // {
in compilerPkgs // nixpkgsGhcs // {
cache = reflex-platform.pinBuildInputs "reflex-${system}"
(map (a: a.cache) (builtins.attrValues compilerPkgs));
});
Expand Down

0 comments on commit 99eed59

Please sign in to comment.