From e00e72ba76849a40a6970bfa22dcc2a9fbc08d6a Mon Sep 17 00:00:00 2001 From: Tristan Cacqueray Date: Wed, 28 May 2025 05:45:12 +0000 Subject: [PATCH] Try the upcomming new servant --- cabal-override.project | 5 +++-- nix/default.nix | 29 +++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/cabal-override.project b/cabal-override.project index c611607ab..fcdaec89e 100644 --- a/cabal-override.project +++ b/cabal-override.project @@ -134,6 +134,7 @@ constraints: any.Diff ==0.4.1, any.formatting ==7.2.0, any.free ==5.2, any.generically ==0.1.1, + any.generics-sop ==0.5.1.4, any.gerrit ==0.1.6.1, any.ghc ==9.10.1, any.ghc-bignum ==1.3, @@ -271,7 +272,7 @@ constraints: any.Diff ==0.4.1, any.semigroups ==0.20, any.semver ==0.4.0.1, any.serialise ==0.2.6.1, - any.servant ==0.20.2, + any.servant ==0.20.3.0, any.servant-auth ==0.4.2.0, any.servant-auth-server ==0.4.9.0, any.servant-blaze ==0.9.1, @@ -360,7 +361,7 @@ constraints: any.Diff ==0.4.1, any.yaml ==0.11.11.2, any.zigzag ==0.0.1.0, any.zlib ==0.6.3.0 -index-state: hackage.haskell.org 2025-01-06T16:40:37Z +index-state: hackage.haskell.org 2025-05-26T13:28:18Z package proto3-suite flags: -swagger -large-records diff --git a/nix/default.nix b/nix/default.nix index 1f751ae0f..5b0db20ef 100644 --- a/nix/default.nix +++ b/nix/default.nix @@ -41,6 +41,19 @@ let in (hpPrev.callCabal2nix "morpheus-graphql-${name}" "${src}/morpheus-graphql-${name}" { }); + # Try latest servant + mk-servant-lib = hpPrev: name: + let + # Use direct source because nixpkgs somehow can't fetch + servant-src = pkgs.fetchFromGitHub { + owner = "haskell-servant"; + repo = "servant"; + rev = "e07e92abd62641fc0f199a33e5131de273140cb0"; + sha256 = "sha256-zWlU6/7MU0J/amOSZHEgVltMN9K4luNK1JV6irM9ozM="; + }; + in (hpPrev.callCabal2nix "sevant${name}" "${servant-src}/servant${name}" + { }); + # Add monocle and patch broken dependency to the haskell package set haskellExtend = hpFinal: hpPrev: { monocle = hpPrev.callCabal2nix "monocle" src { }; @@ -53,6 +66,22 @@ let morpheus-graphql-code-gen-utils = mk-morpheus-lib hpPrev "code-gen-utils"; morpheus-graphql-subscriptions = mk-morpheus-lib hpPrev "subscriptions"; + servant = mk-servant-lib hpPrev ""; + servant-auth = mk-servant-lib hpPrev "-auth/servant-auth"; + servant-auth-server = mk-servant-lib hpPrev "-auth/servant-auth-server"; + servant-foreign = mk-servant-lib hpPrev "-foreign"; + servant-server = mk-servant-lib hpPrev "-server"; + # generics-sop need latest head + generics-sop = let + src = pkgs.fetchFromGitHub { + owner = "well-typed"; + repo = "generics-sop"; + rev = "00e8d04b1ce08471f3516c50e0823d46e4156f20"; + sha256 = "sha256-PR2MUPcGQI08jzcv0zKZPvVmWq35Xgn/k4D6I7o858M="; + }; + in pkgs.haskell.lib.dontCheck + (hpPrev.callCabal2nix "generics-sop" "${src}/generics-sop" { }); + # there is a test failure: resolveGroupController should resolve a direct mount root cgroup-rts-threads = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.overrideCabal hpPrev.cgroup-rts-threads {