diff --git a/hledger-lib/Hledger/Data/AccountName.hs b/hledger-lib/Hledger/Data/AccountName.hs index 0e6e230b8..02e4b8d44 100644 --- a/hledger-lib/Hledger/Data/AccountName.hs +++ b/hledger-lib/Hledger/Data/AccountName.hs @@ -1,6 +1,5 @@ {-# LANGUAGE NoMonomorphismRestriction #-} {-# LANGUAGE OverloadedStrings #-} -{-# LANGUAGE CPP #-} {-| 'AccountName's are strings like @assets:cash:petty@, with multiple @@ -43,9 +42,6 @@ where import Data.Foldable (toList) import qualified Data.List.NonEmpty as NE -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif import qualified Data.Set as S import Data.Text (Text) import qualified Data.Text as T diff --git a/hledger-lib/Hledger/Data/Amount.hs b/hledger-lib/Hledger/Data/Amount.hs index 8d9d9d0f9..b47a9a926 100644 --- a/hledger-lib/Hledger/Data/Amount.hs +++ b/hledger-lib/Hledger/Data/Amount.hs @@ -41,7 +41,6 @@ exchange rates. -} {-# LANGUAGE BangPatterns #-} -{-# LANGUAGE CPP #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE StandaloneDeriving #-} @@ -517,9 +516,6 @@ instance Semigroup MixedAmount where instance Monoid MixedAmount where mempty = nullmixedamt mconcat = maSum -#if !(MIN_VERSION_base(4,11,0)) - mappend = (<>) -#endif instance Num MixedAmount where fromInteger = mixedAmount . fromInteger diff --git a/hledger-lib/Hledger/Data/Commodity.hs b/hledger-lib/Hledger/Data/Commodity.hs index 9d5d48eb3..b877dc7bb 100644 --- a/hledger-lib/Hledger/Data/Commodity.hs +++ b/hledger-lib/Hledger/Data/Commodity.hs @@ -8,7 +8,6 @@ are thousands separated by comma, significant decimal places and so on. -} {-# LANGUAGE OverloadedStrings #-} -{-# LANGUAGE CPP #-} module Hledger.Data.Commodity where @@ -16,9 +15,6 @@ import Control.Applicative (liftA2) import Data.Char (isDigit) import Data.List import Data.Maybe (fromMaybe) -#if !(MIN_VERSION_base(4,11,0)) -import Data.Monoid -#endif import qualified Data.Text as T -- import qualified Data.Map as M diff --git a/hledger-lib/Hledger/Data/Journal.hs b/hledger-lib/Hledger/Data/Journal.hs index d10cce4a6..053c9b108 100644 --- a/hledger-lib/Hledger/Data/Journal.hs +++ b/hledger-lib/Hledger/Data/Journal.hs @@ -1,5 +1,4 @@ {-# LANGUAGE PackageImports #-} -{-# LANGUAGE CPP #-} {-# LANGUAGE LambdaCase #-} {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE OverloadedStrings #-} @@ -110,9 +109,6 @@ import Data.List (find, foldl', sortOn) import Data.List.Extra (nubSort) import qualified Data.Map.Strict as M import Data.Maybe (catMaybes, fromJust, fromMaybe, isJust, mapMaybe, maybeToList) -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup (Semigroup(..)) -#endif import qualified Data.Set as S import Data.Text (Text) import qualified Data.Text as T diff --git a/hledger-lib/Hledger/Data/Json.hs b/hledger-lib/Hledger/Data/Json.hs index 312760e42..e89a5b5b1 100644 --- a/hledger-lib/Hledger/Data/Json.hs +++ b/hledger-lib/Hledger/Data/Json.hs @@ -4,7 +4,6 @@ JSON instances. Should they be in Types.hs ? {-# OPTIONS_GHC -fno-warn-orphans #-} -{-# LANGUAGE CPP #-} --{-# LANGUAGE DataKinds #-} --{-# LANGUAGE DeriveAnyClass #-} {-# LANGUAGE DeriveGeneric #-} @@ -34,9 +33,6 @@ module Hledger.Data.Json ( ,readJsonFile ) where -#if !(MIN_VERSION_base(4,13,0)) -import Data.Semigroup ((<>)) -#endif import Data.Aeson import Data.Aeson.Encode.Pretty (encodePrettyToTextBuilder) --import Data.Aeson.TH diff --git a/hledger-lib/Hledger/Data/PeriodicTransaction.hs b/hledger-lib/Hledger/Data/PeriodicTransaction.hs index 44472f173..0061ffc75 100644 --- a/hledger-lib/Hledger/Data/PeriodicTransaction.hs +++ b/hledger-lib/Hledger/Data/PeriodicTransaction.hs @@ -1,4 +1,3 @@ -{-# LANGUAGE CPP #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RecordWildCards #-} {-| @@ -12,9 +11,6 @@ module Hledger.Data.PeriodicTransaction ( ) where -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif import qualified Data.Text as T import qualified Data.Text.IO as T import Text.Printf diff --git a/hledger-lib/Hledger/Data/Posting.hs b/hledger-lib/Hledger/Data/Posting.hs index 7424de839..4201dd825 100644 --- a/hledger-lib/Hledger/Data/Posting.hs +++ b/hledger-lib/Hledger/Data/Posting.hs @@ -9,7 +9,6 @@ look up the date or description there. -} {-# LANGUAGE OverloadedStrings #-} -{-# LANGUAGE CPP #-} module Hledger.Data.Posting ( -- * Posting @@ -78,9 +77,6 @@ import qualified Data.Map as M import Data.Maybe (fromMaybe, isJust) import Data.MemoUgly (memo) import Data.List (foldl') -#if !(MIN_VERSION_base(4,11,0)) -import Data.Monoid -#endif import Data.Text (Text) import qualified Data.Text as T import Data.Time.Calendar (Day) diff --git a/hledger-lib/Hledger/Data/Timeclock.hs b/hledger-lib/Hledger/Data/Timeclock.hs index 7b67017dd..607ae2b9f 100644 --- a/hledger-lib/Hledger/Data/Timeclock.hs +++ b/hledger-lib/Hledger/Data/Timeclock.hs @@ -6,7 +6,6 @@ converted to 'Transactions' and queried like a ledger. -} -{-# LANGUAGE CPP #-} {-# LANGUAGE OverloadedStrings #-} module Hledger.Data.Timeclock ( @@ -16,10 +15,6 @@ module Hledger.Data.Timeclock ( where import Data.Maybe (fromMaybe) -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif --- import Data.Text (Text) import qualified Data.Text as T import Data.Time.Calendar (addDays) import Data.Time.Clock (addUTCTime, getCurrentTime) diff --git a/hledger-lib/Hledger/Data/Transaction.hs b/hledger-lib/Hledger/Data/Transaction.hs index 094dc9f35..7dac4d6bb 100644 --- a/hledger-lib/Hledger/Data/Transaction.hs +++ b/hledger-lib/Hledger/Data/Transaction.hs @@ -7,7 +7,6 @@ tags. -} -{-# LANGUAGE CPP #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE LambdaCase #-} {-# LANGUAGE OverloadedStrings #-} @@ -67,9 +66,6 @@ import Data.Foldable (asum) import Data.List (intercalate, partition) import Data.List.Extra (nubSort) import Data.Maybe (fromMaybe, isNothing, mapMaybe) -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif import Data.Text (Text) import qualified Data.Text as T import qualified Data.Text.Lazy as TL diff --git a/hledger-lib/Hledger/Data/TransactionModifier.hs b/hledger-lib/Hledger/Data/TransactionModifier.hs index bb74a25ea..e0b69fa13 100644 --- a/hledger-lib/Hledger/Data/TransactionModifier.hs +++ b/hledger-lib/Hledger/Data/TransactionModifier.hs @@ -1,7 +1,6 @@ {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE ViewPatterns #-} -{-# LANGUAGE CPP #-} {-| A 'TransactionModifier' is a rule that modifies certain 'Transaction's, @@ -15,9 +14,6 @@ where import Control.Applicative ((<|>)) import Data.Maybe -#if !(MIN_VERSION_base(4,11,0)) -import Data.Monoid ((<>)) -#endif import qualified Data.Text as T import Data.Time.Calendar import Hledger.Data.Types diff --git a/hledger-lib/Hledger/Data/Types.hs b/hledger-lib/Hledger/Data/Types.hs index c15d04cda..5456df9f9 100644 --- a/hledger-lib/Hledger/Data/Types.hs +++ b/hledger-lib/Hledger/Data/Types.hs @@ -16,7 +16,6 @@ For more detailed documentation on each type, see the corresponding modules. -} -{-# LANGUAGE CPP #-} -- {-# LANGUAGE DeriveAnyClass #-} -- https://hackage.haskell.org/package/deepseq-1.4.4.0/docs/Control-DeepSeq.html#v:rnf {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE FlexibleInstances #-} @@ -40,11 +39,7 @@ import Text.Blaze (ToMarkup(..)) --The stored values don't represent large virtual data structures to be lazily computed. import qualified Data.Map as M import Data.Ord (comparing) -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif import Data.Text (Text) --- import qualified Data.Text as T import Data.Time.Calendar import Data.Time.LocalTime import Data.Word (Word8) diff --git a/hledger-lib/Hledger/Query.hs b/hledger-lib/Hledger/Query.hs index 975cea6b2..14840d9a6 100644 --- a/hledger-lib/Hledger/Query.hs +++ b/hledger-lib/Hledger/Query.hs @@ -5,7 +5,6 @@ transactions..) by various criteria, and a SimpleTextParser for query expressio -} -{-# LANGUAGE CPP #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE ViewPatterns #-} @@ -65,9 +64,6 @@ import Data.Default (Default(..)) import Data.Either (partitionEithers) import Data.List (partition) import Data.Maybe (fromMaybe, isJust, mapMaybe) -#if !(MIN_VERSION_base(4,11,0)) -import Data.Monoid ((<>)) -#endif import Data.Text (Text) import qualified Data.Text as T import Data.Time.Calendar (Day, fromGregorian ) diff --git a/hledger-lib/Hledger/Read.hs b/hledger-lib/Hledger/Read.hs index 006acb992..2eed17add 100644 --- a/hledger-lib/Hledger/Read.hs +++ b/hledger-lib/Hledger/Read.hs @@ -11,7 +11,6 @@ to import modules below this one. -} --- ** language -{-# LANGUAGE CPP #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE PackageImports #-} {-# LANGUAGE ScopedTypeVariables #-} @@ -54,9 +53,6 @@ import Data.List (group, sort, sortBy) import Data.List.NonEmpty (nonEmpty) import Data.Maybe (fromMaybe) import Data.Ord (comparing) -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif import Data.Semigroup (sconcat) import Data.Text (Text) import qualified Data.Text as T diff --git a/hledger-lib/Hledger/Read/JournalReader.hs b/hledger-lib/Hledger/Read/JournalReader.hs index e61dadc3c..9941f6780 100644 --- a/hledger-lib/Hledger/Read/JournalReader.hs +++ b/hledger-lib/Hledger/Read/JournalReader.hs @@ -26,7 +26,6 @@ Hledger.Read.Common, to avoid import cycles. --- ** language -{-# LANGUAGE CPP #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE NoMonoLocalBinds #-} @@ -85,9 +84,6 @@ import Control.Monad.Trans.Class (lift) import Data.Char (toLower) import Data.Either (isRight) import qualified Data.Map.Strict as M -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif import Data.Text (Text) import Data.String import Data.List diff --git a/hledger-lib/Hledger/Reports/BudgetReport.hs b/hledger-lib/Hledger/Reports/BudgetReport.hs index 79d9f03f6..ef8cf70fa 100644 --- a/hledger-lib/Hledger/Reports/BudgetReport.hs +++ b/hledger-lib/Hledger/Reports/BudgetReport.hs @@ -1,7 +1,3 @@ -{- | --} - -{-# LANGUAGE CPP #-} {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RecordWildCards #-} @@ -34,9 +30,6 @@ import qualified Data.HashMap.Strict as HM import Data.List (find, partition, transpose) import Data.List.Extra (nubSort) import Data.Maybe (fromMaybe) -#if !(MIN_VERSION_base(4,11,0)) -import Data.Monoid ((<>)) -#endif import Data.Map (Map) import qualified Data.Map as Map import qualified Data.Set as S diff --git a/hledger-lib/Hledger/Reports/MultiBalanceReport.hs b/hledger-lib/Hledger/Reports/MultiBalanceReport.hs index d46330ae1..91923e410 100644 --- a/hledger-lib/Hledger/Reports/MultiBalanceReport.hs +++ b/hledger-lib/Hledger/Reports/MultiBalanceReport.hs @@ -1,4 +1,3 @@ -{-# LANGUAGE CPP #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RecordWildCards #-} @@ -44,9 +43,6 @@ import Data.Map (Map) import qualified Data.Map as M import Data.Maybe (fromMaybe, mapMaybe) import Data.Ord (Down(..)) -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif import Data.Semigroup (sconcat) import Data.Time.Calendar (Day, addDays, fromGregorian) import Safe (lastDef, minimumMay) diff --git a/hledger-lib/Hledger/Reports/ReportTypes.hs b/hledger-lib/Hledger/Reports/ReportTypes.hs index d985b32df..d9add2309 100644 --- a/hledger-lib/Hledger/Reports/ReportTypes.hs +++ b/hledger-lib/Hledger/Reports/ReportTypes.hs @@ -1,7 +1,6 @@ {- | New common report types, used by the BudgetReport for now, perhaps all reports later. -} -{-# LANGUAGE CPP #-} {-# LANGUAGE DeriveAnyClass #-} {-# LANGUAGE DeriveFunctor #-} {-# LANGUAGE DeriveGeneric #-} @@ -36,9 +35,6 @@ import Data.Aeson (ToJSON(..)) import Data.Decimal (Decimal) import Data.Maybe (mapMaybe) import Data.Text (Text) -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup (Semigroup(..)) -#endif import GHC.Generics (Generic) import Hledger.Data diff --git a/hledger-lib/Hledger/Utils/Color.hs b/hledger-lib/Hledger/Utils/Color.hs index fb792655d..8fb94604b 100644 --- a/hledger-lib/Hledger/Utils/Color.hs +++ b/hledger-lib/Hledger/Utils/Color.hs @@ -1,6 +1,5 @@ -- | Basic color helpers for prettifying console output. -{-# LANGUAGE CPP #-} {-# LANGUAGE OverloadedStrings #-} module Hledger.Utils.Color @@ -14,9 +13,6 @@ module Hledger.Utils.Color ) where -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif import qualified Data.Text.Lazy.Builder as TB import System.Console.ANSI import Hledger.Utils.Text (WideBuilder(..)) diff --git a/hledger-lib/Hledger/Utils/Regex.hs b/hledger-lib/Hledger/Utils/Regex.hs index 4d85c9301..911be0ceb 100644 --- a/hledger-lib/Hledger/Utils/Regex.hs +++ b/hledger-lib/Hledger/Utils/Regex.hs @@ -1,4 +1,3 @@ -{-# LANGUAGE CPP #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE OverloadedStrings #-} @@ -69,9 +68,6 @@ import Data.Array ((!), elems, indices) import Data.Char (isDigit) import Data.List (foldl') import Data.MemoUgly (memo) -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif import Data.Text (Text) import qualified Data.Text as T import Text.Regex.TDFA ( diff --git a/hledger-lib/Hledger/Utils/Test.hs b/hledger-lib/Hledger/Utils/Test.hs index 6460092bf..4c4c65225 100644 --- a/hledger-lib/Hledger/Utils/Test.hs +++ b/hledger-lib/Hledger/Utils/Test.hs @@ -1,4 +1,3 @@ -{-# LANGUAGE CPP #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE ScopedTypeVariables #-} @@ -26,10 +25,6 @@ where import Control.Monad.Except (ExceptT, runExceptT) import Control.Monad.State.Strict (StateT, evalStateT, execStateT) import Data.Default (Default(..)) -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif --- import Data.CallStack import Data.List (isInfixOf) import qualified Data.Text as T import Test.Tasty hiding (defaultMain) diff --git a/hledger-lib/Hledger/Utils/Text.hs b/hledger-lib/Hledger/Utils/Text.hs index e776b6f9c..88cb423c2 100644 --- a/hledger-lib/Hledger/Utils/Text.hs +++ b/hledger-lib/Hledger/Utils/Text.hs @@ -2,7 +2,6 @@ -- There may be better alternatives out there. {-# LANGUAGE OverloadedStrings #-} -{-# LANGUAGE CPP #-} module Hledger.Utils.Text ( @@ -54,9 +53,6 @@ where import Data.Char (digitToInt) import Data.Default (def) -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif import Data.Text (Text) import qualified Data.Text as T import qualified Data.Text.Lazy as TL diff --git a/hledger-lib/Text/Tabular/AsciiWide.hs b/hledger-lib/Text/Tabular/AsciiWide.hs index 64f9f049a..3b4073952 100644 --- a/hledger-lib/Text/Tabular/AsciiWide.hs +++ b/hledger-lib/Text/Tabular/AsciiWide.hs @@ -1,7 +1,6 @@ -- | Text.Tabular.AsciiArt from tabular-0.2.2.7, modified to treat -- wide characters as double width. -{-# LANGUAGE CPP #-} {-# LANGUAGE OverloadedStrings #-} module Text.Tabular.AsciiWide @@ -24,9 +23,6 @@ module Text.Tabular.AsciiWide import Data.Maybe (fromMaybe) import Data.Default (Default(..)) import Data.List (intersperse, transpose) -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif import Data.Semigroup (stimesMonoid) import Data.Text (Text) import qualified Data.Text as T diff --git a/hledger-lib/Text/WideString.hs b/hledger-lib/Text/WideString.hs index 2eed619d7..3adfad36b 100644 --- a/hledger-lib/Text/WideString.hs +++ b/hledger-lib/Text/WideString.hs @@ -1,7 +1,5 @@ -- | Calculate the width of String and Text, being aware of wide characters. -{-# LANGUAGE CPP #-} - module Text.WideString ( -- * wide-character-aware layout strWidth, @@ -13,9 +11,6 @@ module Text.WideString ( wbToText ) where -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup (Semigroup(..)) -#endif import Data.Text (Text) import qualified Data.Text as T import qualified Data.Text.Lazy as TL @@ -33,9 +28,6 @@ instance Semigroup WideBuilder where instance Monoid WideBuilder where mempty = WideBuilder mempty 0 -#if !(MIN_VERSION_base(4,11,0)) - mappend = (<>) -#endif -- | Convert a WideBuilder to a strict Text. wbToText :: WideBuilder -> Text diff --git a/hledger-ui/Hledger/UI/AccountsScreen.hs b/hledger-ui/Hledger/UI/AccountsScreen.hs index cacf297a4..b17e8bdeb 100644 --- a/hledger-ui/Hledger/UI/AccountsScreen.hs +++ b/hledger-ui/Hledger/UI/AccountsScreen.hs @@ -2,7 +2,6 @@ {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RecordWildCards #-} -{-# LANGUAGE CPP #-} module Hledger.UI.AccountsScreen (accountsScreen @@ -19,9 +18,6 @@ import Control.Monad import Control.Monad.IO.Class (liftIO) import Data.List import Data.Maybe -#if !(MIN_VERSION_base(4,11,0)) -import Data.Monoid ((<>)) -#endif import qualified Data.Text as T import Data.Time.Calendar (Day, addDays) import qualified Data.Vector as V diff --git a/hledger-ui/Hledger/UI/ErrorScreen.hs b/hledger-ui/Hledger/UI/ErrorScreen.hs index d8acefa24..858fc1867 100644 --- a/hledger-ui/Hledger/UI/ErrorScreen.hs +++ b/hledger-ui/Hledger/UI/ErrorScreen.hs @@ -1,7 +1,8 @@ -- The error screen, showing a current error condition (such as a parse error after reloading the journal) -{-# LANGUAGE OverloadedStrings, FlexibleContexts, RecordWildCards #-} -{-# LANGUAGE CPP #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE RecordWildCards #-} module Hledger.UI.ErrorScreen (errorScreen @@ -15,9 +16,6 @@ import Brick -- import Brick.Widgets.Border ("border") import Control.Monad import Control.Monad.IO.Class (liftIO) -#if !(MIN_VERSION_base(4,11,0)) -import Data.Monoid -#endif import Data.Time.Calendar (Day) import Data.Void (Void) import Graphics.Vty (Event(..),Key(..),Modifier(..)) diff --git a/hledger-ui/Hledger/UI/RegisterScreen.hs b/hledger-ui/Hledger/UI/RegisterScreen.hs index bdbd89aa6..cb8a1993a 100644 --- a/hledger-ui/Hledger/UI/RegisterScreen.hs +++ b/hledger-ui/Hledger/UI/RegisterScreen.hs @@ -1,7 +1,8 @@ -- The account register screen, showing transactions in an account, like hledger-web's register. -{-# LANGUAGE OverloadedStrings, FlexibleContexts, RecordWildCards #-} -{-# LANGUAGE CPP #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE RecordWildCards #-} module Hledger.UI.RegisterScreen (registerScreen @@ -14,9 +15,6 @@ where import Control.Monad import Control.Monad.IO.Class (liftIO) import Data.List -#if !(MIN_VERSION_base(4,11,0)) -import Data.Monoid ((<>)) -#endif import Data.Maybe import qualified Data.Text as T import Data.Time.Calendar diff --git a/hledger-ui/Hledger/UI/Theme.hs b/hledger-ui/Hledger/UI/Theme.hs index bdcf10fbc..804c4deb6 100644 --- a/hledger-ui/Hledger/UI/Theme.hs +++ b/hledger-ui/Hledger/UI/Theme.hs @@ -7,7 +7,6 @@ -- http://hackage.haskell.org/package/brick-0.1/docs/Brick-Widgets-Core.html#g:5 -- http://hackage.haskell.org/package/brick-0.1/docs/Brick-Widgets-Border.html -{-# LANGUAGE CPP #-} {-# LANGUAGE OverloadedStrings #-} module Hledger.UI.Theme ( @@ -20,9 +19,6 @@ where import qualified Data.Map as M import Data.Maybe -#if !(MIN_VERSION_base(4,11,0)) -import Data.Monoid -#endif import Graphics.Vty import Brick diff --git a/hledger-ui/Hledger/UI/TransactionScreen.hs b/hledger-ui/Hledger/UI/TransactionScreen.hs index 7303df1b8..a4b1ade5c 100644 --- a/hledger-ui/Hledger/UI/TransactionScreen.hs +++ b/hledger-ui/Hledger/UI/TransactionScreen.hs @@ -1,7 +1,8 @@ -- The transaction screen, showing a single transaction's general journal entry. -{-# LANGUAGE OverloadedStrings, TupleSections, RecordWildCards #-} -- , FlexibleContexts -{-# LANGUAGE CPP #-} +{-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE RecordWildCards #-} +{-# LANGUAGE TupleSections #-} module Hledger.UI.TransactionScreen (transactionScreen @@ -13,9 +14,6 @@ import Control.Monad import Control.Monad.IO.Class (liftIO) import Data.List import Data.Maybe -#if !(MIN_VERSION_base(4,11,0)) -import Data.Monoid -#endif import qualified Data.Text as T import Data.Time.Calendar (Day) import Graphics.Vty (Event(..),Key(..),Modifier(..)) diff --git a/hledger-ui/Hledger/UI/UIUtils.hs b/hledger-ui/Hledger/UI/UIUtils.hs index ad1808438..a0c98f25f 100644 --- a/hledger-ui/Hledger/UI/UIUtils.hs +++ b/hledger-ui/Hledger/UI/UIUtils.hs @@ -1,7 +1,7 @@ {- | Rendering & misc. helpers. -} +{-# LANGUAGE CPP #-} {-# LANGUAGE OverloadedStrings #-} -{-# LANGUAGE CPP #-} module Hledger.UI.UIUtils ( borderDepthStr @@ -35,9 +35,6 @@ import Brick.Widgets.Edit import Brick.Widgets.List (List, listSelectedL, listNameL, listItemHeightL) import Control.Monad.IO.Class import Data.List -#if !(MIN_VERSION_base(4,11,0)) -import Data.Monoid -#endif import qualified Data.Text as T import Graphics.Vty (Event(..),Key(..),Modifier(..),Vty(..),Color,Attr,currentAttr,refresh diff --git a/hledger-web/Hledger/Web/Foundation.hs b/hledger-web/Hledger/Web/Foundation.hs index 577bfa557..211c260c4 100644 --- a/hledger-web/Hledger/Web/Foundation.hs +++ b/hledger-web/Hledger/Web/Foundation.hs @@ -1,15 +1,15 @@ -{-# OPTIONS_GHC -fno-warn-orphans #-} -{-# LANGUAGE CPP #-} -{-# LANGUAGE FlexibleInstances #-} -{-# LANGUAGE LambdaCase #-} +{-# OPTIONS_GHC -fno-warn-orphans #-} +{-# LANGUAGE CPP #-} +{-# LANGUAGE FlexibleInstances #-} +{-# LANGUAGE LambdaCase #-} {-# LANGUAGE MultiParamTypeClasses #-} -{-# LANGUAGE NamedFieldPuns #-} -{-# LANGUAGE OverloadedStrings #-} -{-# LANGUAGE QuasiQuotes #-} -{-# LANGUAGE TemplateHaskell #-} -{-# LANGUAGE TypeFamilies #-} -{-# LANGUAGE TypeSynonymInstances #-} -{-# LANGUAGE ViewPatterns #-} +{-# LANGUAGE NamedFieldPuns #-} +{-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE QuasiQuotes #-} +{-# LANGUAGE TemplateHaskell #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeSynonymInstances #-} +{-# LANGUAGE ViewPatterns #-} -- | Define the web application's foundation, in the usual Yesod style. -- See a default Yesod app's comments for more details of each part. @@ -22,9 +22,6 @@ import qualified Data.ByteString.Char8 as BC import Data.Traversable (for) import Data.IORef (IORef, readIORef, writeIORef) import Data.Maybe (fromMaybe) -#if !(MIN_VERSION_base(4,13,0)) -import Data.Monoid ((<>)) -#endif import Data.Text (Text) import qualified Data.Text as T import Data.Time.Calendar (Day) @@ -91,11 +88,7 @@ mkYesodData "App" $(parseRoutesFile "config/routes") -- | A convenience alias. type AppRoute = Route App -#if MIN_VERSION_yesod(1,6,0) type Form x = Html -> MForm (HandlerFor App) (FormResult x, Widget) -#else -type Form x = Html -> MForm (HandlerT App IO) (FormResult x, Widget) -#endif -- Please see the documentation for the Yesod typeclass. There are a number -- of settings which can be configured by overriding methods here. diff --git a/hledger-web/Hledger/Web/Import.hs b/hledger-web/Hledger/Web/Import.hs index f2dd18b40..e7ec60ef6 100644 --- a/hledger-web/Hledger/Web/Import.hs +++ b/hledger-web/Hledger/Web/Import.hs @@ -1,4 +1,3 @@ -{-# LANGUAGE CPP #-} module Hledger.Web.Import ( module Import ) where @@ -25,7 +24,3 @@ import Hledger.Web.Foundation as Import import Hledger.Web.Settings as Import import Hledger.Web.Settings.StaticFiles as Import import Hledger.Web.WebOptions as Import (Capability(..)) - -#if !(MIN_VERSION_base(4,11,0)) -import Data.Monoid as Import ((<>)) -#endif diff --git a/hledger-web/Hledger/Web/Settings.hs b/hledger-web/Hledger/Web/Settings.hs index f3c128634..e35795bd1 100644 --- a/hledger-web/Hledger/Web/Settings.hs +++ b/hledger-web/Hledger/Web/Settings.hs @@ -1,4 +1,7 @@ -{-# LANGUAGE CPP, OverloadedStrings, QuasiQuotes #-} +{-# LANGUAGE CPP #-} +{-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE QuasiQuotes #-} + -- | Settings are centralized, as much as possible, into this file. This -- includes database connection settings, static file locations, etc. -- In addition, you can configure a number of different aspects of Yesod @@ -7,9 +10,6 @@ module Hledger.Web.Settings where import Data.Default (def) -#if !(MIN_VERSION_base(4,13,0)) -import Data.Semigroup ((<>)) -#endif import Data.Text (Text) import Data.Yaml import Language.Haskell.TH.Syntax (Q, Exp) diff --git a/hledger-web/Hledger/Web/Widget/AddForm.hs b/hledger-web/Hledger/Web/Widget/AddForm.hs index 49efcc06d..ed5a3dd1e 100644 --- a/hledger-web/Hledger/Web/Widget/AddForm.hs +++ b/hledger-web/Hledger/Web/Widget/AddForm.hs @@ -1,4 +1,3 @@ -{-# LANGUAGE CPP #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE GADTs #-} {-# LANGUAGE OverloadedStrings #-} @@ -16,9 +15,6 @@ import Data.Bifunctor (first) import Data.Foldable (toList) import Data.List (dropWhileEnd, intercalate, unfoldr) import Data.Maybe (isJust) -#if !(MIN_VERSION_base(4,13,0)) -import Data.Semigroup ((<>)) -#endif import qualified Data.Set as S import Data.Text (Text) import qualified Data.Text as T @@ -33,11 +29,7 @@ import Hledger.Web.Settings (widgetFile) addModal :: ( MonadWidget m , r ~ Route (HandlerSite m) -#if MIN_VERSION_yesod(1,6,0) , m ~ WidgetFor (HandlerSite m) -#else - , m ~ WidgetT (HandlerSite m) IO -#endif , RenderMessage (HandlerSite m) FormMessage ) => r -> Journal -> Day -> m () @@ -60,11 +52,7 @@ addForm :: => Journal -> Day -> Markup -#if MIN_VERSION_yesod(1,6,0) -> MForm m (FormResult Transaction, WidgetFor site ()) -#else - -> MForm m (FormResult Transaction, WidgetT site IO ()) -#endif addForm j today = identifyForm "add" $ \extra -> do (dateRes, dateView) <- mreq dateField dateFS Nothing (descRes, descView) <- mreq textField descFS Nothing diff --git a/hledger-web/Hledger/Web/Widget/Common.hs b/hledger-web/Hledger/Web/Widget/Common.hs index 8b28994bf..982365eb6 100644 --- a/hledger-web/Hledger/Web/Widget/Common.hs +++ b/hledger-web/Hledger/Web/Widget/Common.hs @@ -1,9 +1,8 @@ -{-# LANGUAGE CPP #-} -{-# LANGUAGE LambdaCase #-} -{-# LANGUAGE NamedFieldPuns #-} +{-# LANGUAGE LambdaCase #-} +{-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE OverloadedStrings #-} -{-# LANGUAGE QuasiQuotes #-} -{-# LANGUAGE TemplateHaskell #-} +{-# LANGUAGE QuasiQuotes #-} +{-# LANGUAGE TemplateHaskell #-} module Hledger.Web.Widget.Common ( accountQuery @@ -23,9 +22,6 @@ module Hledger.Web.Widget.Common import Data.Default (def) import Data.Foldable (find, for_) import Data.List (elemIndex) -#if !(MIN_VERSION_base(4,13,0)) -import Data.Semigroup ((<>)) -#endif import Data.Text (Text) import qualified Data.Text as T import System.FilePath (takeFileName) @@ -42,11 +38,7 @@ import Hledger.Cli.Utils (writeFileWithBackupIfChanged) import Hledger.Web.Settings (manualurl) import qualified Hledger.Query as Query -#if MIN_VERSION_yesod(1,6,0) journalFile404 :: FilePath -> Journal -> HandlerFor m (FilePath, Text) -#else -journalFile404 :: FilePath -> Journal -> HandlerT m IO (FilePath, Text) -#endif journalFile404 f j = case find ((== f) . fst) (jfiles j) of Just (_, txt) -> pure (takeFileName f, txt) diff --git a/hledger/Hledger/Cli/Commands.hs b/hledger/Hledger/Cli/Commands.hs index 333968ff2..c82dbf650 100644 --- a/hledger/Hledger/Cli/Commands.hs +++ b/hledger/Hledger/Cli/Commands.hs @@ -5,7 +5,6 @@ New built-in commands should be added in four places below: the export list, the import list, builtinCommands, commandsList. -} -{-# LANGUAGE CPP #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE QuasiQuotes #-} {-# LANGUAGE TemplateHaskell #-} @@ -49,9 +48,6 @@ where import Data.Char (isSpace) import Data.Default import Data.List -#if !(MIN_VERSION_base(4,11,0)) -import Data.Monoid ((<>)) -#endif import Data.Text (Text) import qualified Data.Text as T import Data.Time.Calendar diff --git a/hledger/Hledger/Cli/Commands/Accounts.hs b/hledger/Hledger/Cli/Commands/Accounts.hs index 5749241e3..a1dbfbe80 100644 --- a/hledger/Hledger/Cli/Commands/Accounts.hs +++ b/hledger/Hledger/Cli/Commands/Accounts.hs @@ -14,16 +14,12 @@ The @accounts@ command lists account names: {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TemplateHaskell #-} -{-# LANGUAGE CPP #-} module Hledger.Cli.Commands.Accounts ( accountsmode ,accounts ) where -#if !(MIN_VERSION_base(4,11,0)) -import Data.Monoid -#endif import Data.List import qualified Data.Text as T import qualified Data.Text.IO as T diff --git a/hledger/Hledger/Cli/Commands/Balance.hs b/hledger/Hledger/Cli/Commands/Balance.hs index b29c7699b..59753cf22 100644 --- a/hledger/Hledger/Cli/Commands/Balance.hs +++ b/hledger/Hledger/Cli/Commands/Balance.hs @@ -233,7 +233,6 @@ Currently, empty cells show 0. -} -{-# LANGUAGE CPP #-} {-# LANGUAGE ExtendedDefaultRules #-} {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE OverloadedStrings #-} @@ -258,10 +257,6 @@ module Hledger.Cli.Commands.Balance ( import Data.Default (def) import Data.List (intersperse, transpose) import Data.Maybe (fromMaybe, maybeToList) ---import qualified Data.Map as Map -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif import qualified Data.Text as T import qualified Data.Text.Lazy as TL import qualified Data.Text.Lazy.Builder as TB diff --git a/hledger/Hledger/Cli/Commands/Check/Ordereddates.hs b/hledger/Hledger/Cli/Commands/Check/Ordereddates.hs index e3721f8fc..2b7adcc72 100755 --- a/hledger/Hledger/Cli/Commands/Check/Ordereddates.hs +++ b/hledger/Hledger/Cli/Commands/Check/Ordereddates.hs @@ -1,13 +1,8 @@ -{-# LANGUAGE CPP #-} - module Hledger.Cli.Commands.Check.Ordereddates ( journalCheckOrdereddates ) where -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif import qualified Data.Text as T import Hledger import Hledger.Cli.CliOptions diff --git a/hledger/Hledger/Cli/Commands/Check/Uniqueleafnames.hs b/hledger/Hledger/Cli/Commands/Check/Uniqueleafnames.hs index e6ddc5726..9de7e77db 100755 --- a/hledger/Hledger/Cli/Commands/Check/Uniqueleafnames.hs +++ b/hledger/Hledger/Cli/Commands/Check/Uniqueleafnames.hs @@ -1,4 +1,3 @@ -{-# LANGUAGE CPP #-} {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE OverloadedStrings #-} @@ -10,9 +9,6 @@ where import Data.Function (on) import Data.List (groupBy, sortBy) import Data.Text (Text) -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif import qualified Data.Text as T import Hledger import Text.Printf (printf) diff --git a/hledger/Hledger/Cli/Commands/Checkdates.hs b/hledger/Hledger/Cli/Commands/Checkdates.hs index 00c1f215c..5ff9e6321 100755 --- a/hledger/Hledger/Cli/Commands/Checkdates.hs +++ b/hledger/Hledger/Cli/Commands/Checkdates.hs @@ -1,4 +1,3 @@ -{-# LANGUAGE CPP #-} {-# LANGUAGE NoOverloadedStrings #-} -- prevent trouble if turned on in ghci {-# LANGUAGE TemplateHaskell #-} @@ -7,9 +6,6 @@ module Hledger.Cli.Commands.Checkdates ( ,checkdates ) where -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif import qualified Data.Text as T import qualified Data.Text.IO as T import Hledger diff --git a/hledger/Hledger/Cli/Commands/Payees.hs b/hledger/Hledger/Cli/Commands/Payees.hs index e97d2280a..d8aa50711 100644 --- a/hledger/Hledger/Cli/Commands/Payees.hs +++ b/hledger/Hledger/Cli/Commands/Payees.hs @@ -4,7 +4,6 @@ The @payees@ command lists all unique payees (description part before a |) seen -} -{-# LANGUAGE CPP #-} {-# LANGUAGE MultiWayIf #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE ScopedTypeVariables #-} @@ -15,9 +14,6 @@ module Hledger.Cli.Commands.Payees ( ,payees ) where -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif import qualified Data.Set as S import qualified Data.Text.IO as T import System.Console.CmdArgs.Explicit as C diff --git a/hledger/Hledger/Cli/Commands/Print.hs b/hledger/Hledger/Cli/Commands/Print.hs index 6f3c99090..c307e652f 100644 --- a/hledger/Hledger/Cli/Commands/Print.hs +++ b/hledger/Hledger/Cli/Commands/Print.hs @@ -4,7 +4,6 @@ A ledger-compatible @print@ command. -} -{-# LANGUAGE CPP #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE TemplateHaskell #-} @@ -19,9 +18,6 @@ where import Data.Maybe (isJust) import Data.Text (Text) import Data.List (intersperse) -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif import qualified Data.Text as T import qualified Data.Text.IO as T import qualified Data.Text.Lazy as TL diff --git a/hledger/Hledger/Cli/Commands/Register.hs b/hledger/Hledger/Cli/Commands/Register.hs index 10f541f06..8cf3e24b6 100644 --- a/hledger/Hledger/Cli/Commands/Register.hs +++ b/hledger/Hledger/Cli/Commands/Register.hs @@ -20,10 +20,6 @@ module Hledger.Cli.Commands.Register ( import Data.Default (def) import Data.Maybe (fromMaybe, isJust) -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif --- import Data.Text (Text) import qualified Data.Text as T import qualified Data.Text.Lazy as TL import qualified Data.Text.Lazy.Builder as TB diff --git a/hledger/Hledger/Cli/Commands/Rewrite.hs b/hledger/Hledger/Cli/Commands/Rewrite.hs index 5ce5a9a9a..9c2467364 100755 --- a/hledger/Hledger/Cli/Commands/Rewrite.hs +++ b/hledger/Hledger/Cli/Commands/Rewrite.hs @@ -1,6 +1,8 @@ -{-# LANGUAGE OverloadedStrings, LambdaCase, DeriveTraversable, ViewPatterns #-} -{-# LANGUAGE CPP #-} -{-# LANGUAGE TemplateHaskell #-} +{-# LANGUAGE DeriveTraversable #-} +{-# LANGUAGE LambdaCase #-} +{-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE TemplateHaskell #-} +{-# LANGUAGE ViewPatterns #-} module Hledger.Cli.Commands.Rewrite ( rewritemode @@ -8,9 +10,6 @@ module Hledger.Cli.Commands.Rewrite ( ) where -#if !(MIN_VERSION_base(4,11,0)) -import Control.Monad.Writer hiding (Any) -#endif import Data.Functor.Identity import Data.List (sortOn, foldl') import Data.Text (Text) diff --git a/hledger/Hledger/Cli/CompoundBalanceCommand.hs b/hledger/Hledger/Cli/CompoundBalanceCommand.hs index d7ed2e084..b4d0cea21 100644 --- a/hledger/Hledger/Cli/CompoundBalanceCommand.hs +++ b/hledger/Hledger/Cli/CompoundBalanceCommand.hs @@ -1,4 +1,3 @@ -{-# LANGUAGE CPP #-} {-# LANGUAGE LambdaCase #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RecordWildCards #-} @@ -17,9 +16,6 @@ module Hledger.Cli.CompoundBalanceCommand ( import Data.List (foldl') import Data.Maybe (fromMaybe, mapMaybe) -#if !(MIN_VERSION_base(4,11,0)) -import Data.Semigroup ((<>)) -#endif import qualified Data.Text as T import qualified Data.Text.Lazy as TL import qualified Data.Text.Lazy.Builder as TB