Remove mixins

Problem:  Stack cannot build projects with mixins, and they only
          used to splice universum instead of base.

Solution: Use `NoImplicitPreduce` and import `Universum`
          everywhere explicitly.
This commit is contained in:
Kirill Andreev 2021-07-26 12:00:21 +04:00 committed by Андреев Кирилл
parent d43953192d
commit 2f9a9d8599
No known key found for this signature in database
GPG Key ID: CF7DA79DE4785A47
23 changed files with 49 additions and 6 deletions

View File

@ -5,6 +5,8 @@
module Main where module Main where
import Universum
import qualified Data.ByteString as BS import qualified Data.ByteString as BS
import Main.Utf8 (withUtf8) import Main.Utf8 (withUtf8)

View File

@ -6,6 +6,8 @@ module Main
( main ( main
) where ) where
import Universum
import Test.Tasty (defaultIngredients, defaultMainWithIngredients, includingOptions) import Test.Tasty (defaultIngredients, defaultMainWithIngredients, includingOptions)
import Test.Tasty.Ingredients (Ingredient) import Test.Tasty.Ingredients (Ingredient)

View File

@ -8,6 +8,8 @@ module Test.Xrefcheck.FtpLinks
, test_FtpLinks , test_FtpLinks
) where ) where
import Universum
import Data.Tagged (Tagged, untag) import Data.Tagged (Tagged, untag)
import Options.Applicative (help, long, strOption) import Options.Applicative (help, long, strOption)
import Test.Tasty (TestTree, askOption, testGroup) import Test.Tasty (TestTree, askOption, testGroup)

View File

@ -35,6 +35,7 @@ default-extensions:
- MultiParamTypeClasses - MultiParamTypeClasses
- MultiWayIf - MultiWayIf
- NamedFieldPuns - NamedFieldPuns
- NoImplicitPrelude
- OverloadedStrings - OverloadedStrings
- RankNTypes - RankNTypes
- RecordWildCards - RecordWildCards
@ -57,9 +58,7 @@ dependencies:
- aeson - aeson
- aeson-casing - aeson-casing
- async - async
- name: base - base
mixin: [hiding (Prelude)]
version: "< 4.15"
- bytestring - bytestring
- containers - containers
- cmark-gfm - cmark-gfm
@ -91,8 +90,7 @@ dependencies:
- th-lift-instances - th-lift-instances
- th-utilities - th-utilities
- transformers - transformers
- name: universum - universum
mixin: [(Universum as Prelude), (Universum.Unsafe as Unsafe)]
- yaml - yaml
- with-utf8 - with-utf8

View File

@ -19,6 +19,8 @@ module Xrefcheck.CLI
, getCommand , getCommand
) where ) where
import Universum
import qualified Data.Char as C import qualified Data.Char as C
import qualified Data.List as L import qualified Data.List as L
import qualified Data.Text as T import qualified Data.Text as T

View File

@ -7,6 +7,8 @@ module Xrefcheck.Command
( defaultAction ( defaultAction
) where ) where
import Universum
import Data.Yaml (decodeFileEither, prettyPrintParseException) import Data.Yaml (decodeFileEither, prettyPrintParseException)
import Fmt (blockListF', build, fmt, fmtLn, indentF) import Fmt (blockListF', build, fmt, fmtLn, indentF)
import System.Directory (doesFileExist) import System.Directory (doesFileExist)

View File

@ -7,7 +7,9 @@
module Xrefcheck.Config where module Xrefcheck.Config where
import qualified Unsafe import qualified Universum.Unsafe as Unsafe
import Universum
import Control.Exception (assert) import Control.Exception (assert)
import Control.Lens (makeLensesWith) import Control.Lens (makeLensesWith)

View File

@ -9,6 +9,8 @@
module Xrefcheck.Core where module Xrefcheck.Core where
import Universum
import Control.Lens (makeLenses, (%=)) import Control.Lens (makeLenses, (%=))
import Data.Aeson (FromJSON (..), withText) import Data.Aeson (FromJSON (..), withText)
import Data.Char (isAlphaNum) import Data.Char (isAlphaNum)

View File

@ -9,6 +9,8 @@
module Xrefcheck.Orphans () where module Xrefcheck.Orphans () where
import Universum
import qualified Data.ByteString.Char8 as C import qualified Data.ByteString.Char8 as C
import Fmt (Buildable (..), unlinesF, (+|), (|+)) import Fmt (Buildable (..), unlinesF, (+|), (|+))

View File

@ -18,6 +18,8 @@ module Xrefcheck.Progress
, putTextRewrite , putTextRewrite
) where ) where
import Universum
import Data.Ratio ((%)) import Data.Ratio ((%))
import System.Console.Pretty (Color (..), Style (..), color, style) import System.Console.Pretty (Color (..), Style (..), color, style)
import Time (ms, threadDelay) import Time (ms, threadDelay)

View File

@ -16,6 +16,8 @@ module Xrefcheck.Scan
, specificFormatsSupport , specificFormatsSupport
) where ) where
import Universum
import Data.Aeson.TH (deriveFromJSON) import Data.Aeson.TH (deriveFromJSON)
import qualified Data.Foldable as F import qualified Data.Foldable as F
import qualified Data.Map as M import qualified Data.Map as M

View File

@ -15,6 +15,8 @@ module Xrefcheck.Scanners.Markdown
, parseFileInfo , parseFileInfo
) where ) where
import Universum
import CMarkGFM (Node (..), NodeType (..), PosInfo (..), commonmarkToNode) import CMarkGFM (Node (..), NodeType (..), PosInfo (..), commonmarkToNode)
import Control.Lens ((%=)) import Control.Lens ((%=))
import Control.Monad.Trans.Except (Except, runExcept, throwE) import Control.Monad.Trans.Except (Except, runExcept, throwE)

View File

@ -10,6 +10,8 @@ module Xrefcheck.System
, bindGlobPattern , bindGlobPattern
) where ) where
import Universum
import Data.Aeson (FromJSON (..), withText) import Data.Aeson (FromJSON (..), withText)
import qualified Data.Char as C import qualified Data.Char as C
import GHC.IO.Unsafe (unsafePerformIO) import GHC.IO.Unsafe (unsafePerformIO)

View File

@ -13,6 +13,8 @@ module Xrefcheck.Util
, aesonConfigOption , aesonConfigOption
) where ) where
import Universum
import Control.Lens (LensRules, lensField, lensRules, mappingNamer) import Control.Lens (LensRules, lensField, lensRules, mappingNamer)
import qualified Data.Aeson as Aeson import qualified Data.Aeson as Aeson
import Data.Aeson.Casing (aesonPrefix, camelCase) import Data.Aeson.Casing (aesonPrefix, camelCase)

View File

@ -22,6 +22,8 @@ module Xrefcheck.Verify
, checkExternalResource , checkExternalResource
) where ) where
import Universum
import Control.Concurrent.Async (wait, withAsync) import Control.Concurrent.Async (wait, withAsync)
import Control.Exception (throwIO) import Control.Exception (throwIO)
import Control.Monad.Except (MonadError (..)) import Control.Monad.Except (MonadError (..))

View File

@ -3,6 +3,8 @@
- SPDX-License-Identifier: MPL-2.0 - SPDX-License-Identifier: MPL-2.0
-} -}
import Universum
import Spec (spec) import Spec (spec)
import Test.Hspec (hspec) import Test.Hspec (hspec)

View File

@ -5,6 +5,8 @@
module Test.Xrefcheck.AnchorsInHeadersSpec where module Test.Xrefcheck.AnchorsInHeadersSpec where
import Universum
import qualified Data.ByteString.Lazy as BSL import qualified Data.ByteString.Lazy as BSL
import Test.Hspec (Spec, describe, it, shouldBe) import Test.Hspec (Spec, describe, it, shouldBe)

View File

@ -5,6 +5,8 @@
module Test.Xrefcheck.AnchorsSpec where module Test.Xrefcheck.AnchorsSpec where
import Universum
import Test.Hspec (Spec, describe, it, shouldBe) import Test.Hspec (Spec, describe, it, shouldBe)
import Test.QuickCheck ((===)) import Test.QuickCheck ((===))

View File

@ -5,8 +5,11 @@
module Test.Xrefcheck.ConfigSpec where module Test.Xrefcheck.ConfigSpec where
import Universum
import Control.Concurrent (forkIO, killThread) import Control.Concurrent (forkIO, killThread)
import qualified Control.Exception as E import qualified Control.Exception as E
import qualified Data.ByteString as BS import qualified Data.ByteString as BS
import Network.HTTP.Types (Status (..)) import Network.HTTP.Types (Status (..))
import Test.Hspec (Spec, before, describe, it, shouldBe) import Test.Hspec (Spec, before, describe, it, shouldBe)

View File

@ -5,6 +5,8 @@
module Test.Xrefcheck.IgnoreAnnotationsSpec where module Test.Xrefcheck.IgnoreAnnotationsSpec where
import Universum
import Test.Hspec (Spec, describe, it, shouldBe) import Test.Hspec (Spec, describe, it, shouldBe)
import Test.Xrefcheck.Util import Test.Xrefcheck.Util

View File

@ -5,6 +5,8 @@
module Test.Xrefcheck.IgnoreRegexSpec where module Test.Xrefcheck.IgnoreRegexSpec where
import Universum
import Data.Yaml (decodeEither') import Data.Yaml (decodeEither')
import Test.HUnit (assertFailure) import Test.HUnit (assertFailure)
import Test.Hspec (Spec, describe, it) import Test.Hspec (Spec, describe, it)

View File

@ -5,6 +5,8 @@
module Test.Xrefcheck.LocalSpec where module Test.Xrefcheck.LocalSpec where
import Universum
import Test.Hspec (Spec, describe, it) import Test.Hspec (Spec, describe, it)
import Test.QuickCheck ((===)) import Test.QuickCheck ((===))

View File

@ -5,6 +5,8 @@
module Test.Xrefcheck.Util where module Test.Xrefcheck.Util where
import Universum
import qualified Data.ByteString.Lazy as BSL import qualified Data.ByteString.Lazy as BSL
import Network.HTTP.Types (forbidden403, unauthorized401) import Network.HTTP.Types (forbidden403, unauthorized401)
import Web.Firefly (ToResponse (..), route, run) import Web.Firefly (ToResponse (..), route, run)