From f54658160ff6481ddd7acb10586fedc9e4f25b06 Mon Sep 17 00:00:00 2001 From: Aaron Friel Date: Mon, 23 Jan 2017 18:09:24 +0000 Subject: [PATCH] Fix some lints --- lib/Cache.hs | 5 +---- lib/Config.hs | 8 +++----- lib/Guide.hs | 15 ++++++--------- lib/JS.hs | 15 ++++++--------- lib/Markdown.hs | 11 ++++------- lib/Merge.hs | 8 +++----- lib/SafeCopy.hs | 6 ++---- lib/Types.hs | 16 +++++++--------- lib/Utils.hs | 32 +++++++++++++++----------------- lib/View.hs | 15 ++++++--------- 10 files changed, 53 insertions(+), 78 deletions(-) diff --git a/lib/Cache.hs b/lib/Cache.hs index 45bb522..c621008 100644 --- a/lib/Cache.hs +++ b/lib/Cache.hs @@ -1,7 +1,4 @@ -{-# LANGUAGE -NoImplicitPrelude - #-} - +{-# LANGUAGE NoImplicitPrelude #-} module Cache ( diff --git a/lib/Config.hs b/lib/Config.hs index 89c2d8b..e3591c6 100644 --- a/lib/Config.hs +++ b/lib/Config.hs @@ -1,7 +1,5 @@ -{-# LANGUAGE -OverloadedStrings, -NoImplicitPrelude - #-} +{-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE NoImplicitPrelude #-} module Config @@ -69,7 +67,7 @@ readConfig :: IO Config readConfig = do let filename = "config.json" exists <- doesFileExist filename - when (not exists) $ do + unless exists $ do putStrLn "config.json doesn't exist, creating it" BSL.writeFile filename (Aeson.encodePretty (def :: Config)) contents <- BSL.fromStrict <$> BS.readFile filename diff --git a/lib/Guide.hs b/lib/Guide.hs index 6849ee6..1cc2c1f 100644 --- a/lib/Guide.hs +++ b/lib/Guide.hs @@ -1,12 +1,9 @@ -{-# LANGUAGE -OverloadedStrings, -ScopedTypeVariables, -TypeFamilies, -DataKinds, -FlexibleContexts, -NoImplicitPrelude - #-} - +{-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE ScopedTypeVariables #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE NoImplicitPrelude #-} module Guide ( diff --git a/lib/JS.hs b/lib/JS.hs index 874c3bc..7502d7f 100644 --- a/lib/JS.hs +++ b/lib/JS.hs @@ -1,12 +1,9 @@ -{-# LANGUAGE -FlexibleInstances, -GeneralizedNewtypeDeriving, -OverloadedStrings, -QuasiQuotes, -BangPatterns, -NoImplicitPrelude - #-} - +{-# LANGUAGE FlexibleInstances #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE QuasiQuotes #-} +{-# LANGUAGE BangPatterns #-} +{-# LANGUAGE NoImplicitPrelude #-} -- TODO: try to make it more type-safe somehow? diff --git a/lib/Markdown.hs b/lib/Markdown.hs index 62f508d..da2a76e 100644 --- a/lib/Markdown.hs +++ b/lib/Markdown.hs @@ -1,10 +1,7 @@ -{-# LANGUAGE -OverloadedStrings, -FlexibleInstances, -FlexibleContexts, -NoImplicitPrelude - #-} - +{-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE FlexibleInstances #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE NoImplicitPrelude #-} module Markdown ( diff --git a/lib/Merge.hs b/lib/Merge.hs index e6931cd..6962c6b 100644 --- a/lib/Merge.hs +++ b/lib/Merge.hs @@ -1,7 +1,5 @@ -{-# LANGUAGE -OverloadedStrings, -NoImplicitPrelude - #-} +{-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE NoImplicitPrelude #-} module Merge @@ -36,7 +34,7 @@ merge orig a b = T.concat . V.toList $ PV.apply (pa <> pb') orig' V.fromList . consolidate . map T.toStrict . break' . T.toString pa = PV.diff orig' a' pb = PV.diff orig' b' - (_, pb') = PV.transformWith PV.ours pa pb + (_, pb') = PV.transformWith PV.ours pa pb -- | Break a string into words, spaces, and special characters. break' :: String -> [String] diff --git a/lib/SafeCopy.hs b/lib/SafeCopy.hs index 2617297..dd13964 100644 --- a/lib/SafeCopy.hs +++ b/lib/SafeCopy.hs @@ -1,6 +1,4 @@ -{-# LANGUAGE -CPP - #-} +{-# LANGUAGE CPP #-} -- Hack for bug in older Cabal versions @@ -38,7 +36,7 @@ internalDeriveSafeCopySorted versionId kindName tyName = do internalDeriveSafeCopySorted' versionId kindName tyName info internalDeriveSafeCopySorted' :: Version a -> Name -> Name -> Info -> Q [Dec] -internalDeriveSafeCopySorted' versionId kindName tyName info = do +internalDeriveSafeCopySorted' versionId kindName tyName info = case info of #if MIN_VERSION_template_haskell(2,11,0) TyConI (DataD context _name tyvars _kind cons _derivs) diff --git a/lib/Types.hs b/lib/Types.hs index be39574..b9e92ca 100644 --- a/lib/Types.hs +++ b/lib/Types.hs @@ -1,11 +1,9 @@ -{-# LANGUAGE -QuasiQuotes, -FlexibleContexts, -FlexibleInstances, -TypeFamilies, -OverloadedStrings, -NoImplicitPrelude - #-} +{-# LANGUAGE QuasiQuotes #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE FlexibleInstances #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE NoImplicitPrelude #-} {-# OPTIONS_GHC -fno-warn-orphans #-} @@ -935,7 +933,7 @@ setItemGroup itemId newGroup = do -- is moved to a different group. Note that this is done after adding a new -- group because we also want the color to change. So, if the item was the -- only item in its group, the sequence of actions is as follows: - -- + -- -- * new group is added (and hence a new color is assigned) -- * old group is deleted (and now the old color is unused) oldGroup <- use (itemLens.group_) diff --git a/lib/Utils.hs b/lib/Utils.hs index 014a9ea..a8d4061 100644 --- a/lib/Utils.hs +++ b/lib/Utils.hs @@ -1,13 +1,11 @@ -{-# LANGUAGE -ScopedTypeVariables, -QuasiQuotes, -OverloadedStrings, -GeneralizedNewtypeDeriving, -FlexibleContexts, -FlexibleInstances, -TypeFamilies, -NoImplicitPrelude - #-} +{-# LANGUAGE ScopedTypeVariables #-} +{-# LANGUAGE QuasiQuotes #-} +{-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE FlexibleInstances #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE NoImplicitPrelude #-} {-# OPTIONS_GHC -fno-warn-orphans #-} @@ -32,7 +30,7 @@ module Utils -- * IP sockAddrToIP, - + -- * UID Uid(..), Node, @@ -114,12 +112,12 @@ import Data.Generics.Uniplate.Data (transform) -- | Move the -1st element that satisfies the predicate- up. moveUp :: (a -> Bool) -> [a] -> [a] -moveUp p (x:y:xs) = if p y then (y:x:xs) else x : moveUp p (y:xs) +moveUp p (x:y:xs) = if p y then y : x : xs else x : moveUp p (y:xs) moveUp _ xs = xs -- | Move the -1st element that satisfies the predicate- down. moveDown :: (a -> Bool) -> [a] -> [a] -moveDown p (x:y:xs) = if p x then (y:x:xs) else x : moveDown p (y:xs) +moveDown p (x:y:xs) = if p x then y : x : xs else x : moveDown p (y:xs) moveDown _ xs = xs deleteFirst :: (a -> Bool) -> [a] -> [a] @@ -386,11 +384,11 @@ changelog bareTyName (newVer, Past oldVer) changes = do _ -> fail "changelog: the type must be a record" -- Check that all 'Added' fields are actually present in the new type -- and that all 'Removed' fields aren't there - for_ (M.keys added) $ \n -> do + for_ (M.keys added) $ \n -> unless (n `elem` map fst fields) $ fail $ printf "changelog: field %s isn't present in %s" (show (mkNew n)) (show newTyName) - for_ (M.keys removed) $ \n -> do + for_ (M.keys removed) $ \n -> when (n `elem` map fst fields) $ fail $ printf "changelog: field %s is present in %s \ \but was supposed to be removed" @@ -491,7 +489,7 @@ genVer tyName ver constructors = do (bangType bangNotStrict (conT fType)) | (fName, fType) <- fields] - cons' <- for constructors $ \genCons -> do + cons' <- for constructors $ \genCons -> case genCons of Copy conName -> copyConstructor conName Custom conName fields -> customConstructor conName fields @@ -546,7 +544,7 @@ migrateVer tyName ver constructors = do (normalB res) [] - branches' <- for constructors $ \genCons -> do + branches' <- for constructors $ \genCons -> case genCons of CopyM conName -> copyConstructor conName CustomM conName res -> customConstructor conName res diff --git a/lib/View.hs b/lib/View.hs index b1dd793..e5e2f9c 100644 --- a/lib/View.hs +++ b/lib/View.hs @@ -1,10 +1,7 @@ -{-# LANGUAGE -QuasiQuotes, -OverloadedStrings, -FlexibleContexts, -NoImplicitPrelude - #-} - +{-# LANGUAGE QuasiQuotes #-} +{-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE NoImplicitPrelude #-} module View ( @@ -1258,7 +1255,7 @@ markdownEditor attr (view mdText -> s) submit cancel instr = do cancel emptySpan "6px" span_ [class_ "edit-field-instruction"] (toHtml instr) - a_ [href_ "/markdown", target_ "_blank"] $ + a_ [href_ "/markdown", target_ "_blank"] $ img_ [src_ "/markdown.svg", alt_ "markdown supported", class_ " markdown-supported "] smallMarkdownEditor @@ -1284,7 +1281,7 @@ smallMarkdownEditor attr (view mdText -> s) submit mbCancel instr = do cancel span_ [style_ "float:right"] $ do span_ [class_ "edit-field-instruction"] (toHtml instr) - a_ [href_ "/markdown", target_ "_blank"] $ + a_ [href_ "/markdown", target_ "_blank"] $ img_ [src_ "/markdown.svg", alt_ "markdown supported", class_ " markdown-supported "] thisNode :: MonadIO m => HtmlT m JQuerySelector