packages feed

seqaid 0.1.4 → 0.1.5

raw patch · 2 files changed

+49/−35 lines, 2 filesdep ~Cabaldep ~arraydep ~containers

Dependency ranges changed: Cabal, array, containers, deepseq-bounded, directory, generics-sop, hashable, hashtables, modulespection, mtl, process, template-haskell, temporary, th-expand-syns

Files

Seqaid/Demo.hs view
@@ -19,23 +19,30 @@   module Main ( main ) where --module Seqaid.Demo ( main ) where +  import System.Environment ( getArgs )   import System.IO.Temp   import System.Directory   import System.Process+  import System.Exit -  leaky_version = "0.1.0.4"---leaky_version = "0.1.0.3"---leaky_version = "0.1.0.0"+  leaky_version = "0.1.0.5"  -- XXX need a better way!!.... +  main :: IO ExitCode   main = do-            tdir <- createTempDirectory "." "leaky_"+            args <- getArgs+            if args /= ["demo"]+            then do+              putStrLn "seqaid: \"seqaid demo\" is the only supported invocation at this time."+              return $ ExitFailure 1+            else do+              tdir <- createTempDirectory "." "leaky_" -- XXX Note that "cabal get" already extracts the tarball for you. #if IS_WINDOWS-            let bang_lines = ""+              let bang_lines = "" #else-            let bang_lines = "#!/bin/bash\nset -e\n"+              let bang_lines = "#!/bin/bash\nset -e\n" #endif-            let seqaid_init_bash = bang_lines ++ "\+              let seqaid_init_bash = bang_lines ++ "\ \cabal get leaky-" ++ leaky_version ++ "\n\ \cd leaky-" ++ leaky_version ++ "\n\ \cabal configure\n\@@ -44,9 +51,15 @@ \echo\n\ \echo \"(Please see " ++ tdir ++ "/leaky-" ++ leaky_version ++ "/README for the interpretation.)\"\n\ \echo\n"-            setCurrentDirectory tdir-            writeFile "seqaidinit.sh" seqaid_init_bash-            p <- getPermissions "seqaidinit.sh"-            setPermissions "seqaidinit.sh" (p { executable = True })-            system "./seqaidinit.sh"+              setCurrentDirectory tdir+              writeFile "seqaidinit.sh" seqaid_init_bash+              p <- getPermissions "seqaidinit.sh"+              setPermissions "seqaidinit.sh" (p { executable = True })+              st <- system "./seqaidinit.sh"+              case st of+                ExitSuccess -> return ExitSuccess+                ExitFailure n -> do+                  putStrLn $ "Sorry, seqaid demo had a problem (status=" ++ show st ++ ").\nPlease report this bug to rasfar@gmail.com"+                  return $ ExitFailure 2+                _ -> error $ "unexpected ExitCode = " ++ show st ++ "\nPlease report this bug to rasfar@gmail.com" 
seqaid.cabal view
@@ -1,6 +1,6 @@  name:                seqaid-version:             0.1.4+version:             0.1.5 synopsis:            Dynamic strictness control, including space leak repair description:         Seqaid is a GHC plugin for non-invasive auto-instrumentation of dynamic strictness (and parallelism) control, shortly to include optimisation for automated space leak relief using minimal strictification. [The optimiser is still in development however.]                      .@@ -134,22 +134,23 @@     -- for polymorphic types such as [a]. Now looking to extend     -- the TH code to USE the GHC API, which I didn't realise     -- was possible but see modulespec package...-    , template-haskell <= 2.9.0.0---  , template-haskell-    , modulespection <= 0.1.2.1-    , th-expand-syns <= 0.3.0.4+    , template-haskell == 2.9.*+    , modulespection >= 0.1.2+    , th-expand-syns == 0.3.*      -- low-level forcing libraries-    , deepseq-bounded <= 0.5.3+    , deepseq-bounded >= 0.5.0 && <= 0.5.3      -- at least for IntMap-    , containers <= 0.5.5.1+    , containers == 0.5.*     -- or would regex-posix be better?     , regex-pcre <= 0.94.4     -- to use regex API-    , array <= 0.5.0.0+    , array == 0.5.*     -- ended up wanting this for State, for a SYB everywhereM traversal-    , mtl <= 2.1.3.1+    , mtl == 2.1.*+--  , mtl == 2.1.3.*+--  , mtl == 2.1.3.1      -- In the end (although it's already a sub-dep), seqaid did end up     -- depending directly on SOP, since now there's a splice in Seqaid.TH@@ -158,11 +159,11 @@     -- decls are put there by seqaidpp [indeed that was the whole reason     -- I finally crumbed and reached for a preprocessor!] -- that's     -- pre-TH, so pre our ability to know whether it's a synonym or not...---  , generics-sop <= 0.1.0.4+--  , generics-sop == 0.1.*    if flag(SEQABLE_ONLY)     build-depends:-        generics-sop <= 0.1.0.4+        generics-sop == 0.1.*    if ! flag(DEMO_MODE)     build-depends:@@ -173,17 +174,18 @@       --   primitive  : 10 modules (hashables)       --   vector     : 19 modules (hashables)       -- Ouch! (this only really matters for sandbox builds)-        hashtables <= 1.2.0.1+        hashtables == 1.2.*       -- Need to include this anyway, since this is where "hash" function       -- comes from (and hashtables doesn't export it).       -- For building IntMap or HashTable keys from unique strings.-      , hashable <= 1.2.3.0+--    , hashable == 1.2.*+      , hashable == 1.2.3.*      -- Useful in debugging...---  , sai-shape-syb <= 0.3.0+--  , sai-shape-syb == 0.3.*     -- for debugging only (though deepseq-bounded re-exports these anyhow)---  , deepseq-generics <= 0.1.1.2---  , deepseq <= 1.3.0.2+--  , deepseq-generics == 0.1.1.2+--  , deepseq == 1.3.0.2    ghc-options: -optP-Wundef -fno-warn-overlapping-patterns   ghc-options:                  -funbox-strict-fields -fwarn-tabs@@ -262,10 +264,9 @@ --other-extensions:   build-depends:       base == 4.*---  , seqaid == 0.1.4-    , temporary <= 1.2.0.2-    , directory <= 1.2.1.0-    , process <= 1.2.0.0+    , temporary == 1.2.*+    , directory == 1.2.*+    , process == 1.2.*   ghc-options:                  -funbox-strict-fields -fwarn-tabs -threaded --ghc-options:        -Wall -O2 -funbox-strict-fields -fwarn-tabs -threaded @@ -297,9 +298,9 @@     , regex-base <= 0.93.2     , regex-pcre <= 0.94.4 -- (process may still be uncommented b/c using to debug...)-    , process <= 1.2.0.0-    , directory <= 1.2.1.0-    , Cabal <= 1.18.1.3+    , process == 1.2.*+    , directory == 1.2.*+    , Cabal >= 1.18 --ghc-options:   default-language:   Haskell2010   ghc-options: -pgmP cpphs -optP --cpp