about summary refs log tree commit diff
path: root/third_party/haskell_overlay/patches
diff options
context:
space:
mode:
authorGriffin Smith <grfn@gws.fyi>2020-06-29T01·27-0400
committerglittershark <grfn@gws.fyi>2020-06-29T01·56+0000
commit8091da8f0f6efd365dddf4a09555ed49c093ea50 (patch)
tree0c79b385807ba80de21a9fd2f09ec5cbb57067bc /third_party/haskell_overlay/patches
parent0ecc9b4ed3e53698dc44332abd06c67a6f8ffdbb (diff)
feat(3p/haskellPackages): port in patches from xanthous r/1124
Add a few relatively uncontroversial patches to fix some broken packages
that I had developed for xanthous to the top-level third_party tree, so
they can be reused by other people in the monorepo

Change-Id: I68740477bda278c5dcc123080029ee4bd2cae37a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/740
Reviewed-by: Profpatsch <mail@profpatsch.de>
Reviewed-by: tazjin <mail@tazj.in>
Diffstat (limited to 'third_party/haskell_overlay/patches')
-rw-r--r--third_party/haskell_overlay/patches/generic-arbitrary-export-garbitrary.patch12
-rw-r--r--third_party/haskell_overlay/patches/hgeometry-fix-haddock.patch13
-rw-r--r--third_party/haskell_overlay/patches/update-comonad-extras.patch154
3 files changed, 179 insertions, 0 deletions
diff --git a/third_party/haskell_overlay/patches/generic-arbitrary-export-garbitrary.patch b/third_party/haskell_overlay/patches/generic-arbitrary-export-garbitrary.patch
new file mode 100644
index 000000000000..f0c936bfca18
--- /dev/null
+++ b/third_party/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/haskell_overlay/patches/hgeometry-fix-haddock.patch b/third_party/haskell_overlay/patches/hgeometry-fix-haddock.patch
new file mode 100644
index 000000000000..748c65b3e0db
--- /dev/null
+++ b/third_party/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/haskell_overlay/patches/update-comonad-extras.patch b/third_party/haskell_overlay/patches/update-comonad-extras.patch
new file mode 100644
index 000000000000..2a419f320297
--- /dev/null
+++ b/third_party/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