@@ -111,6 +111,7 @@ import qualified Control.Exception as E
111111import Control.Monad (MonadPlus (..), msum, unless)
112112import qualified Control.Monad.State.Strict as S
113113import qualified Data.ByteString.Lazy as BL
114+import qualified Data.Bifunctor as Bifunctor
114115import Data.Char (isAlpha, isDigit, isLetter, isLower, isSpace, isUpper,
115116 toLower)
116117import Data.Data (Data, Typeable)
@@ -637,8 +638,7 @@ inDirectory path action = E.bracket
637638--
638639
639640mapLeft :: (a -> b) -> Either a c -> Either b c
640−mapLeft f (Left x) = Left (f x)
641−mapLeft _ (Right x) = Right x
641+mapLeft = Bifunctor.first
642642
643643-- | Remove intermediate "." and ".." directories from a path.
644644--