diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,6 @@
+## Changes in 0.29.5
+  - Fix a regression related to indentation sniffing (close #310)
+
 ## Changes in 0.29.4
   - Desugar ^>= when dependency is a string (see #309)
   - Add support for Apache, MPL and ISC when inferring `license` (see #305)
diff --git a/hpack.cabal b/hpack.cabal
--- a/hpack.cabal
+++ b/hpack.cabal
@@ -1,13 +1,13 @@
 cabal-version: >= 1.10
 
--- This file has been generated from package.yaml by hpack version 0.29.3.
+-- This file has been generated from package.yaml by hpack version 0.29.4.
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: b74ce72f59395f87ee42933fe1146d9349b94fbb3be741ef85998ea2d37af660
+-- hash: c9c40490b86bd987b33ab63f10fd311c44b89e37d5a75d5af8cd25db72992e99
 
 name:           hpack
-version:        0.29.4
+version:        0.29.5
 synopsis:       An alternative format for Haskell packages
 description:    See README at <https://github.com/sol/hpack#readme>
 category:       Development
diff --git a/src/Hpack/Render/Hints.hs b/src/Hpack/Render/Hints.hs
--- a/src/Hpack/Render/Hints.hs
+++ b/src/Hpack/Render/Hints.hs
@@ -38,7 +38,7 @@
 }
 
 sanitize :: [String] -> [String]
-sanitize = filter (not . null) . map stripEnd
+sanitize = filter (not . isPrefixOf "cabal-version:") . filter (not . null) . map stripEnd
 
 stripEnd :: String -> String
 stripEnd = reverse . dropWhile isSpace . reverse
diff --git a/test/Hpack/Render/HintsSpec.hs b/test/Hpack/Render/HintsSpec.hs
--- a/test/Hpack/Render/HintsSpec.hs
+++ b/test/Hpack/Render/HintsSpec.hs
@@ -15,7 +15,6 @@
             , "license:"
             , "license-file: "
             , "build-type:     Simple"
-            , "cabal-version:  >= 1.10"
             ]
       extractFieldOrder input `shouldBe` [
               "name"
@@ -23,7 +22,6 @@
             , "license"
             , "license-file"
             , "build-type"
-            , "cabal-version"
             ]
 
   describe "extractSectionsFieldOrder" $ do
@@ -60,6 +58,9 @@
     it "removes trailing whitespace" $ do
       sanitize ["foo  ", "bar  "] `shouldBe` ["foo", "bar"]
 
+    it "removes cabal-version" $ do
+      sanitize ["cabal-version: 2.2", "bar  "] `shouldBe` ["bar"]
+
   describe "unindent" $ do
     it "unindents" $ do
       let input = [
@@ -81,7 +82,6 @@
             , "license:        MIT"
             , "license-file:   LICENSE"
             , "build-type:     Simple"
-            , "cabal-version:  >= 1.10"
             ]
       sniffAlignment input `shouldBe` Just 16
 
