diff --git a/hspec-expectations.cabal b/hspec-expectations.cabal
--- a/hspec-expectations.cabal
+++ b/hspec-expectations.cabal
@@ -3,7 +3,7 @@
 -- see: https://github.com/sol/hpack
 
 name:             hspec-expectations
-version:          0.8.0
+version:          0.8.1
 synopsis:         Catchy combinators for HUnit
 description:      Catchy combinators for HUnit: <https://github.com/hspec/hspec-expectations#readme>
 bug-reports:      https://github.com/hspec/hspec-expectations/issues
diff --git a/src/Test/Hspec/Expectations.hs b/src/Test/Hspec/Expectations.hs
--- a/src/Test/Hspec/Expectations.hs
+++ b/src/Test/Hspec/Expectations.hs
@@ -8,7 +8,6 @@
 
 -- * Setting expectations
   Expectation
-, HasCallStack
 , expectationFailure
 , shouldBe
 , shouldSatisfy
@@ -47,9 +46,13 @@
 -- Each combinator corresponds to a constructor; it takes the same arguments,
 -- and has the same name (but starting with a lower-case letter).
 , errorCall
+
+-- * Re-exports
+, HasCallStack
 ) where
 
 import qualified Test.HUnit
+import           Test.HUnit ((@?=))
 import           Control.Exception
 import           Data.Typeable
 import           Data.List
@@ -85,7 +88,7 @@
 -- @actual \`shouldBe\` expected@ sets the expectation that @actual@ is equal
 -- to @expected@.
 shouldBe :: (HasCallStack, Show a, Eq a) => a -> a -> Expectation
-actual `shouldBe` expected = expectTrue ("expected: " ++ show expected ++ "\n but got: " ++ show actual) (actual == expected)
+actual `shouldBe` expected = actual @?= expected
 
 -- |
 -- @v \`shouldSatisfy\` p@ sets the expectation that @p v@ is @True@.
