packages feed

hw-polysemy 0.2.1.0 → 0.2.2.0

raw patch · 4 files changed

+20/−16 lines, 4 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

- HaskellWorks.Polysemy.Hedgehog: eval :: forall r_amDc a_amqw. (Member Hedgehog r_amDc, HasCallStack) => a_amqw -> Sem r_amDc a_amqw
+ HaskellWorks.Polysemy.Hedgehog: eval :: forall r_amDd a_amqx. (Member Hedgehog r_amDd, HasCallStack) => a_amqx -> Sem r_amDd a_amqx
- HaskellWorks.Polysemy.Hedgehog: evalIO :: forall r_amDg a_amqA. (Member Hedgehog r_amDg, HasCallStack) => IO a_amqA -> Sem r_amDg a_amqA
+ HaskellWorks.Polysemy.Hedgehog: evalIO :: forall r_amDh a_amqB. (Member Hedgehog r_amDh, HasCallStack) => IO a_amqB -> Sem r_amDh a_amqB
- HaskellWorks.Polysemy.Hedgehog: evalM :: forall r_amDe a_amqz. (Member Hedgehog r_amDe, HasCallStack) => Sem r_amDe a_amqz -> Sem r_amDe a_amqz
+ HaskellWorks.Polysemy.Hedgehog: evalM :: forall r_amDf a_amqA. (Member Hedgehog r_amDf, HasCallStack) => Sem r_amDf a_amqA -> Sem r_amDf a_amqA
- HaskellWorks.Polysemy.Hedgehog.Assert: evalIO :: forall r_amDg a_amqA. (Member Hedgehog r_amDg, HasCallStack) => IO a_amqA -> Sem r_amDg a_amqA
+ HaskellWorks.Polysemy.Hedgehog.Assert: evalIO :: forall r_amDh a_amqB. (Member Hedgehog r_amDh, HasCallStack) => IO a_amqB -> Sem r_amDh a_amqB
- HaskellWorks.Polysemy.Hedgehog.Effect.Hedgehog: assertEquals :: forall r_amD9 a_X0. (Member Hedgehog r_amD9, HasCallStack, Eq a_X0, Show a_X0) => a_X0 -> a_X0 -> Sem r_amD9 ()
+ HaskellWorks.Polysemy.Hedgehog.Effect.Hedgehog: assertEquals :: forall r_amDa a_X0. (Member Hedgehog r_amDa, HasCallStack, Eq a_X0, Show a_X0) => a_X0 -> a_X0 -> Sem r_amDa ()
- HaskellWorks.Polysemy.Hedgehog.Effect.Hedgehog: eval :: forall r_amDc a_amqw. (Member Hedgehog r_amDc, HasCallStack) => a_amqw -> Sem r_amDc a_amqw
+ HaskellWorks.Polysemy.Hedgehog.Effect.Hedgehog: eval :: forall r_amDd a_amqx. (Member Hedgehog r_amDd, HasCallStack) => a_amqx -> Sem r_amDd a_amqx
- HaskellWorks.Polysemy.Hedgehog.Effect.Hedgehog: evalIO :: forall r_amDg a_amqA. (Member Hedgehog r_amDg, HasCallStack) => IO a_amqA -> Sem r_amDg a_amqA
+ HaskellWorks.Polysemy.Hedgehog.Effect.Hedgehog: evalIO :: forall r_amDh a_amqB. (Member Hedgehog r_amDh, HasCallStack) => IO a_amqB -> Sem r_amDh a_amqB
- HaskellWorks.Polysemy.Hedgehog.Effect.Hedgehog: evalM :: forall r_amDe a_amqz. (Member Hedgehog r_amDe, HasCallStack) => Sem r_amDe a_amqz -> Sem r_amDe a_amqz
+ HaskellWorks.Polysemy.Hedgehog.Effect.Hedgehog: evalM :: forall r_amDf a_amqA. (Member Hedgehog r_amDf, HasCallStack) => Sem r_amDf a_amqA -> Sem r_amDf a_amqA
- HaskellWorks.Polysemy.Hedgehog.Effect.Hedgehog: failWith :: forall r_amDk a_amqE. (Member Hedgehog r_amDk, HasCallStack) => Maybe Diff -> String -> Sem r_amDk a_amqE
+ HaskellWorks.Polysemy.Hedgehog.Effect.Hedgehog: failWith :: forall r_amDl a_amqF. (Member Hedgehog r_amDl, HasCallStack) => Maybe Diff -> String -> Sem r_amDl a_amqF
- HaskellWorks.Polysemy.Hedgehog.Effect.Hedgehog: failWithCustom :: forall r_amDn a_amqG. Member Hedgehog r_amDn => CallStack -> Maybe Diff -> String -> Sem r_amDn a_amqG
+ HaskellWorks.Polysemy.Hedgehog.Effect.Hedgehog: failWithCustom :: forall r_amDo a_amqH. Member Hedgehog r_amDo => CallStack -> Maybe Diff -> String -> Sem r_amDo a_amqH
- HaskellWorks.Polysemy.Hedgehog.Effect.Hedgehog: writeLog :: forall r_amDi. Member Hedgehog r_amDi => Log -> Sem r_amDi ()
+ HaskellWorks.Polysemy.Hedgehog.Effect.Hedgehog: writeLog :: forall r_amDj. Member Hedgehog r_amDj => Log -> Sem r_amDj ()
- HaskellWorks.Polysemy.Hedgehog.Eval: eval :: forall r_amDc a_amqw. (Member Hedgehog r_amDc, HasCallStack) => a_amqw -> Sem r_amDc a_amqw
+ HaskellWorks.Polysemy.Hedgehog.Eval: eval :: forall r_amDd a_amqx. (Member Hedgehog r_amDd, HasCallStack) => a_amqx -> Sem r_amDd a_amqx
- HaskellWorks.Polysemy.Hedgehog.Eval: evalIO :: forall r_amDg a_amqA. (Member Hedgehog r_amDg, HasCallStack) => IO a_amqA -> Sem r_amDg a_amqA
+ HaskellWorks.Polysemy.Hedgehog.Eval: evalIO :: forall r_amDh a_amqB. (Member Hedgehog r_amDh, HasCallStack) => IO a_amqB -> Sem r_amDh a_amqB
- HaskellWorks.Polysemy.Hedgehog.Eval: evalM :: forall r_amDe a_amqz. (Member Hedgehog r_amDe, HasCallStack) => Sem r_amDe a_amqz -> Sem r_amDe a_amqz
+ HaskellWorks.Polysemy.Hedgehog.Eval: evalM :: forall r_amDf a_amqA. (Member Hedgehog r_amDf, HasCallStack) => Sem r_amDf a_amqA -> Sem r_amDf a_amqA

Files

core/HaskellWorks/Polysemy/Error.hs view
@@ -3,9 +3,12 @@   , onNothing   , onLeftM   , onNothingM+  , trap   ) where  import           HaskellWorks.Polysemy.Prelude+import           Polysemy+import           Polysemy.Error  onLeft :: Monad m => (e -> m a) -> Either e a -> m a onLeft f = either f pure@@ -18,3 +21,10 @@  onNothingM :: Monad m => m b -> m (Maybe b) -> m b onNothingM h f = onNothing h =<< f++trap :: forall e r a. ()+  => (e -> Sem r a)+  -> Sem (Error e ': r) a+  -> Sem r a+trap h f =+  runError f >>= either h pure
hedgehog/HaskellWorks/Polysemy/Hedgehog/Assert.hs view
@@ -33,6 +33,7 @@ import           Data.Generics.Product.Any import qualified Data.List                                      as L import qualified GHC.Stack                                      as GHC+import           HaskellWorks.Polysemy.Error import           HaskellWorks.Polysemy.File import           HaskellWorks.Polysemy.Hedgehog.Effect.Hedgehog import           HaskellWorks.Polysemy.Prelude@@ -144,15 +145,6 @@   -> Sem r Pid assertPidOk hProcess = withFrozenCallStack $   nothingFailM $ getPid hProcess--trap :: forall e r a. ()-  => (e -> Sem r a)-  -> Sem (Error e ': r) a-  -> Sem r a-trap h f =-  runError f >>= \case-    Left e  -> h e-    Right a -> pure a  -- | Assert the 'filePath' can be parsed as JSON. assertIsJsonFile_ :: ()
hedgehog/HaskellWorks/Polysemy/Hedgehog/Golden.hs view
@@ -23,7 +23,6 @@  import qualified Control.Concurrent.QSem                       as IO import qualified Data.List                                     as List-import qualified GHC.Stack                                     as GHC import qualified HaskellWorks.Polysemy.Control.Concurrent.QSem as PIO import           HaskellWorks.Polysemy.Prelude import           HaskellWorks.Polysemy.System.Directory        as PIO@@ -57,6 +56,7 @@   return $ value == Just "1"  writeGoldenFile :: ()+  => HasCallStack   => Member Hedgehog r   => Member (Embed IO) r   => Member (Error IOException) r@@ -64,19 +64,20 @@   => FilePath   -> String   -> Sem r ()-writeGoldenFile goldenFile actualContent = do+writeGoldenFile goldenFile actualContent = withFrozenCallStack $ do   jot_ $ "Creating golden file " <> goldenFile   PIO.createDirectoryIfMissing True (takeDirectory goldenFile)   PIO.writeFile goldenFile actualContent  reportGoldenFileMissing :: ()+  => HasCallStack   => Member Hedgehog r   => Member (Embed IO) r   => Member (Error IOException) r   => Member Log r   => FilePath   -> Sem r ()-reportGoldenFileMissing goldenFile = do+reportGoldenFileMissing goldenFile = withFrozenCallStack $ do   jot_ $ unlines     [ "Golden file " <> goldenFile <> " does not exist."     , "To create it, run with CREATE_GOLDEN_FILES=1."@@ -85,6 +86,7 @@   failure  checkAgainstGoldenFile :: ()+  => HasCallStack   => Member Hedgehog r   => Member (Embed IO) r   => Member (Error IOException) r@@ -92,7 +94,7 @@   => FilePath   -> [String]   -> Sem r ()-checkAgainstGoldenFile goldenFile actualLines = do+checkAgainstGoldenFile goldenFile actualLines = withFrozenCallStack $ do   referenceLines <- List.lines <$> PIO.readFile goldenFile   let difference = getGroupedDiff actualLines referenceLines   case difference of@@ -130,7 +132,7 @@   => String   -- ^ Actual content   -> FilePath -- ^ Reference file   -> Sem r ()-diffVsGoldenFile actualContent goldenFile = GHC.withFrozenCallStack $ do+diffVsGoldenFile actualContent goldenFile = withFrozenCallStack $ do   forM_ mGoldenFileLogFile $ \logFile ->     PIO.bracketQSem sem $ PIO.appendFile logFile $ goldenFile <> "\n" @@ -166,6 +168,6 @@   => FilePath -- ^ Actual file   -> FilePath -- ^ Reference file   -> Sem r ()-diffFileVsGoldenFile actualFile referenceFile = GHC.withFrozenCallStack $ do+diffFileVsGoldenFile actualFile referenceFile = withFrozenCallStack $ do   contents <- PIO.readFile actualFile   diffVsGoldenFile contents referenceFile
hw-polysemy.cabal view
@@ -1,6 +1,6 @@ cabal-version:          3.4 name:                   hw-polysemy-version:                0.2.1.0+version:                0.2.2.0 synopsis:               Opinionated polysemy library description:            Opinionated polysemy library. license:                Apache-2.0