Revert "Fix pedantic errors"

This reverts commit a104b30da2.
This commit is contained in:
Felipe Lessa 2016-02-12 18:45:45 -02:00
parent 7166172251
commit 3c7c311995
3 changed files with 19 additions and 10 deletions

View File

@ -44,6 +44,7 @@ module Database.Esqueleto.Internal.Language
, else_
) where
import Control.Applicative (Applicative(..), (<$>))
import Control.Exception (Exception)
import Data.Int (Int64)
import Data.Typeable (Typeable)
@ -51,6 +52,7 @@ import Database.Esqueleto.Internal.PersistentImport
import Text.Blaze.Html (Html)
import qualified Data.ByteString as B
import qualified Data.ByteString.Lazy as BL
import qualified Data.Text as T
import qualified Data.Text.Lazy as TL

View File

@ -50,6 +50,7 @@ module Database.Esqueleto.Internal.Sql
, veryUnsafeCoerceSqlExprValueList
) where
import Control.Applicative (Applicative(..), (<$>), (<$))
import Control.Arrow ((***), first)
import Control.Exception (throw, throwIO)
import Control.Monad (ap, MonadPlus(..), liftM)
@ -59,7 +60,7 @@ import Control.Monad.Trans.Resource (MonadResource)
import Data.Acquire (with, allocateAcquire, Acquire)
import Data.Int (Int64)
import Data.List (intersperse)
import Data.Monoid (Last(..), (<>))
import Data.Monoid (Last(..), Monoid(..), (<>))
import Data.Proxy (Proxy(..))
import Database.Esqueleto.Internal.PersistentImport
import Database.Persist.Sql.Util (entityColumnNames, entityColumnCount, parseEntityValues, isIdField, hasCompositeKey)
@ -416,7 +417,6 @@ instance Esqueleto SqlQuery SqlExpr SqlBackend where
where
toDistinctOn :: SqlExpr OrderBy -> SqlExpr DistinctOn
toDistinctOn (EOrderBy _ f) = EDistinctOn f
toDistinctOn EOrderRandom = error "toDistinctOn get an EOrderRandom but expect an EOrderBy"
sub_select = sub SELECT
sub_selectDistinct = sub_select . distinct
@ -647,7 +647,7 @@ unsafeSqlBinOpComposite op sep a b = ERaw Parens $ compose (listify a) (listify
deconstruct :: (TLB.Builder, [PersistValue]) -> ([TLB.Builder], [PersistValue])
deconstruct ("?", [PersistList vals]) = (replicate (length vals) "?", vals)
deconstruct (b', []) = (TLB.fromLazyText <$> TL.splitOn "," (TLB.toLazyText b'), [])
deconstruct (b, []) = (TLB.fromLazyText <$> TL.splitOn "," (TLB.toLazyText b), [])
deconstruct x = err $ "cannot deconstruct " ++ show x ++ "."
compose f1 f2 info

View File

@ -18,17 +18,21 @@
#-}
module Main (main) where
import Control.Applicative ((<$>))
import Control.Arrow ((&&&))
import Control.Exception (IOException)
import Control.Monad (forM_, replicateM, replicateM_, void)
import Control.Monad.IO.Class (MonadIO(liftIO))
import Control.Monad.Logger (MonadLogger(..), runStderrLoggingT, runNoLoggingT)
import Control.Monad.Trans.Control (MonadBaseControl(..))
import Control.Monad.Trans.Reader (ReaderT)
import Data.Char (toLower, toUpper)
import Data.List (sortBy)
import Data.Monoid ((<>))
import Data.Ord (comparing)
import Database.Esqueleto
#if defined (WITH_POSTGRESQL)
import Database.Persist.Postgresql (withPostgresqlConn)
import qualified Database.Esqueleto.PostgreSQL as EP
#elif defined (WITH_MYSQL)
import Database.Persist.MySQL ( withMySQLConn
, connectHost
@ -49,6 +53,7 @@ import qualified Control.Monad.Trans.Resource as R
import qualified Data.List as L
import qualified Data.Set as S
import qualified Data.Text.Lazy.Builder as TLB
import qualified Database.Esqueleto.PostgreSQL as EP
import qualified Database.Esqueleto.Internal.Sql as EI
@ -803,6 +808,8 @@ main = do
orderBy [asc title]
return title
liftIO $ ret `shouldBe` [ Value t1, Value t2, Value t3 ]
it "works on a simple example (selectDistinct)" $
selDistTest selectDistinct
it "works on a simple example (select . distinct)" $
selDistTest (select . distinct)
@ -1300,15 +1307,15 @@ main = do
-- reaction to the clause.
let sanityCheck kind syntax = do
let complexQuery =
from $ \(pl `InnerJoin` pr) -> do
on (pl ^. PersonName ==. pr ^. PersonName)
where_ (pl ^. PersonFavNum >. val 2)
orderBy [desc (pr ^. PersonAge)]
from $ \(p1 `InnerJoin` p2) -> do
on (p1 ^. PersonName ==. p2 ^. PersonName)
where_ (p1 ^. PersonFavNum >. val 2)
orderBy [desc (p2 ^. PersonAge)]
limit 3
offset 9
groupBy (pl ^. PersonId)
groupBy (p1 ^. PersonId)
having (countRows <. val (0 :: Int))
return (pl, pr)
return (p1, p2)
queryWithClause1 = do
r <- complexQuery
locking kind