packages feed

hack-contrib 2009.6.9 → 2009.6.25

raw patch · 23 files changed

+118/−108 lines, 23 filesdep −unixdep ~mpsPVP ok

version bump matches the API change (PVP)

Dependencies removed: unix

Dependency ranges changed: mps

API changes (from Hackage documentation)

+ Hack.Contrib.Middleware.Hub: get_pid :: IO Int
+ Hack.Contrib.Utils: format_time :: String -> UTCTime -> String
+ Hack.Contrib.Utils: now :: IO UTCTime

Files

changelog.md view
@@ -1,3 +1,11 @@+2009.6.25+---------++### Feature++* windows compatible+* use mps-light when possible to reduce size+ 2009.6.9 -------- 
hack-contrib.cabal view
@@ -1,5 +1,5 @@ Name:                 hack-contrib-Version:              2009.6.9+Version:              2009.6.25 Build-type:           Simple Synopsis:             Hack contrib Description:          Hack contrib@@ -15,7 +15,7 @@  library   ghc-options: -Wall-  build-depends: base >=4 && < 5, cgi, network, haskell98, old-locale, old-time, directory, filepath, containers, bytestring, ansi-wl-pprint, data-default >= 0.2, ansi-wl-pprint, unix, time, pureMD5, mps >= 2009.5.13, hack >= 2009.5.19+  build-depends: base >=4 && < 5, cgi, network, haskell98, old-locale, old-time, directory, filepath, containers, bytestring, ansi-wl-pprint, data-default >= 0.2, ansi-wl-pprint, time, pureMD5, mps >= 2009.6.25, hack >= 2009.5.19   hs-source-dirs: src/   exposed-modules:                       Hack.Contrib.Utils
src/Hack/Contrib/Middleware/BounceFavicon.hs view
@@ -3,11 +3,11 @@ module Hack.Contrib.Middleware.BounceFavicon (bounce_favicon) where  import Hack-import Hack.Contrib.Utils import Hack.Contrib.Middleware.NotFound--import MPSUTF8+import Hack.Contrib.Utils+import MPS.Light import Prelude hiding ((.), (^), (>), head)+   bounce_favicon :: Middleware
src/Hack/Contrib/Middleware/ContentLength.hs view
@@ -4,12 +4,12 @@ module Hack.Contrib.Middleware.ContentLength (content_length) where  import Hack-import Hack.Contrib.Utils-import Hack.Contrib.Response import Hack.Contrib.Constants--import MPSUTF8+import Hack.Contrib.Response+import Hack.Contrib.Utils+import MPS.Light import Prelude hiding ((.), (^), (>))+  content_length :: Middleware content_length app = \env -> do
src/Hack/Contrib/Middleware/ContentType.hs view
@@ -4,10 +4,9 @@ module Hack.Contrib.Middleware.ContentType (content_type) where  import Hack-import Hack.Contrib.Response import Hack.Contrib.Constants--import MPSUTF8+import Hack.Contrib.Response+import MPS.Light import Prelude hiding ((.), (^), (>))  
src/Hack/Contrib/Middleware/ETag.hs view
@@ -3,14 +3,13 @@  module Hack.Contrib.Middleware.ETag (etag) where +import Data.Digest.Pure.MD5 import Hack-import Hack.Contrib.Response import Hack.Contrib.Constants--import MPSUTF8+import Hack.Contrib.Response+import MPS.Light import Prelude hiding ((.), (^), (>)) -import Data.Digest.Pure.MD5   etag :: Middleware
src/Hack/Contrib/Middleware/File.hs view
@@ -3,22 +3,20 @@  module Hack.Contrib.Middleware.File (file) where +import Data.Default+import Data.List (isInfixOf)+import Data.Maybe import Hack-import Hack.Contrib.Utils-import Hack.Contrib.Response import Hack.Contrib.Constants import Hack.Contrib.Mime--import MPSUTF8+import Hack.Contrib.Response+import Hack.Contrib.Utils+import MPS import Prelude hiding ((.), (^), (>), (+), (/), readFile)--import Data.Default-import Data.Maybe-import Data.List (isInfixOf) import System.Directory import System.FilePath- import qualified Data.ByteString.Lazy.Char8 as B+  file :: Maybe String -> Middleware file root _ = \env -> do
src/Hack/Contrib/Middleware/Head.hs view
@@ -1,12 +1,12 @@ module Hack.Contrib.Middleware.Head (head) where  import Hack-import Hack.Contrib.Utils import Hack.Contrib.Response--import MPSUTF8+import Hack.Contrib.Utils+import MPS.Light import Prelude hiding ((.), (^), (>), head) import qualified Data.ByteString.Lazy.Char8 as B+  head :: Middleware head app = \env -> do
src/Hack/Contrib/Middleware/Hub.hs view
@@ -1,18 +1,21 @@ {-# LANGUAGE QuasiQuotes #-}+{-# LANGUAGE CPP #-}  -- the entire logging module is stolen from -- [innate](http://github.com/manveru/innate/tree/master)  module Hack.Contrib.Middleware.Hub where -import MPSUTF8+import Data.Maybe+import Data.Time+import MPS import Prelude hiding ((.), (^), (>), (+))-+import Text.PrettyPrint.ANSI.Leijen import Text.Printf++#ifdef UNIX import System.Posix.Process (getProcessID)-import Data.Maybe-import Text.PrettyPrint.ANSI.Leijen-import Data.Time+#endif  data Severity =       Debug@@ -34,8 +37,16 @@ hub stream formatter program = \message severity ->    do     time <- now-    pid <- getProcessID ^ from_i+    pid <- get_pid     stream $ formatter severity time pid program message++get_pid :: IO Int+get_pid =+#ifdef UNIX+  getProcessID ^ from_i+#else+  return (-1)+#endif  simple_logger :: (String -> IO ()) -> String -> Logger simple_logger = flip hub simple_formatter
src/Hack/Contrib/Middleware/Inspect.hs view
@@ -3,7 +3,7 @@ module Hack.Contrib.Middleware.Inspect (inspect) where  import Hack-import MPSUTF8+import MPS.Light import Prelude hiding ((.), (^))  inspect :: Middleware
src/Hack/Contrib/Middleware/Lambda.hs view
@@ -4,16 +4,17 @@  module Hack.Contrib.Middleware.Lambda (lambda) where +import Data.Default import Hack-import Hack.Contrib.Utils-import Hack.Contrib.Response import Hack.Contrib.Constants--import MPSUTF8+import Hack.Contrib.Response+import Hack.Contrib.Utils+import MPS+import MPS.Heavy+import MPS.TH import Prelude hiding ((.), (^), (>), (+))-import Data.Default- import qualified Data.ByteString.Lazy.Char8 as B+  data64 :: String data64 = [$here|
src/Hack/Contrib/Middleware/Lucky.hs view
@@ -4,15 +4,15 @@  module Hack.Contrib.Middleware.Lucky (lucky) where +import Data.Default import Hack-import Hack.Contrib.Utils-import Hack.Contrib.Response import Hack.Contrib.Constants--import MPSUTF8+import Hack.Contrib.Response+import Hack.Contrib.Utils+import MPS+import MPS.Heavy+import MPS.TH import Prelude hiding ((.), (^), (>), (+))-import Data.Default- import qualified Data.ByteString.Lazy.Char8 as B  lucky :: Middleware
src/Hack/Contrib/Middleware/NotFound.hs view
@@ -4,7 +4,7 @@ import Hack.Contrib.Response import Hack.Contrib.Constants -import MPSUTF8+import MPS.Light import Prelude hiding ((.), (^), (>), (+)) import Data.Default 
src/Hack/Contrib/Middleware/RegexpRouter.hs view
@@ -3,13 +3,12 @@  module Hack.Contrib.Middleware.RegexpRouter (regexp_router) where +import Data.Maybe import Hack import Hack.Contrib.Utils--import MPSUTF8-import Prelude hiding ((.), (^), (>)) import List (find)-import Data.Maybe+import MPS+import Prelude hiding ((.), (^), (>))  type RoutePath = (String, Application) 
src/Hack/Contrib/Middleware/ShowExceptions.hs view
@@ -2,19 +2,16 @@  module Hack.Contrib.Middleware.ShowExceptions (show_exceptions) where ++import Data.Default+import Data.Maybe import Hack-import Hack.Contrib.Utils import Hack.Contrib.Middleware.Hub--import MPSUTF8+import Hack.Contrib.Utils+import MPS.Light import Prelude hiding ((.), (^), (>), log)--import Data.Maybe-import Data.Default- import System.IO   import System.IO.Error- import qualified Data.ByteString.Lazy.Char8 as B  program :: String
src/Hack/Contrib/Middleware/ShowStatus.hs view
@@ -12,17 +12,17 @@  module Hack.Contrib.Middleware.ShowStatus (show_status) where ++import Data.Maybe import Hack-import Hack.Contrib.Utils import Hack.Contrib.Constants import Hack.Contrib.Request hiding (body) import Hack.Contrib.Response--import MPSUTF8+import Hack.Contrib.Utils+import MPS+import MPS.Heavy+import MPS.TH import Prelude hiding ((.), (^), (>), head)--import Data.Maybe- import qualified Data.ByteString.Lazy.Char8 as B  show_status :: Middleware
src/Hack/Contrib/Middleware/SimpleAccessLogger.hs view
@@ -1,13 +1,13 @@ module Hack.Contrib.Middleware.SimpleAccessLogger (simple_access_logger) where +import Data.Maybe import Hack-import Hack.Contrib.Utils-import Hack.Contrib.Request import Hack.Contrib.Middleware.Hub--import MPSUTF8+import Hack.Contrib.Request+import Hack.Contrib.Utils+import MPS.Light import Prelude hiding ((.), (^), (>), log)-import Data.Maybe+  program :: String program = "SimpleAccessLogger"
src/Hack/Contrib/Middleware/Static.hs view
@@ -6,14 +6,13 @@  module Hack.Contrib.Middleware.Static (static) where +import Data.Maybe import Hack-import Hack.Contrib.Utils import Hack.Contrib.Middleware.File (file)--import MPSUTF8-import Prelude hiding ((.), (^), (>), (+))-import Data.Maybe+import Hack.Contrib.Utils import List (find, isPrefixOf)+import MPS.Light+import Prelude hiding ((.), (^), (>), (+))  static :: Maybe String -> [String] -> Middleware static root urls app = \env -> do
src/Hack/Contrib/Middleware/URLMap.hs view
@@ -14,10 +14,10 @@  import Hack import Hack.Contrib.Utils--import MPSUTF8-import Prelude hiding ((.), (^), (>)) import List (find, isPrefixOf)+import MPS.Light+import Prelude hiding ((.), (^), (>))+  type RoutePath = (String, Application) 
src/Hack/Contrib/Mime.hs view
@@ -1,8 +1,8 @@ module Hack.Contrib.Mime where -import qualified Data.Map as M-import MPSUTF8+import MPS.Light import Prelude hiding ((.))+import qualified Data.Map as M  lookup_mime_type :: String -> Maybe String lookup_mime_type = flip M.lookup mime_types
src/Hack/Contrib/Request.hs view
@@ -2,20 +2,16 @@  module Hack.Contrib.Request where +import Data.ByteString.Lazy.Char8 (ByteString)+import Data.Maybe import Hack hiding (body) import Hack.Contrib.Constants--import Prelude hiding ((.), (^), (>), (+))-import MPSUTF8 import Hack.Contrib.Utils-import Data.Maybe-import Network.CGI.Protocol+import MPS import Network.CGI.Cookie-import Data.ByteString.Lazy.Char8 (ByteString)+import Network.CGI.Protocol+import Prelude hiding ((.), (^), (>), (+)) import qualified Data.ByteString.Lazy.Char8 as B---- import qualified Happstack.Server.MessageWrap as HM--- import qualified Happstack.Server.HTTP.Types as HT  body :: Env -> ByteString body = hack_input
src/Hack/Contrib/Response.hs view
@@ -2,16 +2,15 @@  module Hack.Contrib.Response where +import Data.ByteString.Lazy.Char8 (ByteString)+import Data.Maybe import Hack-import Hack.Contrib.Utils import Hack.Contrib.Constants--import MPSUTF8+import Hack.Contrib.Utils+import MPS.Light import Prelude hiding ((.), (^), (>), (+))--import Data.Maybe-import Data.ByteString.Lazy.Char8 (ByteString) import qualified Data.ByteString.Lazy.Char8 as B+  redirect :: String -> Maybe Int -> Response -> Response redirect target code = 
src/Hack/Contrib/Utils.hs view
@@ -3,22 +3,19 @@  module Hack.Contrib.Utils where +import Control.Arrow ((<<<))+import Data.ByteString.Lazy.Char8 (ByteString)+import Data.Default+import Data.List (lookup)+import Data.Time import Hack import Hack.Contrib.Constants--import MPSUTF8-import Prelude hiding ((.), (^), (>), lookup, (+), (/))-+import MPS.Light import Network.URI hiding (path)-import Data.Default--import Control.Arrow ((<<<))-import qualified Data.Map as M-import Data.Time-import Data.Maybe-import Data.List (lookup)-import Data.ByteString.Lazy.Char8 (ByteString)+import Prelude hiding ((.), (^), (>), lookup, (+), (/))+import System.Locale (defaultTimeLocale) import qualified Data.ByteString.Lazy.Char8 as B+import qualified Data.Map as M  empty_app :: Application empty_app = return def@@ -62,8 +59,15 @@ show_status_message :: Int -> Maybe String show_status_message x = status_code.M.lookup x +now :: IO UTCTime+now = getCurrentTime+ httpdate :: UTCTime -> String httpdate x = x.format_time "%a, %d %b %Y %X GMT"+++format_time :: String -> UTCTime -> String+format_time = formatTime defaultTimeLocale  request_method    :: Env -> RequestMethod script_name       :: Env -> String