Merge branch 'master.upstream' into staging.upstream

This commit is contained in:
William A. Kennington III
2015-07-05 13:06:02 -07:00
155 changed files with 4271 additions and 2114 deletions

View File

@@ -135,6 +135,7 @@ self: super: {
});
# The Haddock phase fails for one reason or another.
acme-one = dontHaddock super.acme-one;
attoparsec-conduit = dontHaddock super.attoparsec-conduit;
base-noprelude = dontHaddock super.base-noprelude;
blaze-builder-conduit = dontHaddock super.blaze-builder-conduit;
@@ -330,6 +331,7 @@ self: super: {
bitx-bitcoin = dontCheck super.bitx-bitcoin; # http://hydra.cryp.to/build/926187/log/raw
concurrent-dns-cache = dontCheck super.concurrent-dns-cache;
dbus = dontCheck super.dbus; # http://hydra.cryp.to/build/498404/log/raw
digitalocean-kzs = dontCheck super.digitalocean-kzs; # https://github.com/KazumaSATO/digitalocean-kzs/issues/1
hadoop-rpc = dontCheck super.hadoop-rpc; # http://hydra.cryp.to/build/527461/nixlog/2/raw
hasql = dontCheck super.hasql; # http://hydra.cryp.to/build/502489/nixlog/4/raw
hjsonschema = overrideCabal super.hjsonschema (drv: { testTarget = "local"; });
@@ -344,14 +346,15 @@ self: super: {
raven-haskell = dontCheck super.raven-haskell; # http://hydra.cryp.to/build/502053/log/raw
riak = dontCheck super.riak; # http://hydra.cryp.to/build/498763/log/raw
scotty-binding-play = dontCheck super.scotty-binding-play;
serversession-backend-redis = dontCheck super.serversession-backend-redis;
slack-api = dontCheck super.slack-api; # https://github.com/mpickering/slack-api/issues/5
socket = dontCheck super.socket;
stackage = dontCheck super.stackage; # http://hydra.cryp.to/build/501867/nixlog/1/raw
textocat-api = dontCheck super.textocat-api; # http://hydra.cryp.to/build/887011/log/raw
warp = dontCheck super.warp; # http://hydra.cryp.to/build/501073/nixlog/5/raw
wreq = dontCheck super.wreq; # http://hydra.cryp.to/build/501895/nixlog/1/raw
wreq-sb = dontCheck super.wreq-sb; # http://hydra.cryp.to/build/783948/log/raw
wuss = dontCheck super.wuss; # http://hydra.cryp.to/build/875964/nixlog/2/raw
serversession-backend-redis = dontCheck super.serversession-backend-redis;
# https://github.com/NICTA/digit/issues/3
digit = dontCheck super.digit;
@@ -626,6 +629,7 @@ self: super: {
# https://github.com/srijs/hwsl2/issues/1
hwsl2 = markBroken super.hwsl2;
hwsl2-reducers = dontDistribute super.hwsl2-reducers;
# https://code.google.com/p/linux-music-player/issues/detail?id=1
mp = markBroken super.mp;
@@ -794,9 +798,6 @@ self: super: {
# Patch to consider NIX_GHC just like xmonad does
dyre = appendPatch super.dyre ./dyre-nix.patch;
# https://github.com/gwern/mueval/issues/9
mueval = appendPatch (appendPatch super.mueval ./mueval-fix.patch) ./mueval-nix.patch;
# Test suite won't compile against tasty-hunit 0.9.x.
zlib = dontCheck super.zlib;
@@ -820,6 +821,7 @@ self: super: {
# https://github.com/goldfirere/singletons/issues/118
clash-lib = dontDistribute super.clash-lib;
clash-verilog = dontDistribute super.clash-verilog;
Frames = dontDistribute super.Frames;
hgeometry = dontDistribute super.hgeometry;
hipe = dontDistribute super.hipe;
singleton-nats = dontDistribute super.singleton-nats;
@@ -898,4 +900,11 @@ self: super: {
# https://github.com/commercialhaskell/stack/issues/409
stack = overrideCabal super.stack (drv: { preCheck = "export HOME=$TMPDIR"; doCheck = false; });
# Missing dependency on some hid-usb library.
hid = markBroken super.hid;
msi-kb-backlit = dontDistribute super.msi-kb-backlit;
# Hydra no longer allows building texlive packages.
lhs2tex = dontDistribute super.lhs2tex;
}

File diff suppressed because it is too large Load Diff

View File

@@ -1,90 +0,0 @@
diff --git a/Mueval/ArgsParse.hs b/Mueval/ArgsParse.hs
index 05c8fd9..0c32e27 100644
--- a/Mueval/ArgsParse.hs
+++ b/Mueval/ArgsParse.hs
@@ -1,10 +1,9 @@
+{-# LANGUAGE CPP #-}
module Mueval.ArgsParse (Options(..), interpreterOpts, getOptions) where
import Control.Monad (liftM)
import System.Console.GetOpt
-import qualified Codec.Binary.UTF8.String as Codec (decodeString)
-
import Mueval.Context (defaultModules, defaultPackages)
-- | See the results of --help for information on what each option means.
@@ -98,4 +97,11 @@ header = "Usage: mueval [OPTION...] --expression EXPRESSION..."
-- | Just give us the end result options; this parsing for
-- us. Bonus points for handling UTF.
getOptions :: [String] -> Either (Bool, String) Options
-getOptions = interpreterOpts . map Codec.decodeString
\ No newline at end of file
+getOptions = interpreterOpts . map decodeString
+
+decodeString :: String -> String
+#if __GLASGOW_HASKELL__ >= 702
+decodeString = id
+#else
+decodeString = Codec.decodeString
+#endif
diff --git a/Mueval/Context.hs b/Mueval/Context.hs
index 78925cf..548514c 100644
--- a/Mueval/Context.hs
+++ b/Mueval/Context.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE CPP #-}
module Mueval.Context (
cleanModules,
defaultModules,
@@ -32,7 +33,9 @@ defaultModules = ["Prelude",
"Control.Monad.Error",
"Control.Monad.Fix",
"Control.Monad.Identity",
+#if !MIN_VERSION_base(4,7,0)
"Control.Monad.Instances",
+#endif
"Control.Monad.RWS",
"Control.Monad.Reader",
"Control.Monad.State",
diff --git a/Mueval/Interpreter.hs b/Mueval/Interpreter.hs
index 29b771f..6c39482 100644
--- a/Mueval/Interpreter.hs
+++ b/Mueval/Interpreter.hs
@@ -1,4 +1,5 @@
{-# LANGUAGE PatternGuards #-}
+{-# LANGUAGE FlexibleContexts #-}
-- TODO: suggest the convenience functions be put into Hint proper?
module Mueval.Interpreter where
@@ -12,8 +13,6 @@ import System.Exit (exitFailure)
import System.FilePath.Posix (takeFileName)
import qualified Control.Exception.Extensible as E (evaluate,catch,SomeException(..))
-import qualified System.IO.UTF8 as UTF (putStrLn)
-
import Language.Haskell.Interpreter (eval, set, reset, setImportsQ, loadModules, liftIO,
installedModulesInScope, languageExtensions,
typeOf, setTopLevelModules, runInterpreter, glasgowExtensions,
@@ -100,7 +99,7 @@ mvload lfl = do canonfile <- makeRelativeToCurrentDirectory lfl
-- flooding. Lambdabot has a similar limit.
sayIO :: String -> IO ()
sayIO str = do (out,b) <- render 1024 str
- UTF.putStrLn out
+ putStrLn out
when b exitFailure
-- | Oh no, something has gone wrong. If it's a compilation error pretty print
diff --git a/mueval.cabal b/mueval.cabal
index 3f9406d..b86d796 100644
--- a/mueval.cabal
+++ b/mueval.cabal
@@ -32,7 +32,7 @@ library
exposed-modules: Mueval.Parallel, Mueval.Context, Mueval.Interpreter,
Mueval.ArgsParse, Mueval.Resources
build-depends: base>=4 && < 5, containers, directory, mtl>2, filepath, unix, process,
- hint>=0.3.1, show>=0.3, utf8-string, Cabal, extensible-exceptions, simple-reflect
+ hint>=0.3.1, show>=0.3, Cabal, extensible-exceptions, simple-reflect
ghc-options: -Wall -static
executable mueval-core

View File

@@ -1,23 +0,0 @@
diff --git a/Mueval/Interpreter.hs b/Mueval/Interpreter.hs
index 29b771f..6360ee3 100644
--- a/Mueval/Interpreter.hs
+++ b/Mueval/Interpreter.hs
@@ -8,6 +8,7 @@ import Control.Monad.Writer (Any(..),runWriterT,tell)
import Data.Char (isDigit)
import Data.List (stripPrefix)
import System.Directory (copyFile, makeRelativeToCurrentDirectory, removeFile, setCurrentDirectory)
+import System.Environment (lookupEnv)
import System.Exit (exitFailure)
import System.FilePath.Posix (takeFileName)
import qualified Control.Exception.Extensible as E (evaluate,catch,SomeException(..))
@@ -47,6 +48,10 @@ interpreter Options { extensions = exts, namedExtensions = nexts,
-- Explicitly adding ImplicitPrelude because of
-- http://darcsden.com/jcpetruzza/hint/issue/1
unless (null lexts) $ set [languageExtensions := (UnknownExtension "ImplicitPrelude" : lexts)]
+ pkgs' <- liftIO $ lookupEnv "NIX_GHC_LIBDIR"
+ case pkgs' of
+ Just pkgs -> unsafeSetGhcOption ("-package-db " ++ pkgs ++ "/package.conf.d")
+ Nothing -> return ()
when trust $ do
unsafeSetGhcOption "-fpackage-trust"
forM_ (trustPkgs >>= words) $ \pkg ->