ghc 8.8.3 updates
This commit is contained in:
parent
28ee87890e
commit
6ed148f838
26
espial.cabal
26
espial.cabal
|
@ -4,7 +4,7 @@ cabal-version: 1.12
|
|||
--
|
||||
-- see: https://github.com/sol/hpack
|
||||
--
|
||||
-- hash: 1a0707be00fc3010695ab3d7f1d1d1fcb6d5039e47d101b2a6919332eb864f83
|
||||
-- hash: b6f4cdc1abf4e7a6b5bbc1382963c22cc62bbbe8c4ae5e5394cf6fe5fc1ff9cb
|
||||
|
||||
name: espial
|
||||
version: 0.0.8
|
||||
|
@ -123,7 +123,7 @@ library
|
|||
Paths_espial
|
||||
hs-source-dirs:
|
||||
src
|
||||
default-extensions: BangPatterns CPP ConstraintKinds DataKinds DeriveDataTypeable DeriveGeneric EmptyDataDecls FlexibleContexts FlexibleInstances GADTs GeneralizedNewtypeDeriving InstanceSigs KindSignatures LambdaCase MultiParamTypeClasses MultiWayIf NoImplicitPrelude OverloadedStrings PolyKinds PolymorphicComponents QuasiQuotes Rank2Types RankNTypes RecordWildCards ScopedTypeVariables StandaloneDeriving TemplateHaskell TupleSections TypeApplications TypeFamilies TypeOperators TypeSynonymInstances ViewPatterns
|
||||
default-extensions: BangPatterns CPP ConstraintKinds DataKinds DeriveDataTypeable DeriveGeneric DerivingStrategies EmptyDataDecls FlexibleContexts FlexibleInstances GADTs GeneralizedNewtypeDeriving InstanceSigs KindSignatures LambdaCase MultiParamTypeClasses MultiWayIf NoImplicitPrelude OverloadedStrings PolyKinds PolymorphicComponents QuasiQuotes Rank2Types RankNTypes RecordWildCards ScopedTypeVariables StandaloneDeriving TemplateHaskell TupleSections TypeApplications TypeFamilies TypeOperators TypeSynonymInstances UndecidableInstances ViewPatterns
|
||||
build-depends:
|
||||
aeson >=1.4
|
||||
, attoparsec
|
||||
|
@ -141,7 +141,7 @@ library
|
|||
, directory >=1.1 && <1.4
|
||||
, entropy
|
||||
, esqueleto
|
||||
, fast-logger >=2.2 && <2.5
|
||||
, fast-logger >=2.2 && <4
|
||||
, file-embed
|
||||
, foreign-store
|
||||
, hjsmin >=0.1 && <0.3
|
||||
|
@ -157,7 +157,7 @@ library
|
|||
, monad-logger >=0.3 && <0.4
|
||||
, mtl
|
||||
, parser-combinators
|
||||
, persistent >=2.8 && <2.10
|
||||
, persistent >=2.8 && <2.11
|
||||
, persistent-sqlite >=2.6.2
|
||||
, persistent-template >=2.5 && <2.9
|
||||
, pretty-show
|
||||
|
@ -194,7 +194,7 @@ executable espial
|
|||
Paths_espial
|
||||
hs-source-dirs:
|
||||
app
|
||||
default-extensions: BangPatterns CPP ConstraintKinds DataKinds DeriveDataTypeable DeriveGeneric EmptyDataDecls FlexibleContexts FlexibleInstances GADTs GeneralizedNewtypeDeriving InstanceSigs KindSignatures LambdaCase MultiParamTypeClasses MultiWayIf NoImplicitPrelude OverloadedStrings PolyKinds PolymorphicComponents QuasiQuotes Rank2Types RankNTypes RecordWildCards ScopedTypeVariables StandaloneDeriving TemplateHaskell TupleSections TypeApplications TypeFamilies TypeOperators TypeSynonymInstances ViewPatterns
|
||||
default-extensions: BangPatterns CPP ConstraintKinds DataKinds DeriveDataTypeable DeriveGeneric DerivingStrategies EmptyDataDecls FlexibleContexts FlexibleInstances GADTs GeneralizedNewtypeDeriving InstanceSigs KindSignatures LambdaCase MultiParamTypeClasses MultiWayIf NoImplicitPrelude OverloadedStrings PolyKinds PolymorphicComponents QuasiQuotes Rank2Types RankNTypes RecordWildCards ScopedTypeVariables StandaloneDeriving TemplateHaskell TupleSections TypeApplications TypeFamilies TypeOperators TypeSynonymInstances UndecidableInstances ViewPatterns
|
||||
ghc-options: -threaded -rtsopts -with-rtsopts=-N
|
||||
build-depends:
|
||||
aeson >=1.4
|
||||
|
@ -214,7 +214,7 @@ executable espial
|
|||
, entropy
|
||||
, espial
|
||||
, esqueleto
|
||||
, fast-logger >=2.2 && <2.5
|
||||
, fast-logger >=2.2 && <4
|
||||
, file-embed
|
||||
, foreign-store
|
||||
, hjsmin >=0.1 && <0.3
|
||||
|
@ -230,7 +230,7 @@ executable espial
|
|||
, monad-logger >=0.3 && <0.4
|
||||
, mtl
|
||||
, parser-combinators
|
||||
, persistent >=2.8 && <2.10
|
||||
, persistent >=2.8 && <2.11
|
||||
, persistent-sqlite >=2.6.2
|
||||
, persistent-template >=2.5 && <2.9
|
||||
, pretty-show
|
||||
|
@ -263,7 +263,7 @@ executable migration
|
|||
Paths_espial
|
||||
hs-source-dirs:
|
||||
app/migration
|
||||
default-extensions: BangPatterns CPP ConstraintKinds DataKinds DeriveDataTypeable DeriveGeneric EmptyDataDecls FlexibleContexts FlexibleInstances GADTs GeneralizedNewtypeDeriving InstanceSigs KindSignatures LambdaCase MultiParamTypeClasses MultiWayIf NoImplicitPrelude OverloadedStrings PolyKinds PolymorphicComponents QuasiQuotes Rank2Types RankNTypes RecordWildCards ScopedTypeVariables StandaloneDeriving TemplateHaskell TupleSections TypeApplications TypeFamilies TypeOperators TypeSynonymInstances ViewPatterns
|
||||
default-extensions: BangPatterns CPP ConstraintKinds DataKinds DeriveDataTypeable DeriveGeneric DerivingStrategies EmptyDataDecls FlexibleContexts FlexibleInstances GADTs GeneralizedNewtypeDeriving InstanceSigs KindSignatures LambdaCase MultiParamTypeClasses MultiWayIf NoImplicitPrelude OverloadedStrings PolyKinds PolymorphicComponents QuasiQuotes Rank2Types RankNTypes RecordWildCards ScopedTypeVariables StandaloneDeriving TemplateHaskell TupleSections TypeApplications TypeFamilies TypeOperators TypeSynonymInstances UndecidableInstances ViewPatterns
|
||||
ghc-options: -threaded -rtsopts -with-rtsopts=-N
|
||||
build-depends:
|
||||
aeson >=1.4
|
||||
|
@ -283,7 +283,7 @@ executable migration
|
|||
, entropy
|
||||
, espial
|
||||
, esqueleto
|
||||
, fast-logger >=2.2 && <2.5
|
||||
, fast-logger >=2.2 && <4
|
||||
, file-embed
|
||||
, foreign-store
|
||||
, hjsmin >=0.1 && <0.3
|
||||
|
@ -300,7 +300,7 @@ executable migration
|
|||
, mtl
|
||||
, optparse-generic >=1.2.3
|
||||
, parser-combinators
|
||||
, persistent >=2.8 && <2.10
|
||||
, persistent >=2.8 && <2.11
|
||||
, persistent-sqlite >=2.6.2
|
||||
, persistent-template >=2.5 && <2.9
|
||||
, pretty-show
|
||||
|
@ -337,7 +337,7 @@ test-suite test
|
|||
Paths_espial
|
||||
hs-source-dirs:
|
||||
test
|
||||
default-extensions: BangPatterns CPP ConstraintKinds DataKinds DeriveDataTypeable DeriveGeneric EmptyDataDecls FlexibleContexts FlexibleInstances GADTs GeneralizedNewtypeDeriving InstanceSigs KindSignatures LambdaCase MultiParamTypeClasses MultiWayIf NoImplicitPrelude OverloadedStrings PolyKinds PolymorphicComponents QuasiQuotes Rank2Types RankNTypes RecordWildCards ScopedTypeVariables StandaloneDeriving TemplateHaskell TupleSections TypeApplications TypeFamilies TypeOperators TypeSynonymInstances ViewPatterns
|
||||
default-extensions: BangPatterns CPP ConstraintKinds DataKinds DeriveDataTypeable DeriveGeneric DerivingStrategies EmptyDataDecls FlexibleContexts FlexibleInstances GADTs GeneralizedNewtypeDeriving InstanceSigs KindSignatures LambdaCase MultiParamTypeClasses MultiWayIf NoImplicitPrelude OverloadedStrings PolyKinds PolymorphicComponents QuasiQuotes Rank2Types RankNTypes RecordWildCards ScopedTypeVariables StandaloneDeriving TemplateHaskell TupleSections TypeApplications TypeFamilies TypeOperators TypeSynonymInstances UndecidableInstances ViewPatterns
|
||||
ghc-options: -Wall
|
||||
build-depends:
|
||||
aeson >=1.4
|
||||
|
@ -357,7 +357,7 @@ test-suite test
|
|||
, entropy
|
||||
, espial
|
||||
, esqueleto
|
||||
, fast-logger >=2.2 && <2.5
|
||||
, fast-logger >=2.2 && <4
|
||||
, file-embed
|
||||
, foreign-store
|
||||
, hjsmin >=0.1 && <0.3
|
||||
|
@ -374,7 +374,7 @@ test-suite test
|
|||
, monad-logger >=0.3 && <0.4
|
||||
, mtl
|
||||
, parser-combinators
|
||||
, persistent >=2.8 && <2.10
|
||||
, persistent >=2.8 && <2.11
|
||||
, persistent-sqlite >=2.6.2
|
||||
, persistent-template >=2.5 && <2.9
|
||||
, pretty-show
|
||||
|
|
|
@ -47,6 +47,7 @@ default-extensions:
|
|||
- DataKinds
|
||||
- DeriveDataTypeable
|
||||
- DeriveGeneric
|
||||
- DerivingStrategies
|
||||
- EmptyDataDecls
|
||||
- FlexibleContexts
|
||||
- FlexibleInstances
|
||||
|
@ -73,6 +74,7 @@ default-extensions:
|
|||
- TypeFamilies
|
||||
- TypeOperators
|
||||
- TypeSynonymInstances
|
||||
- UndecidableInstances
|
||||
- ViewPatterns
|
||||
|
||||
dependencies:
|
||||
|
@ -92,7 +94,7 @@ dependencies:
|
|||
- classy-prelude-yesod >=1.4 && <1.6
|
||||
- bytestring >=0.9 && <0.11
|
||||
- text >=0.11 && <2.0
|
||||
- persistent >=2.8 && <2.10
|
||||
- persistent >=2.8 && <2.11
|
||||
# - persistent-postgresql >=2.8 && <2.9
|
||||
- blaze-html >= 0.9 && < 1.0
|
||||
- persistent-template >=2.5 && <2.9
|
||||
|
@ -110,7 +112,7 @@ dependencies:
|
|||
# - aeson >=0.6 && <1.4
|
||||
- conduit >=1.0 && <2.0
|
||||
- monad-logger >=0.3 && <0.4
|
||||
- fast-logger >=2.2 && <2.5
|
||||
- fast-logger >=2.2 && <4
|
||||
- wai-logger >=2.2 && <2.4
|
||||
- file-embed
|
||||
- safe
|
||||
|
|
|
@ -28,7 +28,6 @@ import Network.Wai.Middleware.Gzip
|
|||
import Network.Wai.Middleware.MethodOverride
|
||||
import Network.Wai.Middleware.RequestLogger (Destination(Logger), IPAddrSource(..), OutputFormat(..), destination, mkRequestLogger, outputFormat)
|
||||
import System.Log.FastLogger (defaultBufSize, newStdoutLoggerSet, toLogStr)
|
||||
import Yesod.Auth (getAuth)
|
||||
|
||||
-- import qualified Control.Monad.Metrics as MM
|
||||
-- import qualified Network.Wai.Metrics as WM
|
||||
|
|
|
@ -6,7 +6,6 @@ import Handler.Common (lookupPagingParams)
|
|||
import qualified Data.Aeson as A
|
||||
import qualified Data.Text as T
|
||||
import Yesod.RssFeed
|
||||
import Text.Blaze.Html (toHtml)
|
||||
import qualified Text.Blaze.Html5 as H
|
||||
|
||||
getNotesR :: UserNameP -> Handler Html
|
||||
|
|
|
@ -4,7 +4,6 @@ module Handler.User where
|
|||
import qualified Data.Text as T
|
||||
import Handler.Common
|
||||
import Import
|
||||
import Text.Blaze.Html (toHtml)
|
||||
import qualified Text.Blaze.Html5 as H
|
||||
import Yesod.RssFeed
|
||||
import qualified Database.Esqueleto as E
|
||||
|
|
22
src/Model.hs
22
src/Model.hs
|
@ -3,7 +3,9 @@
|
|||
module Model where
|
||||
|
||||
import qualified ClassyPrelude.Yesod as CP
|
||||
import Control.Monad.Fail (MonadFail)
|
||||
import qualified Data.Aeson as A
|
||||
import qualified Data.Aeson.Types as A (parseFail)
|
||||
import qualified Data.Attoparsec.Text as P
|
||||
import qualified Control.Monad.Combinators as PC
|
||||
import qualified Data.List.NonEmpty as NE
|
||||
|
@ -245,7 +247,7 @@ parseSearchQuery toExpr =
|
|||
quotedTerm = PC.between (P.char '"') (P.char '"') (P.takeWhile1 (/= '"'))
|
||||
simpleTerm = P.takeWhile1 (\c -> not (isSpace c) && c /= ':' && c /= '|')
|
||||
|
||||
parseTimeText :: (TI.ParseTime t, Monad m, Alternative m) => Text -> m t
|
||||
parseTimeText :: (TI.ParseTime t, MonadFail m, Alternative m) => Text -> m t
|
||||
parseTimeText t =
|
||||
asum $
|
||||
flip (parseTimeM True defaultTimeLocale) (unpack t) <$>
|
||||
|
@ -426,8 +428,8 @@ instance FromJSON TagCloudMode where
|
|||
Just (String "lowerBound") -> TagCloudModeLowerBound <$> o .: "expanded" <*> o .: "value"
|
||||
Just (String "related") -> TagCloudModeRelated <$> o .: "expanded" <*> (fmap words (o .: "value"))
|
||||
Just (String "none") -> pure TagCloudModeNone
|
||||
_ -> fail "bad parse"
|
||||
parseJSON _ = fail "bad parse"
|
||||
_ -> A.parseFail "bad parse"
|
||||
parseJSON _ = A.parseFail "bad parse"
|
||||
|
||||
instance ToJSON TagCloudMode where
|
||||
toJSON (TagCloudModeTop e i) =
|
||||
|
@ -635,9 +637,9 @@ upsertBookmark userId mbid bm tags = do
|
|||
get bid >>= \case
|
||||
Just prev_bm -> do
|
||||
when (userId /= bookmarkUserId prev_bm)
|
||||
(fail "unauthorized")
|
||||
(throwString "unauthorized")
|
||||
replaceBookmark bid prev_bm
|
||||
_ -> fail "not found"
|
||||
_ -> throwString "not found"
|
||||
Nothing -> do
|
||||
getBy (UniqueUserHref (bookmarkUserId bm) (bookmarkHref bm)) >>= \case
|
||||
Just (Entity bid prev_bm) -> replaceBookmark bid prev_bm
|
||||
|
@ -672,10 +674,10 @@ upsertNote userId mnid note = do
|
|||
get nid >>= \case
|
||||
Just note' -> do
|
||||
when (userId /= (noteUserId note'))
|
||||
(fail "unauthorized")
|
||||
(throwString "unauthorized")
|
||||
replace nid note
|
||||
pure (Updated, nid)
|
||||
_ -> fail "not found"
|
||||
_ -> throwString "not found"
|
||||
Nothing -> do
|
||||
(Created,) <$> insert note
|
||||
|
||||
|
@ -702,7 +704,7 @@ instance FromJSON FileBookmark where
|
|||
(o A..:? "selected") <*>
|
||||
(o A..:? "archive_url") <*>
|
||||
(o .: "tags")
|
||||
parseJSON _ = fail "bad parse"
|
||||
parseJSON _ = A.parseFail "bad parse"
|
||||
|
||||
instance ToJSON FileBookmark where
|
||||
toJSON (FileBookmark {..}) =
|
||||
|
@ -743,7 +745,7 @@ instance FromJSON FileNote where
|
|||
o .: "length" <*>
|
||||
(readFileNoteTime =<< o .: "created_at") <*>
|
||||
(readFileNoteTime =<< o .: "updated_at")
|
||||
parseJSON _ = fail "bad parse"
|
||||
parseJSON _ = A.parseFail "bad parse"
|
||||
|
||||
instance ToJSON FileNote where
|
||||
toJSON (FileNote {..}) =
|
||||
|
@ -757,7 +759,7 @@ instance ToJSON FileNote where
|
|||
]
|
||||
|
||||
readFileNoteTime
|
||||
:: Monad m
|
||||
:: MonadFail m
|
||||
=> String -> m UTCTime
|
||||
readFileNoteTime = parseTimeM True defaultTimeLocale "%F %T"
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
resolver: lts-14.27
|
||||
resolver: nightly-2020-03-29
|
||||
# allow-newer: true
|
||||
packages:
|
||||
- '.'
|
||||
|
|
|
@ -41,7 +41,7 @@ packages:
|
|||
hackage: yesod-newsfeed-1.7.0.0
|
||||
snapshots:
|
||||
- completed:
|
||||
size: 524996
|
||||
url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/14/27.yaml
|
||||
sha256: 7ea31a280c56bf36ff591a7397cc384d0dff622e7f9e4225b47d8980f019a0f0
|
||||
original: lts-14.27
|
||||
size: 507788
|
||||
url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/nightly/2020/3/29.yaml
|
||||
sha256: f5cfc0452d1dc9d3058dcf389278d1cfb72ebc91b1a9bd48e8dde399c9479999
|
||||
original: nightly-2020-03-29
|
||||
|
|
Loading…
Reference in a new issue