leksah-server 0.14.3.0 → 0.14.3.1
raw patch · 5 files changed
+26/−24 lines, 5 filesdep ~leksah-server
Dependency ranges changed: leksah-server
Files
- leksah-server.cabal +2/−2
- src/IDE/Utils/FileUtils.hs +4/−4
- src/IDE/Utils/Tool.hs +7/−5
- src/IDE/Utils/VersionUtils.hs +4/−4
- tests/TestTool.hs +9/−9
leksah-server.cabal view
@@ -1,5 +1,5 @@ name: leksah-server-version: 0.14.3.0+version: 0.14.3.1 cabal-version: >= 1.10.2 build-type: Simple license: GPL@@ -194,7 +194,7 @@ hs-source-dirs: tests main-is: TestTool.hs build-depends: base >= 4.0.0.0 && <4.8, hslogger >= 1.0.7 && <1.3,- leksah-server == 0.14.3.0,+ leksah-server == 0.14.3.1, HUnit >=1.2 && <1.3, transformers >=0.2.2.0 && <0.5, conduit >= 1.0.8 && <1.3, conduit-extra >=1.0.0.1 && <1.2, resourcet
src/IDE/Utils/FileUtils.hs view
@@ -404,7 +404,7 @@ getSysLibDir :: IO FilePath getSysLibDir = E.catch (do (!output,_) <- runTool' "ghc" ["--print-libdir"] Nothing- let libDir = toolline $ head output+ let libDir = head [line | ToolOutput line <- output] libDir2 = if ord (T.last libDir) == 13 then T.init libDir else libDir@@ -434,7 +434,7 @@ figureOutHaddockOpts :: IO [Text] figureOutHaddockOpts = do (!output,_) <- runTool' "cabal" (["haddock","--with-haddock=leksahecho","--executables"]) Nothing- let opts = concatMap (words . T.unpack . toolline) output+ let opts = concat [words $ T.unpack l | ToolOutput l <- output] let res = filterOptGhc opts debugM "leksah-server" ("figureOutHaddockOpts " ++ show res) return $ map T.pack res@@ -447,8 +447,8 @@ figureOutGhcOpts :: IO [Text] figureOutGhcOpts = do debugM "leksah-server" "figureOutGhcOpts"- (!output,_) <- runTool' "cabal" ["build","--with-ghc=leksahecho"] Nothing- let res = case catMaybes $ map (findMake . T.unpack . toolline) output of+ (!output,_) <- runTool' "cabal" ["build","--with-ghc=leksahecho","--with-ghcjs=leksahecho"] Nothing+ let res = case catMaybes [findMake $ T.unpack l | ToolOutput l <- output] of options:_ -> words options _ -> [] debugM "leksah-server" $ ("figureOutGhcOpts " ++ show res)
src/IDE/Utils/Tool.hs view
@@ -62,10 +62,10 @@ import IDE.System.Process.Internals (StdStream(..)) #else import System.Process- (proc, waitForProcess, ProcessHandle, createProcess, CreateProcess(..),- interruptProcessGroupOf, runCommand, getProcessExitCode,- runProcess, runInteractiveProcess, readProcessWithExitCode,- terminateProcess)+ (showCommandForUser, proc, waitForProcess, ProcessHandle,+ createProcess, CreateProcess(..), interruptProcessGroupOf,+ runCommand, getProcessExitCode, runProcess, runInteractiveProcess,+ readProcessWithExitCode, terminateProcess) import System.Process.Internals (StdStream(..)) #endif import qualified Data.Text as T@@ -168,7 +168,9 @@ create_group = True } #endif output <- getOutputNoPrompt inp out err pid- return (output, pid)+ return (do+ C.yield . ToolInput . T.pack $ showCommandForUser executable (map T.unpack arguments)+ output, pid) newToolState :: IO ToolState newToolState = do
src/IDE/Utils/VersionUtils.hs view
@@ -19,7 +19,7 @@ , getGhcInfo ) where -import IDE.Utils.Tool (toolline, runTool')+import IDE.Utils.Tool (ToolOutput(..), runTool') import Data.Char (ord) import System.Log.Logger (debugM) import Control.Exception as E (SomeException, catch)@@ -29,7 +29,7 @@ getGhcVersion :: IO FilePath getGhcVersion = E.catch (do (!output,_) <- runTool' "ghc" ["--numeric-version"] Nothing- let vers = toolline $ head output+ let vers = head [l | ToolOutput l <- output] vers2 = if ord (T.last vers) == 13 then T.init vers else vers@@ -40,13 +40,13 @@ getGhcInfo :: IO Text getGhcInfo = E.catch (do (!output,_) <- runTool' "ghc" ["--info"] Nothing- return . T.unlines $ map toolline output+ return . T.unlines $ [l | ToolOutput l <- output] ) $ \ (_ :: SomeException) -> error "FileUtils>>getGhcInfo failed" getHaddockVersion :: IO Text getHaddockVersion = E.catch (do (!output,_) <- runTool' "haddock" ["--version"] Nothing- let vers = toolline $ head output+ let vers = head [l | ToolOutput l <- output] vers2 = if ord (T.last vers) == 13 then T.init vers else vers
tests/TestTool.hs view
@@ -72,31 +72,31 @@ tests = test [ "Exit Success" ~: do (output, _) <- runSelf' ["ExitSuccess"]- output `check` [ToolExit ExitSuccess],+ output `check` [ToolInput "dist/build/test-tool/test-tool ExitSuccess", ToolExit ExitSuccess], "Exit Failure" ~: do (output, _) <- runSelf' ["Exit42"]- output `check` [ToolExit (ExitFailure 42)],+ output `check` [ToolInput "dist/build/test-tool/test-tool Exit42", ToolExit (ExitFailure 42)], "Single Blank Out Line" ~: do (output, _) <- runSelf' ["BlankLine", "StdOut"]- output `check` [ToolOutput "", ToolExit ExitSuccess],+ output `check` [ToolInput "dist/build/test-tool/test-tool BlankLine StdOut", ToolOutput "", ToolExit ExitSuccess], "Single Blank Err Line" ~: do (output, _) <- runSelf' ["BlankLine", "StdErr"]- output `check` [ToolError "", ToolExit ExitSuccess],+ output `check` [ToolInput "dist/build/test-tool/test-tool BlankLine StdErr", ToolError "", ToolExit ExitSuccess], "Hello Out" ~: do (output, _) <- runSelf' ["Hello", "StdOut"]- output `check` [ToolOutput "Hello World", ToolExit ExitSuccess],+ output `check` [ToolInput "dist/build/test-tool/test-tool Hello StdOut", ToolOutput "Hello World", ToolExit ExitSuccess], "Hello Err" ~: do (output, _) <- runSelf' ["Hello", "StdErr"]- output `check` [ToolError "Hello World", ToolExit ExitSuccess],+ output `check` [ToolInput "dist/build/test-tool/test-tool Hello StdErr", ToolError "Hello World", ToolExit ExitSuccess], "Both" ~: do (output, _) <- runSelf' ["ErrAndOut"]- output `check` [ToolError "Error", ToolOutput "Output", ToolExit ExitSuccess],+ output `check` [ToolInput "dist/build/test-tool/test-tool ErrAndOut", ToolError "Error", ToolOutput "Output", ToolExit ExitSuccess], "Unterminated Out" ~: do (output, _) <- runSelf' ["Unterminated", "StdOut"]- output `check` [ToolOutput "Unterminated", ToolExit ExitSuccess],+ output `check` [ToolInput "dist/build/test-tool/test-tool Unterminated StdOut", ToolOutput "Unterminated", ToolExit ExitSuccess], "Unterminated Err" ~: do (output, _) <- runSelf' ["Unterminated", "StdErr"]- output `check` [ToolError "Unterminated", ToolExit ExitSuccess],+ output `check` [ToolInput "dist/build/test-tool/test-tool Unterminated StdErr", ToolError "Unterminated", ToolExit ExitSuccess], "GHCi Failed Sart" ~: do t <- newEmptyMVar tool <- newGhci' ["MissingFile.hs"] $ do