From 8c3587329152fdf8f915bb9011b4f80a66435c7b Mon Sep 17 00:00:00 2001 From: Greg Weber Date: Thu, 26 Jan 2012 12:30:38 -0300 Subject: [PATCH 1/5] isDevel -> isCabalDev, print runghc command --- yesod/Devel.hs | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/yesod/Devel.hs b/yesod/Devel.hs index 2a579dc4..007cbbbf 100644 --- a/yesod/Devel.hs +++ b/yesod/Devel.hs @@ -49,7 +49,7 @@ removeLock :: IO () removeLock = try_ (removeFile lockFile) devel :: Bool -> IO () -devel isDevel = do +devel isCabalDev = do writeLock putStrLn "Yesod devel server. Press ENTER to quit" @@ -59,7 +59,7 @@ devel isDevel = do checkCabalFile gpd - _ <- if isDevel + _ <- if isCabalDev then rawSystem "cabal-dev" [ "configure" , "--cabal-install-arg=-fdevel" -- legacy @@ -73,7 +73,7 @@ devel isDevel = do , "--disable-library-profiling" ] - mainLoop isDevel + mainLoop isCabalDev _ <- getLine writeLock @@ -82,20 +82,21 @@ devel isDevel = do mainLoop :: Bool -> IO () -mainLoop isDevel = forever $ do +mainLoop isCabalDev = forever $ do putStrLn "Rebuilding application..." recompDeps list <- getFileList - _ <- if isDevel + _ <- if isCabalDev then rawSystem "cabal-dev" ["build"] else rawSystem "cabal" ["build"] removeLock - putStrLn "Starting development server..." - pkg <- pkgConfigs isDevel - ph <- runCommand $ concat ["runghc ", pkg, " devel.hs"] + pkg <- pkgConfigs isCabalDev + let start = concat ["runghc ", pkg, " devel.hs"] + putStrLn $ "Starting development server: " ++ start + ph <- runCommand start watchTid <- forkIO . try_ $ do watchForChanges list putStrLn "Stopping development server..." From baf10c118f28e9c8ee2a002bb26e3fe6750aee3b Mon Sep 17 00:00:00 2001 From: Felipe Lessa Date: Thu, 26 Jan 2012 16:35:50 -0200 Subject: [PATCH 2/5] Generalize yesod-form fields to take RenderMessage instead of Text. Fixes issue #240. --- yesod-form/Yesod/Form/Fields.hs | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/yesod-form/Yesod/Form/Fields.hs b/yesod-form/Yesod/Form/Fields.hs index ab3446cd..9fa37c38 100644 --- a/yesod-form/Yesod/Form/Fields.hs +++ b/yesod-form/Yesod/Form/Fields.hs @@ -45,6 +45,7 @@ module Yesod.Form.Fields import Yesod.Form.Types import Yesod.Form.I18n.English +import Yesod.Handler (getMessageRender) import Yesod.Widget import Yesod.Message (RenderMessage (renderMessage), SomeMessage (..)) import Text.Hamlet @@ -303,7 +304,7 @@ urlField = Field |] } -selectFieldList :: (Eq a, RenderMessage master FormMessage) => [(Text, a)] -> Field sub master a +selectFieldList :: (Eq a, RenderMessage master FormMessage, RenderMessage master msg) => [(msg, a)] -> Field sub master a selectFieldList = selectField . optionsPairs selectField :: (Eq a, RenderMessage master FormMessage) => GHandler sub master (OptionList a) -> Field sub master a @@ -312,7 +313,7 @@ selectField = selectFieldHelper (\_theId _name isSel -> [WHAMLET|