Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package hpack for openSUSE:Factory checked in at 2021-11-11 21:37:12 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/hpack (Old) and /work/SRC/openSUSE:Factory/.hpack.new.1890 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "hpack" Thu Nov 11 21:37:12 2021 rev:23 rq:930379 version:0.34.5 Changes: -------- --- /work/SRC/openSUSE:Factory/hpack/hpack.changes 2021-05-05 20:40:16.462845849 +0200 +++ /work/SRC/openSUSE:Factory/.hpack.new.1890/hpack.changes 2021-11-11 21:37:40.972943827 +0100 @@ -1,0 +2,13 @@ +Thu Oct 14 08:00:01 UTC 2021 - [email protected] + +- Update hpack to version 0.34.5. + ## Changes in 0.34.5 + - Compatibility with `aeson-2.*` + +------------------------------------------------------------------- +Tue Oct 12 11:34:33 UTC 2021 - [email protected] + +- Update hpack to version 0.34.4 revision 1. + Upstream has revised the Cabal build instructions on Hackage. + +------------------------------------------------------------------- Old: ---- hpack-0.34.4.tar.gz New: ---- hpack-0.34.5.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ hpack.spec ++++++ --- /var/tmp/diff_new_pack.YLMJ4c/_old 2021-11-11 21:37:41.368944116 +0100 +++ /var/tmp/diff_new_pack.YLMJ4c/_new 2021-11-11 21:37:41.372944119 +0100 @@ -19,7 +19,7 @@ %global pkg_name hpack %bcond_with tests Name: %{pkg_name} -Version: 0.34.4 +Version: 0.34.5 Release: 0 Summary: A modern format for Haskell packages License: MIT @@ -73,7 +73,7 @@ Requires: ghc-%{name} = %{version}-%{release} Requires: ghc-compiler = %{ghc_version} Requires(post): ghc-compiler = %{ghc_version} -Requires(postun):ghc-compiler = %{ghc_version} +Requires(postun): ghc-compiler = %{ghc_version} %description -n ghc-%{name}-devel This package provides the Haskell %{name} library development files. ++++++ hpack-0.34.4.tar.gz -> hpack-0.34.5.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/CHANGELOG.md new/hpack-0.34.5/CHANGELOG.md --- old/hpack-0.34.4/CHANGELOG.md 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/CHANGELOG.md 2001-09-09 03:46:40.000000000 +0200 @@ -1,3 +1,6 @@ +## Changes in 0.34.5 + - Compatibility with `aeson-2.*` + ## Changes in 0.34.4 - Render `default-extensions` / `other-extensions` line-separated - Compatibility with `Cabal-3.4.0.0` diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/hpack.cabal new/hpack-0.34.5/hpack.cabal --- old/hpack-0.34.4/hpack.cabal 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/hpack.cabal 2001-09-09 03:46:40.000000000 +0200 @@ -1,11 +1,11 @@ cabal-version: 1.12 --- This file has been generated from package.yaml by hpack version 0.34.3. +-- This file has been generated from package.yaml by hpack version 0.34.4. -- -- see: https://github.com/sol/hpack name: hpack -version: 0.34.4 +version: 0.34.5 synopsis: A modern format for Haskell packages description: See README at <https://github.com/sol/hpack#readme> category: Development @@ -56,6 +56,8 @@ Hpack.Yaml other-modules: Data.Aeson.Config.FromValue + Data.Aeson.Config.Key + Data.Aeson.Config.KeyMap Data.Aeson.Config.Parser Data.Aeson.Config.Types Data.Aeson.Config.Util @@ -75,6 +77,7 @@ Hpack.Syntax.ParseDependencies Hpack.Utf8 Hpack.Util + Imports Path Paths_hpack default-language: Haskell2010 @@ -176,6 +179,8 @@ Hpack.UtilSpec HpackSpec Data.Aeson.Config.FromValue + Data.Aeson.Config.Key + Data.Aeson.Config.KeyMap Data.Aeson.Config.Parser Data.Aeson.Config.Types Data.Aeson.Config.Util @@ -199,6 +204,7 @@ Hpack.Utf8 Hpack.Util Hpack.Yaml + Imports Path Paths_hpack default-language: Haskell2010 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Data/Aeson/Config/FromValue.hs new/hpack-0.34.5/src/Data/Aeson/Config/FromValue.hs --- old/hpack-0.34.4/src/Data/Aeson/Config/FromValue.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Data/Aeson/Config/FromValue.hs 2001-09-09 03:46:40.000000000 +0200 @@ -34,23 +34,23 @@ , (.:) , (.:?) +, Key , Value(..) , Object , Array ) where -import GHC.Generics +import Imports -import Control.Monad -import Control.Applicative +import GHC.Generics -import Data.Bifunctor import Data.Map.Lazy (Map) import qualified Data.Map.Lazy as Map -import Data.Text (Text) -import qualified Data.Text as T import qualified Data.Vector as V -import qualified Data.HashMap.Strict as HashMap +import Data.Aeson.Config.Key (Key) +import qualified Data.Aeson.Config.Key as Key +import qualified Data.Aeson.Config.KeyMap as KeyMap + import Data.Aeson.Types (FromJSON(..)) import Data.Aeson.Config.Util @@ -61,10 +61,10 @@ decodeValue :: FromValue a => Value -> Result a decodeValue = runParser fromValue -(.:) :: FromValue a => Object -> Text -> Parser a +(.:) :: FromValue a => Object -> Key -> Parser a (.:) = explicitParseField fromValue -(.:?) :: FromValue a => Object -> Text -> Parser (Maybe a) +(.:?) :: FromValue a => Object -> Key -> Parser (Maybe a) (.:?) = explicitParseFieldMaybe fromValue class FromValue a where @@ -105,11 +105,11 @@ instance FromValue a => FromValue (Map String a) where fromValue = withObject $ \ o -> do xs <- traverseObject fromValue o - return $ Map.fromList (map (first T.unpack) xs) + return $ Map.fromList (map (first Key.toString) xs) -traverseObject :: (Value -> Parser a) -> Object -> Parser [(Text, a)] +traverseObject :: (Value -> Parser a) -> Object -> Parser [(Key, a)] traverseObject f o = do - forM (HashMap.toList o) $ \ (name, value) -> + forM (KeyMap.toList o) $ \ (name, value) -> (,) name <$> f value <?> Key name instance (FromValue a, FromValue b) => FromValue (a, b) where @@ -143,7 +143,7 @@ instance {-# OVERLAPPING #-} (Selector sel, FromValue a) => GenericDecode (S1 sel (Rec0 (Maybe a))) where genericDecode = accessFieldWith (.:?) -accessFieldWith :: forall sel a p. Selector sel => (Object -> Text -> Parser a) -> Options -> Value -> Parser (S1 sel (Rec0 a) p) -accessFieldWith op Options{..} v = M1 . K1 <$> withObject (`op` T.pack label) v +accessFieldWith :: forall sel a p. Selector sel => (Object -> Key -> Parser a) -> Options -> Value -> Parser (S1 sel (Rec0 a) p) +accessFieldWith op Options{..} v = M1 . K1 <$> withObject (`op` Key.fromString label) v where label = optionsRecordSelectorModifier $ selName (undefined :: S1 sel (Rec0 a) p) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Data/Aeson/Config/Key.hs new/hpack-0.34.5/src/Data/Aeson/Config/Key.hs --- old/hpack-0.34.4/src/Data/Aeson/Config/Key.hs 1970-01-01 01:00:00.000000000 +0100 +++ new/hpack-0.34.5/src/Data/Aeson/Config/Key.hs 2001-09-09 03:46:40.000000000 +0200 @@ -0,0 +1,24 @@ +{-# LANGUAGE CPP #-} +module Data.Aeson.Config.Key (module Data.Aeson.Config.Key) where + +#if MIN_VERSION_aeson(2,0,0) + +import Data.Aeson.Key as Data.Aeson.Config.Key + +#else + +import Data.Text (Text) +import qualified Data.Text as T + +type Key = Text + +toText :: Key -> Text +toText = id + +toString :: Key -> String +toString = T.unpack + +fromString :: String -> Key +fromString = T.pack + +#endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Data/Aeson/Config/KeyMap.hs new/hpack-0.34.5/src/Data/Aeson/Config/KeyMap.hs --- old/hpack-0.34.4/src/Data/Aeson/Config/KeyMap.hs 1970-01-01 01:00:00.000000000 +0100 +++ new/hpack-0.34.5/src/Data/Aeson/Config/KeyMap.hs 2001-09-09 03:46:40.000000000 +0200 @@ -0,0 +1,8 @@ +{-# LANGUAGE CPP #-} +module Data.Aeson.Config.KeyMap (module KeyMap) where + +#if MIN_VERSION_aeson(2,0,0) +import Data.Aeson.KeyMap as KeyMap +#else +import Data.HashMap.Strict as KeyMap +#endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Data/Aeson/Config/Parser.hs new/hpack-0.34.5/src/Data/Aeson/Config/Parser.hs --- old/hpack-0.34.4/src/Data/Aeson/Config/Parser.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Data/Aeson/Config/Parser.hs 2001-09-09 03:46:40.000000000 +0200 @@ -30,19 +30,19 @@ , formatPath ) where -import Control.Monad -import Control.Applicative +import Imports + import qualified Control.Monad.Fail as Fail import Control.Monad.Trans.Class import Control.Monad.Trans.Writer -import Data.Monoid ((<>)) import Data.Scientific import Data.Set (Set, notMember) import qualified Data.Set as Set -import Data.Text (Text) import qualified Data.Text as T import qualified Data.Vector as V -import qualified Data.HashMap.Strict as HashMap +import Data.Aeson.Config.Key (Key) +import qualified Data.Aeson.Config.Key as Key +import qualified Data.Aeson.Config.KeyMap as KeyMap import Data.Aeson.Types (Value(..), Object, Array) import qualified Data.Aeson.Types as Aeson import Data.Aeson.Internal (IResult(..), iparse) @@ -61,7 +61,7 @@ fromAesonPathElement :: Aeson.JSONPathElement -> JSONPathElement fromAesonPathElement e = case e of - Aeson.Key k -> Key k + Aeson.Key k -> Key (Key.toText k) Aeson.Index n -> Index n newtype Parser a = Parser {unParser :: WriterT (Set JSONPath) Aeson.Parser a} @@ -96,7 +96,7 @@ Bool _ -> return () Null -> return () Object o -> do - forM_ (HashMap.toList o) $ \ (k, v) -> do + forM_ (KeyMap.toList o) $ \ (Key.toText -> k, v) -> do unless ("_" `T.isPrefixOf` k) $ do go (Key k : path) v Array xs -> do @@ -115,13 +115,13 @@ getPath :: Parser JSONPath getPath = liftParser $ Aeson.parserCatchError empty $ \ path _ -> return (fromAesonPath path) -explicitParseField :: (Value -> Parser a) -> Object -> Text -> Parser a -explicitParseField p o key = case HashMap.lookup key o of +explicitParseField :: (Value -> Parser a) -> Object -> Key -> Parser a +explicitParseField p o key = case KeyMap.lookup key o of Nothing -> fail $ "key " ++ show key ++ " not present" Just v -> p v <?> Aeson.Key key -explicitParseFieldMaybe :: (Value -> Parser a) -> Object -> Text -> Parser (Maybe a) -explicitParseFieldMaybe p o key = case HashMap.lookup key o of +explicitParseFieldMaybe :: (Value -> Parser a) -> Object -> Key -> Parser (Maybe a) +explicitParseFieldMaybe p o key = case KeyMap.lookup key o of Nothing -> pure Nothing Just v -> Just <$> p v <?> Aeson.Key key diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Data/Aeson/Config/Types.hs new/hpack-0.34.5/src/Data/Aeson/Config/Types.hs --- old/hpack-0.34.4/src/Data/Aeson/Config/Types.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Data/Aeson/Config/Types.hs 2001-09-09 03:46:40.000000000 +0200 @@ -4,10 +4,10 @@ {-# LANGUAGE GeneralizedNewtypeDeriving #-} module Data.Aeson.Config.Types where -import Data.Semigroup (Semigroup(..)) +import Imports + import Data.Bitraversable import Data.Bifoldable -import Data.Bifunctor import Data.Aeson.Config.FromValue diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Hpack/CabalFile.hs new/hpack-0.34.5/src/Hpack/CabalFile.hs --- old/hpack-0.34.4/src/Hpack/CabalFile.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Hpack/CabalFile.hs 2001-09-09 03:46:40.000000000 +0200 @@ -3,8 +3,8 @@ {-# LANGUAGE ViewPatterns #-} module Hpack.CabalFile where -import Control.Monad -import Data.List +import Imports + import Data.Maybe import Data.Version (Version(..)) import qualified Data.Version as Version diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Hpack/Config.hs new/hpack-0.34.5/src/Hpack/Config.hs --- old/hpack-0.34.4/src/Hpack/Config.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Hpack/Config.hs 2001-09-09 03:46:40.000000000 +0200 @@ -80,21 +80,15 @@ #endif ) where -import Control.Applicative -import Control.Arrow ((>>>), (&&&)) -import Control.Monad +import Imports + import Data.Either -import Data.Bifunctor import Data.Bitraversable import Data.Map.Lazy (Map) import qualified Data.Map.Lazy as Map -import qualified Data.HashMap.Lazy as HashMap -import Data.List ((\\), sortBy, intercalate) +import qualified Data.Aeson.Config.KeyMap as KeyMap import Data.Maybe -import Data.Semigroup (Semigroup(..)) import Data.Ord -import Data.String -import Data.Text (Text) import qualified Data.Text as T import Data.Text.Encoding (decodeUtf8) import Data.Scientific (Scientific) @@ -404,12 +398,12 @@ } traverseConditionalSection :: Traversal_ ConditionalSection -traverseConditionalSection t@Traverse{..} = \ case +traverseConditionalSection t = \ case ThenElseConditional c -> ThenElseConditional <$> bitraverse (traverseThenElse t) return c FlatConditional c -> FlatConditional <$> bitraverse (traverseWithCommonOptions t) return c traverseThenElse :: Traversal_ ThenElse -traverseThenElse t@Traverse{..} c@ThenElse{..} = do +traverseThenElse t c@ThenElse{..} = do then_ <- traverseWithCommonOptions t thenElseThen else_ <- traverseWithCommonOptions t thenElseElse return c{thenElseThen = then_, thenElseElse = else_} @@ -434,10 +428,10 @@ | otherwise = FlatConditional <$> fromValue v where giveHint = case v of - Object o -> case (,,) <$> HashMap.lookup "then" o <*> HashMap.lookup "else" o <*> HashMap.lookup "condition" o of + Object o -> case (,,) <$> KeyMap.lookup "then" o <*> KeyMap.lookup "else" o <*> KeyMap.lookup "condition" o of Just (Object then_, Object else_, String condition) -> do - when (HashMap.null then_) $ "then" `emptyTryInstead` flatElse - when (HashMap.null else_) $ "else" `emptyTryInstead` flatThen + when (KeyMap.null then_) $ "then" `emptyTryInstead` flatElse + when (KeyMap.null else_) $ "else" `emptyTryInstead` flatThen where flatThen = flatConditional condition then_ flatElse = flatConditional (negate_ condition) else_ @@ -446,7 +440,7 @@ negate_ condition = "!(" <> condition <> ")" - flatConditional condition sect = object [("when" .= HashMap.insert "condition" (String condition) sect)] + flatConditional condition sect = object [("when" .= KeyMap.insert "condition" (String condition) sect)] emptyTryInstead :: String -> Value -> Parser () emptyTryInstead name sect = do @@ -463,8 +457,8 @@ (_, "condition") -> GT _ -> compare a b -hasKey :: Text -> Value -> Bool -hasKey key (Object o) = HashMap.member key o +hasKey :: Key -> Value -> Bool +hasKey key (Object o) = KeyMap.member key o hasKey _ _ = False newtype Condition = Condition { @@ -599,7 +593,7 @@ } deriving (Generic, FromValue) traversePackageConfig :: Traversal PackageConfig -traversePackageConfig t@Traverse{..} p@PackageConfig{..} = do +traversePackageConfig t p@PackageConfig{..} = do library <- traverse (traverseWithCommonOptions t) packageConfigLibrary internalLibraries <- traverseNamedConfigs t packageConfigInternalLibraries executable <- traverse (traverseWithCommonOptions t) packageConfigExecutable diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Hpack/Defaults.hs new/hpack-0.34.5/src/Hpack/Defaults.hs --- old/hpack-0.34.4/src/Hpack/Defaults.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Hpack/Defaults.hs 2001-09-09 03:46:40.000000000 +0200 @@ -12,10 +12,11 @@ #endif ) where +import Imports + import Network.HTTP.Types import Network.HTTP.Client import Network.HTTP.Client.TLS -import Data.List import qualified Data.ByteString.Lazy as LB import qualified Data.ByteString.Char8 as B import System.FilePath diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Hpack/License.hs new/hpack-0.34.5/src/Hpack/License.hs --- old/hpack-0.34.4/src/Hpack/License.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Hpack/License.hs 2001-09-09 03:46:40.000000000 +0200 @@ -4,7 +4,7 @@ {-# LANGUAGE LambdaCase #-} module Hpack.License where -import Control.Arrow ((&&&)) +import Imports import Distribution.Pretty (prettyShow) import Distribution.Version (mkVersion) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Hpack/Module.hs new/hpack-0.34.5/src/Hpack/Module.hs --- old/hpack-0.34.4/src/Hpack/Module.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Hpack/Module.hs 2001-09-09 03:46:40.000000000 +0200 @@ -10,11 +10,10 @@ #endif ) where -import Data.String +import Imports + import System.FilePath import qualified System.Directory as Directory -import Control.Monad -import Data.List hiding (nub, sort) import Data.Aeson.Config.FromValue import Hpack.Util diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Hpack/Options.hs new/hpack-0.34.5/src/Hpack/Options.hs --- old/hpack-0.34.4/src/Hpack/Options.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Hpack/Options.hs 2001-09-09 03:46:40.000000000 +0200 @@ -1,8 +1,8 @@ {-# LANGUAGE LambdaCase #-} module Hpack.Options where -import Control.Applicative -import Control.Monad +import Imports + import Data.Maybe import System.FilePath import System.Directory diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Hpack/Render/Dsl.hs new/hpack-0.34.5/src/Hpack/Render/Dsl.hs --- old/hpack-0.34.4/src/Hpack/Render/Dsl.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Hpack/Render/Dsl.hs 2001-09-09 03:46:40.000000000 +0200 @@ -24,8 +24,7 @@ #endif ) where -import Data.String -import Data.List +import Imports data Value = Literal String diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Hpack/Render/Hints.hs new/hpack-0.34.5/src/Hpack/Render/Hints.hs --- old/hpack-0.34.4/src/Hpack/Render/Hints.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Hpack/Render/Hints.hs 2001-09-09 03:46:40.000000000 +0200 @@ -16,10 +16,10 @@ #endif ) where +import Imports + import Data.Char import Data.Maybe -import Data.List hiding (nub) -import Control.Applicative import Hpack.Render.Dsl import Hpack.Util diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Hpack/Render.hs new/hpack-0.34.5/src/Hpack/Render.hs --- old/hpack-0.34.4/src/Hpack/Render.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Hpack/Render.hs 2001-09-09 03:46:40.000000000 +0200 @@ -34,10 +34,10 @@ #endif ) where -import Control.Monad +import Imports + import Data.Char import Data.Maybe -import Data.List import Data.Map.Lazy (Map) import qualified Data.Map.Lazy as Map @@ -165,7 +165,7 @@ renderExecutables = map renderExecutable . Map.toList renderExecutable :: (String, Section Executable) -> Element -renderExecutable (name, sect@(sectionData -> Executable{..})) = +renderExecutable (name, sect) = Stanza ("executable " ++ name) (renderExecutableSection [] sect) renderTests :: Map String (Section Executable) -> [Element] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Hpack/Syntax/BuildTools.hs new/hpack-0.34.5/src/Hpack/Syntax/BuildTools.hs --- old/hpack-0.34.4/src/Hpack/Syntax/BuildTools.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Hpack/Syntax/BuildTools.hs 2001-09-09 03:46:40.000000000 +0200 @@ -7,12 +7,10 @@ , SystemBuildTools(..) ) where +import Imports + import qualified Control.Monad.Fail as Fail -import Data.Text (Text) import qualified Data.Text as T -import Data.Semigroup (Semigroup(..)) -import Data.Bifunctor -import Control.Applicative import qualified Distribution.Package as D import Data.Map.Lazy (Map) import qualified Data.Map.Lazy as Map diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Hpack/Syntax/Defaults.hs new/hpack-0.34.5/src/Hpack/Syntax/Defaults.hs --- old/hpack-0.34.4/src/Hpack/Syntax/Defaults.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Hpack/Syntax/Defaults.hs 2001-09-09 03:46:40.000000000 +0200 @@ -13,8 +13,9 @@ #endif ) where -import Data.HashMap.Lazy (member) -import Data.List +import Imports + +import Data.Aeson.Config.KeyMap (member) import qualified Data.Text as T import System.FilePath.Posix (splitDirectories) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Hpack/Syntax/Dependencies.hs new/hpack-0.34.5/src/Hpack/Syntax/Dependencies.hs --- old/hpack-0.34.4/src/Hpack/Syntax/Dependencies.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Hpack/Syntax/Dependencies.hs 2001-09-09 03:46:40.000000000 +0200 @@ -8,11 +8,10 @@ , parseDependency ) where +import Imports + import qualified Control.Monad.Fail as Fail -import Data.Text (Text) -import Data.List import qualified Data.Text as T -import Data.Semigroup (Semigroup(..)) import qualified Distribution.Package as D import qualified Distribution.Types.LibraryName as D import Distribution.Pretty (prettyShow) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Hpack/Syntax/DependencyVersion.hs new/hpack-0.34.5/src/Hpack/Syntax/DependencyVersion.hs --- old/hpack-0.34.4/src/Hpack/Syntax/DependencyVersion.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Hpack/Syntax/DependencyVersion.hs 2001-09-09 03:46:40.000000000 +0200 @@ -25,13 +25,13 @@ , cabalParse ) where -import Control.Applicative +import Imports + import qualified Control.Monad.Fail as Fail import Data.Maybe import Data.Scientific -import Data.Text (Text) import qualified Data.Text as T -import qualified Data.HashMap.Strict as HashMap +import qualified Data.Aeson.Config.KeyMap as KeyMap import Text.PrettyPrint (renderStyle, Style(..), Mode(..)) import qualified Distribution.Version as D @@ -113,7 +113,7 @@ source :: Parser (Maybe SourceDependency) source - | any (`HashMap.member` o) ["path", "git", "github", "ref", "subdir"] = Just <$> (local <|> git) + | any (`KeyMap.member` o) ["path", "git", "github", "ref", "subdir"] = Just <$> (local <|> git) | otherwise = return Nothing in DependencyVersion <$> source <*> version diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Hpack/Syntax/Git.hs new/hpack-0.34.5/src/Hpack/Syntax/Git.hs --- old/hpack-0.34.4/src/Hpack/Syntax/Git.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Hpack/Syntax/Git.hs 2001-09-09 03:46:40.000000000 +0200 @@ -2,8 +2,9 @@ isValidRef ) where +import Imports + import Data.Char (chr) -import Data.List import System.FilePath.Posix -- https://git-scm.com/docs/git-check-ref-format diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Hpack/Syntax/ParseDependencies.hs new/hpack-0.34.5/src/Hpack/Syntax/ParseDependencies.hs --- old/hpack-0.34.4/src/Hpack/Syntax/ParseDependencies.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Hpack/Syntax/ParseDependencies.hs 2001-09-09 03:46:40.000000000 +0200 @@ -2,9 +2,10 @@ {-# LANGUAGE RecordWildCards #-} module Hpack.Syntax.ParseDependencies where -import Data.Text (Text) -import Data.Bifunctor +import Imports + import Data.Aeson.Config.FromValue +import qualified Data.Aeson.Config.Key as Key data Parse k v = Parse { parseString :: Text -> Parser (k, v) @@ -17,7 +18,7 @@ parseDependencies parse@Parse{..} v = case v of String s -> return <$> parseString s Array xs -> parseArray (buildToolFromValue parse) xs - Object o -> map (first parseName) <$> traverseObject parseDictItem o + Object o -> map (first (parseName . Key.toText)) <$> traverseObject parseDictItem o _ -> typeMismatch "Array, Object, or String" v buildToolFromValue :: Parse k v -> Value -> Parser (k, v) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Hpack/Util.hs new/hpack-0.34.5/src/Hpack/Util.hs --- old/hpack-0.34.4/src/Hpack/Util.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Hpack/Util.hs 2001-09-09 03:46:40.000000000 +0200 @@ -20,11 +20,10 @@ , nubOn ) where +import Imports + import Control.Exception -import Control.Monad import Data.Char -import Data.Bifunctor -import Data.List hiding (nub, sort) import Data.Ord import qualified Data.Set as Set import System.IO.Error diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Hpack/Yaml.hs new/hpack-0.34.5/src/Hpack/Yaml.hs --- old/hpack-0.34.4/src/Hpack/Yaml.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Hpack/Yaml.hs 2001-09-09 03:46:40.000000000 +0200 @@ -17,7 +17,8 @@ , module Data.Aeson.Config.FromValue ) where -import Data.Bifunctor +import Imports + import Data.Yaml hiding (decodeFile, decodeFileWithWarnings) import Data.Yaml.Include import Data.Yaml.Internal (Warning(..)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Hpack.hs new/hpack-0.34.5/src/Hpack.hs --- old/hpack-0.34.4/src/Hpack.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Hpack.hs 2001-09-09 03:46:40.000000000 +0200 @@ -42,7 +42,8 @@ #endif ) where -import Control.Monad +import Imports + import Data.Version (Version) import qualified Data.Version as Version import System.FilePath diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Imports.hs new/hpack-0.34.5/src/Imports.hs --- old/hpack-0.34.4/src/Imports.hs 1970-01-01 01:00:00.000000000 +0100 +++ new/hpack-0.34.5/src/Imports.hs 2001-09-09 03:46:40.000000000 +0200 @@ -0,0 +1,11 @@ +module Imports (module Imports) where + +import Control.Applicative as Imports +import Control.Arrow as Imports ((>>>), (&&&)) +import Control.Monad as Imports +import Data.Bifunctor as Imports +import Data.List as Imports hiding (sort, nub) +import Data.Monoid as Imports (Monoid(..)) +import Data.Semigroup as Imports (Semigroup(..)) +import Data.String as Imports +import Data.Text as Imports (Text) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/src/Path.hs new/hpack-0.34.5/src/Path.hs --- old/hpack-0.34.4/src/Path.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/src/Path.hs 2001-09-09 03:46:40.000000000 +0200 @@ -1,7 +1,8 @@ module Path where +import Imports + import System.FilePath -import Data.String fromFilePath :: FilePath -> Path fromFilePath = Path . map PathComponent . splitDirectories diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/test/Helper.hs new/hpack-0.34.5/test/Helper.hs --- old/hpack-0.34.4/test/Helper.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/test/Helper.hs 2001-09-09 03:46:40.000000000 +0200 @@ -2,7 +2,8 @@ {-# LANGUAGE ConstraintKinds #-} {-# OPTIONS_GHC -fno-warn-orphans #-} module Helper ( - module Test.Hspec + module Imports +, module Test.Hspec , module Test.Mockery.Directory , module Control.Monad , module Control.Applicative @@ -12,9 +13,10 @@ , yaml ) where +import Imports + import Test.Hspec import Test.Mockery.Directory -import Data.String import Control.Monad import Control.Applicative import System.Directory (getCurrentDirectory, setCurrentDirectory, canonicalizePath) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/test/Hpack/ConfigSpec.hs new/hpack-0.34.5/test/Hpack/ConfigSpec.hs --- old/hpack-0.34.4/test/Hpack/ConfigSpec.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/test/Hpack/ConfigSpec.hs 2001-09-09 03:46:40.000000000 +0200 @@ -19,7 +19,6 @@ import Data.Aeson.Config.FromValueSpec hiding (spec) import Data.String.Interpolate.IsString -import Control.Arrow import qualified GHC.Exts as Exts import System.Directory (createDirectory) import Data.Either diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.34.4/test/Hpack/RenderSpec.hs new/hpack-0.34.5/test/Hpack/RenderSpec.hs --- old/hpack-0.34.4/test/Hpack/RenderSpec.hs 2001-09-09 03:46:40.000000000 +0200 +++ new/hpack-0.34.5/test/Hpack/RenderSpec.hs 2001-09-09 03:46:40.000000000 +0200 @@ -3,7 +3,6 @@ module Hpack.RenderSpec (spec) where import Helper -import Data.List import Hpack.Syntax.DependencyVersion import Hpack.ConfigSpec hiding (spec)
