packages feed

yesod 1.6.2.1 → 1.6.2.3

raw patch · 8 files changed

+47/−24 lines, 8 filesdep ~basedep ~file-embeddep ~yesod-corenew-uploaderPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: base, file-embed, yesod-core

API changes (from Hackage documentation)

- Yesod.Default.Util: instance Data.Default.Class.Default Yesod.Default.Util.WidgetFileSettings
+ Yesod.Default.Util: instance Data.Default.Internal.Default Yesod.Default.Util.WidgetFileSettings

Files

ChangeLog.md view
@@ -1,5 +1,13 @@ # ChangeLog for yesod +## 1.6.2.3++* Support `yesod-core` 1.7++## 1.6.2.2++* Set `base >= 4.11` for less CPP and imports [#1876](https://github.com/yesodweb/yesod/pull/1876)+ ## 1.6.2.1  * Support `template-haskell-2.19.0.0` [#1769](https://github.com/yesodweb/yesod/pull/1769)
Yesod.hs view
@@ -1,5 +1,3 @@-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE CPP #-} -- | This module simply re-exports from other modules for your convenience. module Yesod     ( -- * Re-exports from yesod-core
Yesod/Default/Config.hs view
@@ -1,6 +1,8 @@ {-# LANGUAGE CPP #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE PatternGuards #-}+{-# LANGUAGE ScopedTypeVariables #-}+ module Yesod.Default.Config     ( DefaultEnv (..)     , fromArgs@@ -18,7 +20,15 @@ import Data.Char (toUpper) import Data.Text (Text) import qualified Data.Text as T-import Data.Yaml+import Data.Yaml (+    Object,+    Parser,+    Value (..),+    decodeFileEither,+    parseEither,+    prettyPrintParseException,+    (.:)+ ) import Data.Maybe (fromMaybe) import System.Environment (getArgs, getProgName, getEnvironment) import System.Exit (exitFailure)@@ -44,9 +54,9 @@     , port        :: Int     } deriving Show -parseArgConfig :: (Show env, Read env, Enum env, Bounded env) => IO (ArgConfig env)+parseArgConfig :: forall env. (Show env, Read env, Enum env, Bounded env) => IO (ArgConfig env) parseArgConfig = do-    let envs = [minBound..maxBound]+    let envs = [minBound..maxBound] :: [env]     args <- getArgs     (portS, args') <- getPort id args     portI <-@@ -57,10 +67,7 @@         [e] -> do             case reads $ capitalize e of                 (e', _):_ -> return $ ArgConfig e' portI-                [] -> do-                    () <- error $ "Invalid environment, valid entries are: " ++ show envs-                    -- next line just provided to force the type of envs-                    return $ ArgConfig (head envs) 0+                [] -> error $ "Invalid environment, valid entries are: " ++ show envs         _ -> do             pn <- getProgName             putStrLn $ "Usage: " ++ pn ++ " <environment> [--port <port>]"@@ -194,7 +201,7 @@             _ -> fail "Expected map"      let host    = fromString $ T.unpack $ fromMaybe "*" $ lookupScalar "host"    m-    mport <- parseMonad (\x -> x .: "port") m+    mport <- parseEitherM (\x -> x .: "port") m     let approot' = fromMaybe "" $ lookupScalar "approot" m      -- Handle the DISPLAY_PORT environment variable for yesod devel@@ -207,7 +214,7 @@                     Nothing -> return approot'                     Just p -> return $ prefix `T.append` T.pack (':' : p) -    extra <- parseMonad (parseExtra env) m+    extra <- parseEitherM (parseExtra env) m      -- set some default arguments     let port' = fromMaybe 80 mport@@ -243,5 +250,9 @@         Left err ->           fail $ "Invalid YAML file: " ++ show fp ++ " " ++ prettyPrintParseException err         Right (Object obj)-            | Just v <- M.lookup (fromString $ show env) obj -> parseMonad f v+            | Just v <- M.lookup (fromString $ show env) obj -> parseEitherM f v         _ -> fail $ "Could not find environment: " ++ show env++-- | Replacement for `parseMonad`+parseEitherM :: (a -> Parser b) -> a -> IO b+parseEitherM p = either fail pure . parseEither p
Yesod/Default/Config2.hs view
@@ -1,5 +1,6 @@ {-# LANGUAGE CPP #-} {-# LANGUAGE OverloadedStrings #-}+ -- | Some next-gen helper functions for the scaffolding's configuration system. module Yesod.Default.Config2     ( -- * Locally defined@@ -28,7 +29,6 @@  import Data.Yaml.Config -import Data.Semigroup import Data.Aeson import System.Environment (getEnvironment) import Network.Wai (Application)
Yesod/Default/Handlers.hs view
@@ -1,4 +1,5 @@ {-# LANGUAGE OverloadedStrings #-}+ module Yesod.Default.Handlers     ( getFaviconR     , getRobotsR
Yesod/Default/Main.hs view
@@ -1,6 +1,7 @@-{-# LANGUAGE CPP                #-}-{-# LANGUAGE OverloadedStrings  #-}-{-# LANGUAGE TemplateHaskell    #-}+{-# LANGUAGE CPP #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TemplateHaskell #-}+ module Yesod.Default.Main     ( defaultMain     , defaultMainLog@@ -46,7 +47,7 @@ defaultMain load getApp = do     config <- load     app <- getApp config-    runSettings +    runSettings         ( setPort (appPort config)         $ setHost (appHost config)         $ defaultSettings@@ -64,7 +65,7 @@ defaultMainLog load getApp = do     config <- load     (app, logFunc) <- getApp config-    runSettings +    runSettings         ( setPort (appPort config)         $ setHost (appHost config)         $ setOnException (const $ \e -> when (shouldLog' e) $ logFunc
Yesod/Default/Util.hs view
@@ -1,6 +1,7 @@+{-# LANGUAGE CPP #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE TemplateHaskell #-}-{-# LANGUAGE CPP #-}+ -- | Various utilities used in the scaffolded site. module Yesod.Default.Util     ( addStaticContentExternal@@ -22,7 +23,10 @@ import Control.Monad (when, unless) import Conduit import System.Directory (doesFileExist, createDirectoryIfMissing)-import Language.Haskell.TH.Syntax hiding (makeRelativeToProject)+import Language.Haskell.TH.Syntax+#if MIN_VERSION_template_haskell(2,19,0)+    hiding (makeRelativeToProject)+#endif import Text.Lucius (luciusFile, luciusFileReload) import Text.Julius (juliusFile, juliusFileReload) import Text.Cassius (cassiusFile, cassiusFileReload)
yesod.cabal view
@@ -1,5 +1,5 @@ name:            yesod-version:         1.6.2.1+version:         1.6.2.3 license:         MIT license-file:    LICENSE author:          Michael Snoyman <michael@snoyman.com>@@ -18,14 +18,14 @@     if os(windows)         cpp-options: -DWINDOWS -    build-depends:   base                      >= 4.10     && < 5+    build-depends:   base                      >= 4.11     && < 5                    , aeson                    , bytestring                    , conduit                   >= 1.3                    , data-default-class                    , directory                    , fast-logger-                   , file-embed+                   , file-embed                >= 0.0.10                    , monad-logger                    , shakespeare                    , streaming-commons@@ -37,7 +37,7 @@                    , wai-logger                    , warp                      >= 1.3                    , yaml                      >= 0.8.17-                   , yesod-core                >= 1.6      && < 1.7+                   , yesod-core                >= 1.6      && < 1.8                    , yesod-form                >= 1.6      && < 1.8                    , yesod-persistent          >= 1.6      && < 1.7