fail is:package

Forward-compatible MonadFail class This package contains the Control.Monad.Fail module providing the MonadFail class that became available in base-4.9.0.0 for older base package versions. This package turns into an empty package when used with GHC versions which already provide the Control.Monad.Fail module to make way for GHC's own Control.Monad.Fail module.
Not on Stackage, so not searched. A simple type class for success/failure computations. (deprecated)
A 'Failable' error monad class to unify failure across monads that can fail This library contains a Failable error monad class to unify failure across monads and transformers most commonly used to implement pipelines that can fail and does so in a simple nonsense way by providing the means of signaling a computation "failure" while striving to keep the failure behaviour consistent with the actual definition of the monad/transformer. Please refer to the README file for a more elaborate description and some examples.
Not on Stackage, so not searched. Failure Detectors implimented in Haskell.
Not on Stackage, so not searched. A list-like type for lazy streams, which might terminate with an error.
A 'FailT' monad transformer that plays well with 'MonadFail' Fail gracefully when stuck in a MonadFail
>>> runFailT (fail "Failure!?" >> pure "Success!!")
Left "Failure!?"

>>> runFailT (fail "Failure!?" <|> pure "Success!!")
Right "Success!!"

>>> runFailT (pure ["Success!!"] <> fail "Failure!?" <> pure ["At", "Last!"])
Right ["Success!!","At","Last!"]
Not on Stackage, so not searched. Failure Monad Transformer
Mark tasty tests as failure expected With the function Test.Tasty.ExpectedFailure.expectFail in the provided module Test.Tasty.ExpectedFailure, you can mark that you expect test cases to fail, and not to pass. This can for example be used for test-driven development: Create the tests, mark them with Test.Tasty.ExpectedFailure.expectFail, and you can still push to the main branch, without your continuous integration branch failing. Once someone implements the feature or fixes the bug (maybe unknowingly), the test suite will tell him so, due to the now unexpectedly passing test, and he can remove the Test.Tasty.ExpectedFailure.expectFail marker. The module also provides Test.Tasty.ExpectedFailure.ignoreTest to avoid running a test. Both funtions are implemented via the more general Test.Tasty.ExpectedFailure.wrapTest, which is also provided.
Adds the ability to fail a tasty test suite on first test failure tasty-fail-fast wraps any ingredient to fail as soon as the first test fails. For example:
defaultMainWithIngredients (map failFast defaultIngredients) tests
Your test suite will now get a --fail-fast flag.
Not on Stackage, so not searched. Applicative functor and monad which collects all your fails
Not on Stackage, so not searched. Library for safe functions (deprecated)
Syntactic sugar improving 'assert' and 'error' This library contains syntactic sugar that makes it easier to write simple contracts with assert and error and report the values that violate contracts.
Not on Stackage, so not searched. A class for monads which can fail with an error. (deprecated)
Not on Stackage, so not searched. A class for monads which can fail with an error for mtl 1 (deprecated)
Not on Stackage, so not searched. control-monad-exception Instances for safe-failure
Not on Stackage, so not searched. Monad transformer providing MonadFail.