ghcid 0.6.2 → 0.6.3
raw patch · 4 files changed
+11/−7 lines, 4 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- CHANGES.txt +2/−0
- ghcid.cabal +1/−1
- src/Ghcid.hs +7/−5
- src/Test/Polling.hs +1/−1
CHANGES.txt view
@@ -1,5 +1,7 @@ Changelog for ghcid +0.6.3+ #68, add --no-status to avoid printing the reloading message 0.6.2 #63, detect test failures and update the titlebar/icon #66, add --warnings to run tests even in there are warnings
ghcid.cabal view
@@ -1,7 +1,7 @@ cabal-version: >= 1.10 build-type: Simple name: ghcid-version: 0.6.2+version: 0.6.3 license: BSD3 license-file: LICENSE category: Development
src/Ghcid.hs view
@@ -35,6 +35,7 @@ ,arguments :: [String] ,test :: Maybe String ,warnings :: Bool+ ,nostatus :: Bool ,height :: Maybe Int ,width :: Maybe Int ,topmost :: Bool@@ -52,6 +53,7 @@ ,arguments = [] &= args &= typ "MODULE" ,test = Nothing &= name "T" &= typ "EXPR" &= help "Command to run after successful loading" ,warnings = False &= name "W" &= help "Allow tests to run even with warnings"+ ,nostatus = False &= name "S" &= explicit &= name "no-status" &= help "Suppress status messages" ,height = Nothing &= help "Number of lines to use (defaults to console height)" ,width = Nothing &= name "w" &= help "Number of columns to use (defaults to console width)" ,topmost = False &= name "t" &= help "Set window topmost (Windows only)"@@ -137,7 +139,7 @@ return (f width 80 (pred . fst), f height 8 snd) withWaiterNotify $ \waiter -> handle (\(UnexpectedExit cmd _) -> putStrLn $ "Command \"" ++ cmd ++ "\" exited unexpectedly") $- runGhcid session waiter (nubOrd restart) (nubOrd reload) command outputfile test warnings height (not notitle) $ \xs -> do+ runGhcid session waiter (nubOrd restart) (nubOrd reload) command outputfile test warnings nostatus height (not notitle) $ \xs -> do outWith $ forM_ (groupOn fst xs) $ \x@((s,_):_) -> do when (s == Bold) $ setSGR [SetConsoleIntensity BoldIntensity] putStr $ concatMap ((:) '\n' . snd) x@@ -148,8 +150,8 @@ data Style = Plain | Bold deriving Eq -runGhcid :: Session -> Waiter -> [FilePath] -> [FilePath] -> String -> [FilePath] -> Maybe String -> Bool -> IO (Int,Int) -> Bool -> ([(Style,String)] -> IO ()) -> IO ()-runGhcid session waiter restart reload command outputfiles test warnings size titles output = do+runGhcid :: Session -> Waiter -> [FilePath] -> [FilePath] -> String -> [FilePath] -> Maybe String -> Bool -> Bool -> IO (Int,Int) -> Bool -> ([(Style,String)] -> IO ()) -> IO ()+runGhcid session waiter restart reload command outputfiles test warnings nostatus size titles output = do let outputFill :: Maybe (Int, [Load]) -> [String] -> IO () outputFill load msg = do (width, height) <- size@@ -200,13 +202,13 @@ updateTitle "(test done)" reason <- nextWait $ restart ++ reload ++ loaded- outputFill Nothing $ "Reloading..." : map (" " ++) reason+ unless nostatus $ outputFill Nothing $ "Reloading..." : map (" " ++) reason restartTimes2 <- mapM getModTime restart if restartTimes == restartTimes2 then do nextWait <- waitFiles waiter fire nextWait =<< sessionReload session else do- runGhcid session waiter restart reload command outputfiles test warnings size titles output+ runGhcid session waiter restart reload command outputfiles test warnings nostatus size titles output nextWait <- waitFiles waiter (messages, loaded) <- sessionStart session command
src/Test/Polling.hs view
@@ -42,7 +42,7 @@ try_ $ system "chmod og-w . .ghci" withSession $ \session -> withWaiterPoll $ \waiter -> bracket (- forkIO $ runGhcid session waiter [] [] "ghci" [] Nothing False (return (100, 50)) False $ \msg ->+ forkIO $ runGhcid session waiter [] [] "ghci" [] Nothing False False (return (100, 50)) False $ \msg -> unless (isLoading $ map snd msg) $ putMVarNow ref $ map snd msg ) killThread $ \_ -> do require requireAllGood