packages feed

shake-ext 2.10.0.0 → 2.11.0.0

raw patch · 2 files changed

+21/−4 lines, 2 filesdep +cpphsPVP ok

version bump matches the API change (PVP)

Dependencies added: cpphs

API changes (from Hackage documentation)

+ Development.Shake.Literate: literateAgda :: Rules ()
+ Development.Shake.Literate: unlitA :: FilePath -> FilePath -> Action ()

Files

shake-ext.cabal view
@@ -1,6 +1,6 @@ cabal-version: 1.18 name: shake-ext-version: 2.10.0.0+version: 2.11.0.0 license: BSD3 license-file: LICENSE copyright: Copyright: (c) 2018 Vanessa McHale@@ -44,10 +44,11 @@     ghc-options: -Wall     build-depends:         base >=4.11 && <5,-        shake -any,+        Cabal >=2.2,         composition-prelude -any,+        cpphs -any,         directory -any,-        Cabal >=2.2,+        shake -any,         template-haskell -any          if flag(development)
src/Development/Shake/Literate.hs view
@@ -3,16 +3,21 @@ -- programs. module Development.Shake.Literate ( -- * Action                                     illiterateA+                                  , unlitA                                   -- * Rules                                   , literateHaskell                                   , literateIdris                                   , literateAlex                                   , literateHappy+                                  , literateAgda                                   ) where  import           Development.Shake import           Development.Shake.FilePath+import           Language.Preprocessor.Unlit +-- | This uses the [illiterate](https://github.com/vmchale/illiterate)+-- preprocessor. illiterateA :: FilePath -- ^ Literate source file             -> FilePath -- ^ Generated source             -> Action ()@@ -20,16 +25,27 @@     (Stdout o) <- cmd ["lit", inF]     liftIO $ writeFile outF o +-- | This uses the 'unlit' function provided by the @cpphs@ package.+unlitA :: FilePath -- ^ Literate source file+       -> FilePath -- ^ Generated source+       -> Action ()+unlitA inF outF = liftIO (g =<< readFile inF)+    where g = writeFile outF . unlit inF+ literateRules :: String -- ^ File extension               -> Rules () literateRules ext = pat %> g     where pat = "//*." <> ('l' : ext)           g out = let new = fst (splitExtension out) <> ('.' : ext)-            in illiterateA out new+            in unlitA out new  -- | Rules for building @.lhs@ files. literateHaskell :: Rules () literateHaskell = literateRules "hs"++-- | Rules for building @.lagda@ files.+literateAgda :: Rules ()+literateAgda = literateRules "agda"  -- | Rules for building @.lidr@ files. literateIdris :: Rules ()