diff --git a/hspec-meta.cabal b/hspec-meta.cabal
--- a/hspec-meta.cabal
+++ b/hspec-meta.cabal
@@ -1,5 +1,5 @@
 name:             hspec-meta
-version:          1.7.0
+version:          1.7.1
 license:          MIT
 license-file:     LICENSE
 copyright:        (c) 2011-2013 Simon Hengel,
@@ -56,7 +56,7 @@
     , HUnit         >= 1.2.5
     , QuickCheck    >= 2.5.1
     , quickcheck-io
-    , hspec-expectations == 0.3.2.*
+    , hspec-expectations == 0.3.3.*
   exposed-modules:
       Test.Hspec.Meta
   other-modules:
diff --git a/src/Test/Hspec/Formatters.hs b/src/Test/Hspec/Formatters.hs
--- a/src/Test/Hspec/Formatters.hs
+++ b/src/Test/Hspec/Formatters.hs
@@ -138,8 +138,8 @@
 , exampleGroupDone = do
     newParagraph
 
-, exampleProgress = \h _ (current, total) -> do
-    hPutStr h $ "(" ++ show current ++ "/" ++ show total ++ ")\r"
+, exampleProgress = \h _ p -> do
+    hPutStr h (formatProgress p)
     hFlush h
 
 , exampleSucceeded = \(nesting, requirement) -> withSuccessColor $ do
@@ -157,6 +157,9 @@
 , footerFormatter = defaultFooter
 } where
     indentationFor nesting = replicate (length nesting * 2) ' '
+    formatProgress (current, total)
+      | total == 0 = show current ++ "\r"
+      | otherwise  = show current ++ "/" ++ show total ++ "\r"
 
 
 progress :: Formatter
@@ -191,15 +194,12 @@
     formatFailure :: (Int, FailureRecord) -> FormatM ()
     formatFailure (n, FailureRecord path reason) = do
       write (show n ++ ") ")
+      writeLine (formatRequirement path)
       withFailColor $ do
-        write (formatRequirement path ++ " FAILED")
-        write $ case reason of
-          Right _ -> "\n"
-          Left _  -> " (uncaught exception)\n"
         unless (null err) $ do
           writeLine err
       where
-        err = either formatException id reason
+        err = either (("uncaught exception: " ++) . formatException) id reason
 
 -- | Convert an exception to a string.
 --
