about summary refs log tree commit diff
path: root/third_party/nixpkgs-exposed/haskell_overlay
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/nixpkgs-exposed/haskell_overlay')
-rw-r--r--third_party/nixpkgs-exposed/haskell_overlay/default.nix112
-rw-r--r--third_party/nixpkgs-exposed/haskell_overlay/patches/generic-arbitrary-export-garbitrary.patch12
-rw-r--r--third_party/nixpkgs-exposed/haskell_overlay/patches/hgeometry-fix-haddock.patch13
-rw-r--r--third_party/nixpkgs-exposed/haskell_overlay/patches/update-comonad-extras.patch154
4 files changed, 291 insertions, 0 deletions
diff --git a/third_party/nixpkgs-exposed/haskell_overlay/default.nix b/third_party/nixpkgs-exposed/haskell_overlay/default.nix
new file mode 100644
index 000000000000..600d26541ec2
--- /dev/null
+++ b/third_party/nixpkgs-exposed/haskell_overlay/default.nix
@@ -0,0 +1,112 @@
+{ pkgs }:
+
+self: super: with pkgs.haskell.lib; rec {
+  aeson = doJailbreak super.aeson;
+
+  attoparsec = doJailbreak super.attoparsec;
+
+  cassava = doJailbreak super.cassava;
+
+  fgl = overrideSrc (doJailbreak super.fgl) rec {
+    src = pkgs.fetchzip {
+      url = "mirror://hackage/fgl-${version}/fgl-${version}.tar.gz";
+      sha256 = "0spyd56b2rmwp8n6h167rfjwy8lpcvar1p2rqhw9q580h2l9v61l";
+    };
+    version = "5.7.0.3";
+  };
+
+  fgl-arbitrary = overrideSrc super.fgl-arbitrary rec {
+    src = pkgs.fetchzip {
+      url = "mirror://hackage/fgl-arbitrary-${version}/fgl-arbitrary-${version}.tar.gz";
+      sha256 = "0bacdv51am13x5k64xvmxcs5gkdkh0gpmnh05wgd2vqg1n8r7fwb";
+    };
+    version = "0.2.0.6";
+  };
+
+  generic-arbitrary = appendPatch
+    super.generic-arbitrary
+    [ ./patches/generic-arbitrary-export-garbitrary.patch ];
+
+  hgeometry =
+    appendPatch
+      (self.callHackageDirect {
+        pkg = "hgeometry";
+        ver = "0.9.0.0";
+        sha256 = "02hyvbqm57lr47w90vdgl71cfbd6lvwpqdid9fcnmxkdjbq4kv6b";
+      } {}) [ ./patches/hgeometry-fix-haddock.patch ];
+
+  hgeometry-combinatorial =
+    self.callHackageDirect {
+      pkg = "hgeometry-combinatorial";
+      ver = "0.9.0.0";
+      sha256 = "12k41wd9fd1y3jd5djwcpwg2s1cva87wh14i0m1yn49zax9wl740";
+    } {};
+
+  psqueues = doJailbreak super.psqueues;
+
+  random = dontCheck (self.callHackageDirect {
+    pkg = "random";
+    ver = "1.2.0";
+    sha256 = "06s3mmqbsfwv09j2s45qnd66nrxfp9280gnl9ng8yh128pfr7bjh";
+  } {});
+
+  # random <1.2
+  test-framework = doJailbreak super.test-framework;
+  hashable = doJailbreak super.hashable;
+
+  random-source = overrideSrc super.random-source rec {
+    src = pkgs.fetchzip {
+      url = "mirror://hackage/random-source-${version}/random-source-${version}.tar.gz";
+      sha256 = "0yx0i4fv1xg535zd2isczfngsq5740wzl6w44168lxdmpw9fmsyz";
+    };
+    # downgraded as the latest version was causing a ghc crash:
+    # https://gitlab.haskell.org/ghc/ghc/-/issues/18537
+    version = "0.3.0.8";
+  };
+
+  semialign = self.callHackageDirect {
+    pkg = "semialign";
+    ver = "1.1.0.1";
+    sha256 = "1xs5dvz87gx6xnannw6bc70nzr8ffhk0j6n7n0p5dqair9sz77x4";
+  } {};
+
+  splitmix = dontCheck (self.callHackageDirect {
+    pkg = "splitmix";
+    ver = "0.1";
+    sha256 = "1k7l07h2w4fhjdqiqvw48if0irx0ngv6niach265j7lbfxsm8qql";
+  } {});
+
+  hedgehog = doJailbreak super.hedgehog;
+
+  hspec-core = dontCheck super.hspec-core;
+
+  QuickCheck = overrideSrc super.QuickCheck rec {
+    src = pkgs.fetchzip {
+      url = "mirror://hackage/QuickCheck-${version}/QuickCheck-${version}.tar.gz";
+      sha256 = "0x9pnr9m81jlywj38w3530zw1g0xmfszmj9303m2fp58zpad96h0";
+    };
+    version = "2.14.1";
+  };
+
+  test-framework-quickcheck2 = doJailbreak super.test-framework-quickcheck2;
+
+  vector = overrideSrc (doJailbreak super.vector) rec {
+    src = pkgs.fetchzip {
+      url = "mirror://hackage/vector-${version}/vector-${version}.tar.gz";
+      sha256 = "1312lpb1f4jzbmcjp7mdf9l9ykp1hscxdr66cl8zlcs8kbr13bm7";
+    };
+    version = "0.12.1.2";
+  };
+
+  vinyl = overrideSrc (markUnbroken super.vinyl)
+    rec {
+      src = pkgs.fetchzip {
+        url = "mirror://hackage/vinyl-${version}/vinyl-${version}.tar.gz";
+        sha256 = "190ffrmm76fh8fi9afkcda2vldf89y7dxj10434h28mbpq55kgsx";
+      };
+      version = "0.12.0";
+    };
+
+  comonad-extras = appendPatch (markUnbroken super.comonad-extras)
+    [ ./patches/update-comonad-extras.patch ];
+}
diff --git a/third_party/nixpkgs-exposed/haskell_overlay/patches/generic-arbitrary-export-garbitrary.patch b/third_party/nixpkgs-exposed/haskell_overlay/patches/generic-arbitrary-export-garbitrary.patch
new file mode 100644
index 000000000000..f0c936bfca18
--- /dev/null
+++ b/third_party/nixpkgs-exposed/haskell_overlay/patches/generic-arbitrary-export-garbitrary.patch
@@ -0,0 +1,12 @@
+diff --git a/src/Test/QuickCheck/Arbitrary/Generic.hs b/src/Test/QuickCheck/Arbitrary/Generic.hs
+index fed6ab3..91f59f1 100644
+--- a/src/Test/QuickCheck/Arbitrary/Generic.hs
++++ b/src/Test/QuickCheck/Arbitrary/Generic.hs
+@@ -23,6 +23,7 @@ The generated 'arbitrary' method is equivalent to
+ 
+ module Test.QuickCheck.Arbitrary.Generic
+   ( Arbitrary(..)
++  , GArbitrary
+   , genericArbitrary
+   , genericShrink
+   ) where
diff --git a/third_party/nixpkgs-exposed/haskell_overlay/patches/hgeometry-fix-haddock.patch b/third_party/nixpkgs-exposed/haskell_overlay/patches/hgeometry-fix-haddock.patch
new file mode 100644
index 000000000000..748c65b3e0db
--- /dev/null
+++ b/third_party/nixpkgs-exposed/haskell_overlay/patches/hgeometry-fix-haddock.patch
@@ -0,0 +1,13 @@
+diff --git a/src/Data/Geometry/PlanarSubdivision/Merge.hs b/src/Data/Geometry/PlanarSubdivision/Merge.hs
+index 1136114..3f4e7bb 100644
+--- a/src/Data/Geometry/PlanarSubdivision/Merge.hs
++++ b/src/Data/Geometry/PlanarSubdivision/Merge.hs
+@@ -153,7 +153,7 @@ mergeWith' mergeFaces p1 p2 = PlanarSubdivision cs vd rd rf
+         -- we have to shift the number of the *Arcs*. Since every dart
+         -- consists of two arcs, we have to shift by numDarts / 2
+         -- Furthermore, we take numFaces - 1 since we want the first
+-        -- *internal* face of p2 (the one with FaceId 1) to correspond with the first free
++        -- /internal/ face of p2 (the one with FaceId 1) to correspond with the first free
+         -- position (at index numFaces)
+
+     cs = p1^.components <> p2'^.components
diff --git a/third_party/nixpkgs-exposed/haskell_overlay/patches/update-comonad-extras.patch b/third_party/nixpkgs-exposed/haskell_overlay/patches/update-comonad-extras.patch
new file mode 100644
index 000000000000..2a419f320297
--- /dev/null
+++ b/third_party/nixpkgs-exposed/haskell_overlay/patches/update-comonad-extras.patch
@@ -0,0 +1,154 @@
+diff --git a/.travis.yml b/.travis.yml
+index 1a9ac7a..81c69e9 100644
+--- a/.travis.yml
++++ b/.travis.yml
+@@ -1,43 +1,4 @@
+-env:
+- - GHCVER=7.0.1 CABALVER=1.16
+- - GHCVER=7.0.4 CABALVER=1.16
+- - GHCVER=7.2.2 CABALVER=1.16
+- - GHCVER=7.4.2 CABALVER=1.16
+- - GHCVER=7.6.3 CABALVER=1.16
+- - GHCVER=7.8.4 CABALVER=1.18
+- - GHCVER=7.10.1 CABALVER=1.22
+- - GHCVER=head CABALVER=1.22
+-
+-matrix:
+-  allow_failures:
+-   - env: GHCVER=7.0.1 CABALVER=1.16
+-   - env: GHCVER=7.0.4 CABALVER=1.16
+-   - env: GHCVER=7.2.2 CABALVER=1.16
+-   - env: GHCVER=head CABALVER=1.22
+-
+-before_install:
+- - travis_retry sudo add-apt-repository -y ppa:hvr/ghc
+- - travis_retry sudo apt-get update
+- - travis_retry sudo apt-get install cabal-install-$CABALVER ghc-$GHCVER
+- - export PATH=/opt/ghc/$GHCVER/bin:/opt/cabal/$CABALVER/bin:$PATH
+- - cabal --version
+-
+-install:
+- - travis_retry cabal update
+- - cabal install --enable-tests --only-dependencies
+-
+-script:
+- - cabal configure -v2 --enable-tests
+- - cabal build
+- - cabal sdist
+- - export SRC_TGZ=$(cabal info . | awk '{print $2 ".tar.gz";exit}') ;
+-   cd dist/;
+-   if [ -f "$SRC_TGZ" ]; then
+-      cabal install "$SRC_TGZ";
+-   else
+-      echo "expected '$SRC_TGZ' not found";
+-      exit 1;
+-   fi
++language: haskell
+ 
+ notifications:
+   irc:
+diff --git a/comonad-extras.cabal b/comonad-extras.cabal
+index 2e449c1..77a2f0d 100644
+--- a/comonad-extras.cabal
++++ b/comonad-extras.cabal
+@@ -1,6 +1,6 @@
+-name:          comonad-extras
+ category:      Control, Comonads
+-version:       4.0.1
++name:          comonad-extras
++version:       5.0
+ license:       BSD3
+ cabal-version: >= 1.6
+ license-file:  LICENSE
+@@ -34,11 +34,11 @@ library
+   build-depends:
+     array                >= 0.3   && < 0.6,
+     base                 >= 4     && < 5,
+-    containers           >= 0.4   && < 0.7,
+-    comonad              >= 4     && < 6,
++    containers           >= 0.6   && < 0.7,
++    comonad              >= 5     && < 6,
+     distributive         >= 0.3.2 && < 1,
+-    semigroupoids        >= 4     && < 6,
+-    transformers         >= 0.2   && < 0.6
++    semigroupoids        >= 5     && < 6,
++    transformers         >= 0.5   && < 0.6
+ 
+   exposed-modules:
+     Control.Comonad.Store.Zipper
+diff --git a/src/Control/Comonad/Store/Pointer.hs b/src/Control/Comonad/Store/Pointer.hs
+index 5e41f4e..d99b50f 100644
+--- a/src/Control/Comonad/Store/Pointer.hs
++++ b/src/Control/Comonad/Store/Pointer.hs
+@@ -44,9 +44,6 @@ module Control.Comonad.Store.Pointer
+   , module Control.Comonad.Store.Class
+   ) where
+ 
+-#if !defined(__GLASGOW_HASKELL__) || __GLASGOW_HASKELL__ < 710
+-import Control.Applicative
+-#endif
+ import Control.Comonad
+ import Control.Comonad.Hoist.Class
+ import Control.Comonad.Trans.Class
+@@ -56,32 +53,10 @@ import Control.Comonad.Env.Class
+ import Data.Functor.Identity
+ import Data.Functor.Extend
+ import Data.Array
+-
+-#if __GLASGOW_HASKELL__
++#ifdef __GLASGOW_HASKELL__
+ import Data.Typeable
+ #endif
+ 
+-#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ < 708
+-instance (Typeable i, Typeable1 w) => Typeable1 (PointerT i w) where
+-  typeOf1 diwa = mkTyConApp storeTTyCon [typeOf (i diwa), typeOf1 (w diwa)]
+-    where
+-      i :: PointerT i w a -> i
+-      i = undefined
+-      w :: PointerT i w a -> w a
+-      w = undefined
+-
+-instance (Typeable i, Typeable1 w, Typeable a) => Typeable (PointerT i w a) where
+-  typeOf = typeOfDefault
+-
+-storeTTyCon :: TyCon
+-#if __GLASGOW_HASKELL__ < 704
+-storeTTyCon = mkTyCon "Control.Comonad.Trans.Store.Pointer.PointerT"
+-#else
+-storeTTyCon = mkTyCon3 "comonad-extras" "Control.Comonad.Trans.Store.Pointer" "PointerT"
+-#endif
+-{-# NOINLINE storeTTyCon #-}
+-#endif
+-
+ type Pointer i = PointerT i Identity
+ 
+ pointer :: Array i a -> i -> Pointer i a
+@@ -91,7 +66,7 @@ runPointer :: Pointer i a -> (Array i a, i)
+ runPointer (PointerT (Identity f) i) = (f, i)
+ 
+ data PointerT i w a = PointerT (w (Array i a)) i
+-#if __GLASGOW_HASKELL__ >= 708
++#ifdef __GLASGOW_HASKELL__
+   deriving Typeable
+ #endif
+ 
+@@ -133,4 +108,3 @@ instance (ComonadTraced m w, Ix i) => ComonadTraced m (PointerT i w) where
+ 
+ instance (ComonadEnv m w, Ix i)  => ComonadEnv m (PointerT i w) where
+   ask = ask . lower
+-
+diff --git a/src/Control/Comonad/Store/Zipper.hs b/src/Control/Comonad/Store/Zipper.hs
+index 6dab6fd..decc378 100644
+--- a/src/Control/Comonad/Store/Zipper.hs
++++ b/src/Control/Comonad/Store/Zipper.hs
+@@ -15,9 +15,6 @@
+ module Control.Comonad.Store.Zipper
+   ( Zipper, zipper, zipper1, unzipper, size) where
+ 
+-#if !defined(__GLASGOW_HASKELL__) || __GLASGOW_HASKELL__ < 710
+-import Control.Applicative
+-#endif
+ import Control.Comonad (Comonad(..))
+ import Data.Functor.Extend
+ import Data.Foldable